Menu

gizmod doesn't output anything

Help
orangeek
2008-01-04
2013-04-23
1 2 > >> (Page 1 of 2)
  • orangeek

    orangeek - 2008-01-04

    Hi all.
    It's quite long time that I don't use gizmod and now that my mythbox is ok again, I started again with gizmod. :D
    I downloaded the last version and compiled from source in my knoppmyth R5F1 system.
    I disabled lirc and loaded the ati_remote kernel driver. Without gizmod the basic functions work right (up down left right) but:
    If I start gizmod it recognizes my ati remote
    sh-3.1$ gizmod

    GizmoDaemon v3.4 -=- (c) 2007, Tim Burrell <tim.burrell@gmail.com>

    Registering Devices:

        Standard - Directory [input]
        Keyboard - AT Translated Set 2 keyboard [event0] vId: 0x1 pId: 0x1
        Standard - IR-receiver inside an USB DVB receiver [event1] vId: 0x14aa pId: 0x221
         ATI X10 - X10 Wireless Technology Inc USB Receiver [event2] vId: 0xbc7 pId: 0x4

    but it doesnt output any events even if button presses are intercepted.the keyboard works well. I can notice that gizmod intercept the button presses because launching it with -g flag I got
    onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
    onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
    onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
    onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1

    As far as I remember it seems like that no event is associated to the keys I'm pressing, but it seems kinda odd since the associations are in the .py files and the application window is correctly identified.
    onEvent: WindowFocus [FocusIn] -- <WindowTitle:mythfrontend> <FormalName:mythfrontend> <Class:Mythfrontend>

    Am I missing something to configure? :)
    I even tried to restore my old (sweated) .py files but nothing changes.
    Can you give my some hints?

     
    • Tim Burrell

      Tim Burrell - 2008-01-28

      Hi Orangeek!

      Sorry it took me a long time to respond!  Much busyness! :) 

      At any rate I'm not exactly sure what's going on here... can you post the complete output of "gizmod -g" (including all the startup gibberish)? 

      Thanks,

      Tim.

       
    • orangeek

      orangeek - 2008-01-28

      Hi Tim!
      here is the complete output of gizmod -g!

      GizmoDaemon v3.4 -=- (c) 2007, Tim Burrell <tim.burrell@gmail.com>

      Debug Mode Enabled

      Registering Devices:

          Standard - Directory [input]
          Keyboard - AT Translated Set 2 keyboard [event0] vId: 0x1 pId: 0x1
          Standard - IR-receiver inside an USB DVB receiver [event1] vId: 0x14aa pId: 0x221
           ATI X10 - X10 Wireless Technology Inc USB Receiver [event2] vId: 0xbc7 pId: 0x4
      Device [X10 Wireless Technology Inc USB Receiver] Exclusive Access Granted
      Could not connect to LIRC device node [/dev/lircd] -- disabling LIRC support
          - Check permissions
          - Ensure lircd is running

      Loading User Scripts:

               CatchAllDebug - CatchAll Event Mapping for Testing
         PowermateVisualizer - Powermate Visualization Handler [0 Powermates]
              KeyboardAmarok - Amarok Fancy Keyboard Event Mapping
             KeyboardDefault - Default Fancy Keyboard Event Mapping
      PowermateButtonTimeout - ButtonTimeout Powermate Event Mapping
             PowermateCompiz - Compiz Powermate Event Mapping
            PowermateFirefox - Firefox Powermate Event Mapping
            PowermateMPlayer - MPlayer Powermate Event Mapping
             PowermateAmarok - Amarok Powermate Event Mapping
            PowermateDefault - Default Powermate Event Mapping
             ATIX10Intercept - Intercept ATIX10 Event Mapping
                ATIX10MythTV - MythTV ATIX10 Event Mapping
               ATIX10MPlayer - MPlayer ATIX10 Event Mapping
                ATIX10Amarok - Amarok ATIX10 Event Mapping
               ATIX10Default - Default ATIX10 Event Mapping
      LIRCHauppaugeIntercept - Intercept LIRC Event Mapping for the Hauppauge remote
        LIRCMceUSB2Intercept - Intercept LIRC Event Mapping for the MceUSB2 remote
         LIRCHauppaugeMythTV - MythTV LIRC Event Mapping for the Hauppauge remote
           LIRCMceUSB2MythTV - MythTV LIRC Event Mapping for the MceUSB2 remote
        LIRCHauppaugeMPlayer - MPlayer LIRC Event Mapping for the Hauppauge remote
          LIRCMceUSB2MPlayer - MPlayer LIRC Event Mapping for the MceUSB2 remote
         LIRCHauppaugeAmarok - Amarok LIRC Hauppauge Event Mapping
           LIRCMceUSB2Amarok - Amarok LIRC Event Mapping for the MceUSB2 remote
        LIRCHauppaugeDefault - Default LIRC Event Mapping for the Hauppauge remote
          LIRCMceUSB2Default - Default LIRC Event Mapping for the MceUSB2 remote

                  MomoRacing - Logitech Momo Racing Event Mapping
               RemoteControl - Remote Control Event Mapping

      Attached to Sound Card [hw:0] -- SiS SI7012
      onEvent: SoundCard -- SoundCardAttach [SiS SI7012]
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Master Mono>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master Mono> Unmute
      onEvent: WindowFocus [FocusIn] -- <WindowTitle:mythfrontend> <FormalName:mythfrontend> <Class:Mythfrontend>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master Mono> Vol: 0.0
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master Mono> Vol: 80.6451644897
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Master Surround>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master Surround>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master Surround> Vol: 0.0
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Master>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master> Unmute
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master> Vol: 0.0
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Master> Vol: 80.6451644897
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Headphone Jack Sense>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Headphone Jack Sense>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <PCM>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <PCM> Unmute
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <PCM> Vol: 0.0
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <PCM> Vol: 74.1935501099
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Surround Jack Mode>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Surround Jack Mode>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Surround>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Surround>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Surround> Vol: 0.0
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Center>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Center>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Center> Vol: 0.0
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Center> Vol: 100.0
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <LFE>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <LFE>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <LFE> Vol: 0.0
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Line Jack Sense>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Line Jack Sense>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Line>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Line>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Line> Vol: 0.0
      onEvent: SoundCard -- MixerElementChange [SiSonEvent: SoundCard -- MixerElementChange [SiS SI7012] <CD> Vol: 0.0
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <CD> Vol: 80.6451644897
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Mic Boost (+20dB)>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mic Boost (+20dB)>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Mic Select>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mic Select>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Mic>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mic>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mic> Vol: 0.0
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Phone>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Phone>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Phone> Vol: 0.0
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Aux>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Aux>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Aux> Vol: 0.0
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Aux> Vol: 16.129032135
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mic>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mic>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <CD>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <CD>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Video>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Video>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Aux>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Aux>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Line>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Line>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Mix>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mix>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Mix Mono>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Mix Mono>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Phone>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Phone>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Capture>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Capture>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Capture>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <Capture>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <IEC958 Playback AC97-SPSA>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <IEC958 Playback AC97-SPSA> Vol: 100.0
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <IEC958 Playback Source>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <IEC958 Playback Source>
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <IEC958>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <IEC958> Unmute
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <Channel Mode>
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_0> c: 0xb v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_8> c: 0x9 v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_5> c: 0x6 v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_5> c: 0x6 v: 0x1
      onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_2> c: 0x3 v: 0x1
      Keyboard Interrupt Received...
      GizmoDaemon Shut Down.  

      any glue?
      onEvent: SoundCard -- MixerElementAttach [SiS SI7012] <CD>
      onEvent: SoundCard -- MixerElementChange [SiS SI7012] <CD>

       
      • orangeek

        orangeek - 2008-01-28

        oops... some errors with the 'paste'. :)

        thanks
        orangeek

         
      • Tim Burrell

        Tim Burrell - 2008-01-29

        Okay so, everything looks as it should.  Just to clarify: gizmod is picking up events from the remote properly, but when mythfrontend is active the remote doesn't do anything?

        Can you capture the output of running gizmod -g, launching mythfrontend, and clicking a few buttons on the remote?

        Thanks,

        Tim.

         
        • orangeek

          orangeek - 2008-01-30

          hi tim.
          you got it right. if I start gizmod, my remote didnt work. with gizmod off, i can use the basic functions provided by the ati_remote.
          I'm using knoppmyth with 2.6.18; i should load the ati_remote module with insmod /path/to/module.ko because somehow modprobe doesnt work.
          For my tries with gizmod, I stop the lirc daemon, remove the lirc_modules and insmoding the ati_remote.ko module.
          I tried to kill mythfrontend and mythwelcome and then started gizmod with -A -g (to get rid of alsa strings). Here is the output.

          Registering Devices:

              Standard - Directory [input]
              Keyboard - AT Translated Set 2 keyboard [event0] vId: 0x1 pId: 0x1
              Standard - IR-receiver inside an USB DVB receiver [event1] vId: 0x14aa pId: 0x221
               ATI X10 - X10 Wireless Technology Inc USB Receiver [event2] vId: 0xbc7 pId: 0x4
          Device [X10 Wireless Technology Inc USB Receiver] Exclusive Access Granted
          Could not connect to LIRC device node [/dev/lircd] -- disabling LIRC support
              - Check permissions
              - Ensure lircd is running

          Loading User Scripts:

                   CatchAllDebug - CatchAll Event Mapping for Testing
             PowermateVisualizer - Powermate Visualization Handler [0 Powermates]
                  KeyboardAmarok - Amarok Fancy Keyboard Event Mapping
                 KeyboardDefault - Default Fancy Keyboard Event Mapping
          PowermateButtonTimeout - ButtonTimeout Powermate Event Mapping
                 PowermateCompiz - Compiz Powermate Event Mapping
                PowermateFirefox - Firefox Powermate Event Mapping
                PowermateMPlayer - MPlayer Powermate Event Mapping
                 PowermateAmarok - Amarok Powermate Event Mapping
                PowermateDefault - Default Powermate Event Mapping
                 ATIX10Intercept - Intercept ATIX10 Event Mapping
                    ATIX10MythTV - MythTV ATIX10 Event Mapping
                   ATIX10MPlayer - MPlayer ATIX10 Event Mapping
                    ATIX10Amarok - Amarok ATIX10 Event Mapping
                   ATIX10Default - Default ATIX10 Event Mapping
          LIRCHauppaugeIntercept - Intercept LIRC Event Mapping for the Hauppauge remote
            LIRCMceUSB2Intercept - Intercept LIRC Event Mapping for the MceUSB2 remote
             LIRCHauppaugeMythTV - MythTV LIRC Event Mapping for the Hauppauge remote
               LIRCMceUSB2MythTV - MythTV LIRC Event Mapping for the MceUSB2 remote
            LIRCHauppaugeMPlayer - MPlayer LIRC Event Mapping for the Hauppauge remote
              LIRCMceUSB2MPlayer - MPlayer LIRC Event Mapping for the MceUSB2 remote
             LIRCHauppaugeAmarok - Amarok LIRC Hauppauge Event Mapping
               LIRCMceUSB2Amarok - Amarok LIRC Event Mapping for the MceUSB2 remote
            LIRCHauppaugeDefault - Default LIRC Event Mapping for the Hauppauge remote
              LIRCMceUSB2Default - Default LIRC Event Mapping for the MceUSB2 remote
                      MomoRacing - Logitech Momo Racing Event Mapping
                   RemoteControl - Remote Control Event Mapping

          onEvent: WindowFocus [FocusIn] -- <WindowTitle:(root window)> <FormalName:(root window)> <Class:(root window)>
                                [[[[[[ here I started mythfrontend]]]]]]
          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x1
          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_LEFT> c: 0x69 v: 0x1
          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1

          thank you

           
          • Tim Burrell

            Tim Burrell - 2008-01-30

            Shouldn't need lirc loaded at all.

            I'm curious, is there a line in there that looks like:

            onEvent: WindowFocus [FocusIn] -- <WindowTitle:Mythfrontend> <FormalName:mythfrontend> <Class:mythfrontend> ?

            Tim.

             
            • orangeek

              orangeek - 2008-01-30

              during the tests, lirc isn't loaded, I just describe every step I followed to make thoes tries with gizmod. i don;t know if it coulde be useful for you.
              about your question: there is no evidence that gizmod recognized the newly created mythfrontend window. this happens during the test you suggested (start gizmod and then launch mythfrontend). in the first output I posted (launching gizmod when mythfrontend was alrealdy loaded) there is a line that shows gizmod recognized the myth window,

               
              • Tim Burrell

                Tim Burrell - 2008-01-31

                Hrmmm okay I'm starting to get a sense of what's going on.

                Could you run gizmod in ultra debug mode (gizmod -gAV 5) and switch back and forth between windows and tell me what you see?

                You should see the occasional "Processing X11 Focus Events..." line.

                You should also see "onEvent: WindowFocus" events.

                You should NOT see the following line: "Unable to Open X11 Display [Default] -- Per application mappings will not work!"

                Did you compile gizmod yourself, or are you using a packaged version and if so, which one?

                Thanks,

                Tim.

                 
                • orangeek

                  orangeek - 2008-01-31

                  Hi Tim.
                  I will try in a couple of hours.
                  Regarding your questions: I compiled gizmod myself since I use knoppmyth and I haven't found any suitable package. I don't get any "Unable to open Display Error" since I run
                  export DISPLAY=:0
                  I will post the other info later.

                  thanks

                   
                • orangeek

                  orangeek - 2008-01-31

                  Hi Tim.
                  I did the tests you suggested. you can find the output at the end of this post (it's way too long... feel free to delete it after you read that).
                  but maybe I found something interesting. Somehow now gizmod works!
                  But only if I have a mouse connected! :)
                  I connected a mouse in order to test as you suggested (cycling between windows) because I thought fluxbox hasn't the alt-tab feature (I was wrong). anyway I tried and at the first attempt gizmod worked in mythfrontend!
                  So I didnt figure out the reasons for the previous failures.
                  The thing is replicable: if the mouse isnt connected when gizmod starts, the remote doesnt work.
                  In the 5 attempts I did, if the mouse is connected my remote works flawlessy (as always with gizmod! :) ).

                  I really don't know the reasons but it's a bit odd...

                  orangeek

                  GizmoDaemon v3.4 -=- (c) 2007, Tim Burrell <tim.burrell@gmail.com>

                  Debug Mode Enabled
                  Debug Verbosity set to [5]
                  ALSA Support Disabled

                  Embedding Python Interpreter...
                  Initializing Python Environment...
                  Adding [/etc/gizmod/modules.d] to the System Path
                  Modifying PYTHONPATH:
                  import sys
                  sys.path.insert(0, "/etc/gizmod/")
                  sys.path.insert(0, "/etc/gizmod/modules.d/")
                  sys.path.insert(0, "/etc/gizmod/modules.d/bases")
                  sys.path.insert(0, "/etc/gizmod/modules.d/visualizers")

                  Executing Dispatcher Python Script [/etc/gizmod/GizmodDispatcher.py]...
                  Registering Default Mixer Priority: master
                  Registering Default Mixer Priority: pcm
                  Registering Default Mixer Priority: front
                  Registering Default Mixer Priority: center
                  Registering Default Mixer Priority: side
                  Registering Default Mixer Priority: surround
                  Registering Default Mixer Priority: headphones
                  Creating Dispatcher Object
                  Executing User Python Script [/etc/gizmod/GizmodUser.py]...
                  Registering Devices:

                  Registering Input Event Devices in [/dev/input]
                  Adding File [/dev/input] to Watch List with Mode [2]
                  Watching Device [/dev/input]: Directory
                  New Device Detected [/dev/input]: Directory
                      Standard - Directory [input]
                  Adding File [/dev/input/event0] to Watch List with Mode [2]
                  Watching Device [/dev/input/event0]: AT Translated Set 2 keyboard
                  New Device Detected [/dev/input/event0]: AT Translated Set 2 keyboard
                      Keyboard - AT Translated Set 2 keyboard [event0] vId: 0x1 pId: 0x1
                  Adding File [/dev/input/event1] to Watch List with Mode [2]
                  Watching Device [/dev/input/event1]: IR-receiver inside an USB DVB receiver
                  New Device Detected [/dev/input/event1]: IR-receiver inside an USB DVB receiver
                      Standard - IR-receiver inside an USB DVB receiver [event1] vId: 0x14aa pId: 0x221
                  Adding File [/dev/input/event2] to Watch List with Mode [2]
                  Watching Device [/dev/input/event2]: X10 Wireless Technology Inc USB Receiver
                  New Device Detected [/dev/input/event2]: X10 Wireless Technology Inc USB Receiver
                       ATI X10 - X10 Wireless Technology Inc USB Receiver [event2] vId: 0xbc7 pId: 0x4
                  Device [X10 Wireless Technology Inc USB Receiver] Exclusive Access Granted
                  Adding File [/dev/input/event3] to Watch List with Mode [2]
                  Watching Device [/dev/input/event3]: PS/2+USB Mouse
                  New Device Detected [/dev/input/event3]: PS/2+USB Mouse
                         Mouse - PS/2+USB Mouse [event3] vId: 0x4f3 pId: 0x210
                  Registering LIRC device node [/dev/lircd]
                  Failed to Connect to [/dev/lircd] for [Read] -- Check Permissions!
                  Could not connect to LIRC device node [/dev/lircd] -- disabling LIRC support
                      - Check permissions
                      - Ensure lircd is running

                  Loading User Scripts:

                  Importing User Script [000-CatchAllDebug]
                  Executing Python Code: __import__("000-CatchAllDebug")

                           CatchAllDebug - CatchAll Event Mapping for Testing
                  Importing User Script [001-KeyboardLED-Visualizer]
                  Executing Python Code: __import__("001-KeyboardLED-Visualizer")

                  Importing User Script [001-Powermate-Visualizer]
                  Executing Python Code: __import__("001-Powermate-Visualizer")

                     PowermateVisualizer - Powermate Visualization Handler [0 Powermates]
                  Importing User Script [150-Keyboard-Amarok]
                  Executing Python Code: __import__("150-Keyboard-Amarok")

                          KeyboardAmarok - Amarok Fancy Keyboard Event Mapping
                  Importing User Script [199-Keyboard-Default]
                  Executing Python Code: __import__("199-Keyboard-Default")

                         KeyboardDefault - Default Fancy Keyboard Event Mapping
                  Importing User Script [200-Powermate-ButtonTimeout]
                  Executing Python Code: __import__("200-Powermate-ButtonTimeout")

                  PowermateButtonTimeout - ButtonTimeout Powermate Event Mapping
                  Importing User Script [201-Powermate-Compiz]
                  Executing Python Code: __import__("201-Powermate-Compiz")

                         PowermateCompiz - Compiz Powermate Event Mapping
                  Importing User Script [210-Powermate-Firefox]
                  Executing Python Code: __import__("210-Powermate-Firefox")

                        PowermateFirefox - Firefox Powermate Event Mapping
                  Importing User Script [211-Powermate-MPlayer]
                  Executing Python Code: __import__("211-Powermate-MPlayer")

                        PowermateMPlayer - MPlayer Powermate Event Mapping
                  Importing User Script [250-Powermate-Amarok]
                  Executing Python Code: __import__("250-Powermate-Amarok")

                         PowermateAmarok - Amarok Powermate Event Mapping
                  Importing User Script [299-Powermate-Default]
                  Executing Python Code: __import__("299-Powermate-Default")

                        PowermateDefault - Default Powermate Event Mapping
                  Importing User Script [400-ATIX10-Intercept]
                  Executing Python Code: __import__("400-ATIX10-Intercept")

                         ATIX10Intercept - Intercept ATIX10 Event Mapping
                  Importing User Script [410-ATIX10-MythTV]
                  Executing Python Code: __import__("410-ATIX10-MythTV")

                            ATIX10MythTV - MythTV ATIX10 Event Mapping
                  Importing User Script [411-ATIX10-MPlayer]
                  Executing Python Code: __import__("411-ATIX10-MPlayer")

                           ATIX10MPlayer - MPlayer ATIX10 Event Mapping
                  Importing User Script [450-ATIX10-Amarok]
                  Executing Python Code: __import__("450-ATIX10-Amarok")

                            ATIX10Amarok - Amarok ATIX10 Event Mapping
                  Importing User Script [499-ATIX10-Default]
                  Executing Python Code: __import__("499-ATIX10-Default")

                           ATIX10Default - Default ATIX10 Event Mapping
                  Importing User Script [500-LIRC-Hauppauge-Intercept]
                  Executing Python Code: __import__("500-LIRC-Hauppauge-Intercept")

                  LIRCHauppaugeIntercept - Intercept LIRC Event Mapping for the Hauppauge remote
                  Importing User Script [500-LIRC-MceUSB2-Intercept]
                  Executing Python Code: __import__("500-LIRC-MceUSB2-Intercept")

                    LIRCMceUSB2Intercept - Intercept LIRC Event Mapping for the MceUSB2 remote
                  Importing User Script [510-LIRC-Hauppauge-MythTV]
                  Executing Python Code: __import__("510-LIRC-Hauppauge-MythTV")

                     LIRCHauppaugeMythTV - MythTV LIRC Event Mapping for the Hauppauge remote
                  Importing User Script [510-LIRC-MceUSB2-MythTV]
                  Executing Python Code: __import__("510-LIRC-MceUSB2-MythTV")

                       LIRCMceUSB2MythTV - MythTV LIRC Event Mapping for the MceUSB2 remote
                  Importing User Script [511-LIRC-Hauppauge-MPlayer]
                  Executing Python Code: __import__("511-LIRC-Hauppauge-MPlayer")

                    LIRCHauppaugeMPlayer - MPlayer LIRC Event Mapping for the Hauppauge remote
                  Importing User Script [511-LIRC-MceUSB2-MPlayer]
                  Executing Python Code: __import__("511-LIRC-MceUSB2-MPlayer")

                      LIRCMceUSB2MPlayer - MPlayer LIRC Event Mapping for the MceUSB2 remote
                  Importing User Script [550-LIRC-Hauppauge-Amarok]
                  Executing Python Code: __import__("550-LIRC-Hauppauge-Amarok")

                     LIRCHauppaugeAmarok - Amarok LIRC Hauppauge Event Mapping
                  Importing User Script [550-LIRC-MceUSB2-Amarok]
                  Executing Python Code: __import__("550-LIRC-MceUSB2-Amarok")

                       LIRCMceUSB2Amarok - Amarok LIRC Event Mapping for the MceUSB2 remote
                  Importing User Script [599-LIRC-Hauppauge-Default]
                  Executing Python Code: __import__("599-LIRC-Hauppauge-Default")

                    LIRCHauppaugeDefault - Default LIRC Event Mapping for the Hauppauge remote
                  Importing User Script [599-LIRC-MceUSB2-Default]
                  Executing Python Code: __import__("599-LIRC-MceUSB2-Default")

                      LIRCMceUSB2Default - Default LIRC Event Mapping for the MceUSB2 remote
                  Importing User Script [610-MomoRacing]
                  Executing Python Code: __import__("610-MomoRacing")

                              MomoRacing - Logitech Momo Racing Event Mapping
                  Importing User Script [999-RemoteControl]
                  Executing Python Code: __import__("999-RemoteControl")

                           RemoteControl - Remote Control Event Mapping

                  Processing X11 Focus Events...
                  onEvent: WindowFocus [FocusIn] -- <WindowTitle:(root window)> <FormalName:(root window)> <Class:(root window)>
                  Processing X11 Focus Events...
                  FileEventWatcher :: Watching [5 Files] for Events...
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_LEFT> c: 0x69 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFT> c: 0x69 v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFT> c: 0x69 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_STOP> c: 0x80 v: 0x1
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_STOP> c: 0x80 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_STOP> c: 0x80 v: 0x1
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_STOP> c: 0x80 v: 0x1
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_E> c: 0x12 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_E> c: 0x12 v: 0x1
                  Processing File Events...
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_C> c: 0x2e v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x1
                  Building Process Tree
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ESC> c: 0x1 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ESC> c: 0x1 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_LEFT> c: 0x69 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFT> c: 0x69 v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFT> c: 0x69 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_UP> c: 0x67 v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_DOWN> c: 0x6c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_RIGHT> c: 0x6a v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <KEY_OK> c: 0x160 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ENTER> c: 0x1c v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x1
                  Building Process Tree
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ESC> c: 0x1 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x1
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_ESC> c: 0x1 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xd
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x14
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xf
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x15
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xe
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x14
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x13
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x10
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xc
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xf
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x12
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x13
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x14
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x13
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x13
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x14
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x14
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x12
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x12
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x13
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x11
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x12
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x14
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x14
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x12
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xe
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xf
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x11
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xb
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x13
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xe
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x14
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x10
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x11
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x13
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x13
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x15
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x18
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x19
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1a
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1a
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1a
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1a
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1b
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1b
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1a
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x18
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x15
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x15
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x15
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x13
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x10
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xf
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x11
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x10
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xe
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xf
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x10
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xe
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xc
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xb
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x6
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xe
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x10
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x12
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x16
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x19
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1a
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1d
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1e
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1b
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x19
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x16
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x12
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x11
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x10
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xb
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xc
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xd
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x12
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x16
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x11
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x12
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x19
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1b
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x19
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1a
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1f
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1e
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1b
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1a
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1a
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x19
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x16
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x12
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xd
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xa
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xe
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x6
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xf
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x13
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x14
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x16
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x18
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x15
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x12
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x13
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x11
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_KEY] <BTN_LEFT> c: 0x110 v: 0x1
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_KEY] <BTN_LEFT> c: 0x110 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  Building Process Tree
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  Building Process Tree
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  Building Process Tree
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  Building Process Tree
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0x38
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_LEFTALT> c: 0x38 v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event0 | [EV_MSC] c: 0x4 Val: 0xf
                  onEvent: Standard -- /dev/input/event0 | [EV_KEY] <KEY_TAB> c: 0xf v: 0x0
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xd
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xc
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0xb
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x6
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x6
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xc
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xf
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x10
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x10
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x10
                  Building Process Tree
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xe
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xe
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x10
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xf
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xe
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xd
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xb
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0xa
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x3
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x7
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x5
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x5
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x6
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x8
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x8
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xa
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xa
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0xa
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x4
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x9
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x7
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x4
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: 0x1
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x3
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x2
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                  Processing File Events...
                  onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                  Keyboard Interrupt Received...
                  Poll error: Interrupted system call
                  GizmoDaemon Shutting Down... |Waiting on X11FocusWatcher Thread to Finish...
                  Waiting on CPUUsage Thread to Finish...
                  Down.                 

                   
                  • Tim Burrell

                    Tim Burrell - 2008-01-31

                    Ahhh I can't believe I didn't notice this!!

                    I'm glad you figured it out though!

                    The reason why no events were being translated is because the ATIX10 scripts are set not to do anything if a keyboard and mouse aren't detected.  Reason being, the "mouse pad" on the X10 generally creates mouse events, and the other buttons generally create keyboard events, so I thought it an okay compromise to ensure that a mouse and keyboard are loaded.  I should really make it so it just disables the features it can't use, or at the least spit out a warning message :)

                    Tim.

                     
                    • orangeek

                      orangeek - 2008-01-31

                      OMG, I AM A GENIUS! :)
                      Well, actually I didnt figure anything, I just had a lucky strike! :D
                      Soooo... I would not have a mouse attached to the mediacenter (mythtv doesnt support mouse as far as I know), there is any way to disable the "wait for the mouse otherwise do not work and tell nothing to the user" feature? :)

                       
                      • Tim Burrell

                        Tim Burrell - 2008-01-31

                        Yeah you can disable this quite easily.

                        See the file: modules.d/based/GizmoScriptDefault.py at line 60

                        It says:

                        if Event.Class in self.InterestedClasses and len(Gizmod.Mice) and len(Gizmod.Keyboards):
                            # process the key
                            return True

                        All that says is: if we're interested in the event, and there are mice attached and there are keyboards attached then process the event.  A quick and dirty hack would be to remove the "and len(Gizmod.Mice)" part.

                        Tim.

                         
                        • orangeek

                          orangeek - 2008-02-01

                          Hi Tim.
                          A couple of things that I've to do in order to have gizmod working; I don't know if they're relevant but maybe they do.
                          my knoppmyth boots with lirc and the modules loaded _along_ with the ati_remote driver loaded.
                          To use the kernel driver I've to:
                          a. stop lirc
                          b. remove lirc modules
                          c. remove the ati_remote module
                          d. insmod the ati_remote module (somehow modprobe doesnt find the .ko file)
                          d. chmodding the input devices (now I'm in testing phase: I'll create the udev rules later)
                          e. now the x10 works with the ati_remote kernel driver

                          So, about the tests you suggest, here is what I've been through.
                          1.With lirc loaded, irw says and the mouse pad on the x10 doesnt work
                          000000144c770000 00 MOUSE_DOWNLEFT REMOTE_WONDER
                          0000001448730000 00 MOUSE_DOWN REMOTE_WONDER

                          2.with lirc and gizmod not running, the mouse pad works (cursor movement and left right click)

                          3.with default gizmod (no hack to avoid mouse check) running, the mouse pad on the x10 doesnt work and the output of gizmod is like this
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x1 Val: 0x4
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x1 Val: -0x1
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <BTN_LEFT> c: 0x110 v: 0x1
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <BTN_LEFT> c: 0x110 v: 0x0
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <BTN_RIGHT> c: 0x111 v: 0x1
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <BTN_RIGHT> c: 0x111 v: 0x1

                          4.with default gizmod running and mouse connected, the mouse pad works but worse than with test number 2. (it's not so fast and is -I don't know the noun in english but is like when you got 8FPS on doom). the gizmod's output is like this
                          onEvent: WindowFocus [FocusIn] -- <WindowTitle:(root window)> <FormalName:(root window)> <Class:(root window)>
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x1 Val: -0x1
                          onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x1
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x1 Val: -0x2
                          onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: -0x2
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x1 Val: 0x1
                          onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x1 Val: 0x1
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x0 Val: -0x2
                          onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x0 Val: -0x1
                          onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x1
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_REL] c: 0x0 Val: -0x2
                          onEvent: Standard -- /dev/input/event3 | [EV_REL] c: 0x0 Val: -0x2
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <BTN_LEFT> c: 0x110 v: 0x1
                          Traceback (most recent call last):
                            File "/etc/gizmod/GizmodDispatcher.py", line 109, in onEvent
                              if UserScript.onEvent(Event, Gizmo):
                            File "/etc/gizmod/modules.d/bases/GizmoScriptDefault.py", line 73, in onEvent
                              return self.onDeviceEvent(Event, Gizmo)
                            File "/etc/gizmod/modules.d/499-ATIX10-Default.py", line 64, in onDeviceEvent
                              Gizmod.Mice[0].createEventRaw(GizmoEventType.EV_KEY, GizmoKey.KEY_BTN_LFT, Event.Value)
                          AttributeError: type object 'GizmoDaemon.GizmoKey' has no attribute 'KEY_BTN_LFT'
                          Failed to call GizmodDispatcher.onEvent for deserializeMessage
                          onEvent: ATIX10 -- /dev/input/event2 | [EV_KEY] <BTN_LEFT> c: 0x110 v: 0x0
                          Traceback (most recent call last):
                            File "/etc/gizmod/GizmodDispatcher.py", line 109, in onEvent
                              if UserScript.onEvent(Event, Gizmo):
                            File "/etc/gizmod/modules.d/bases/GizmoScriptDefault.py", line 73, in onEvent
                              return self.onDeviceEvent(Event, Gizmo)
                            File "/etc/gizmod/modules.d/499-ATIX10-Default.py", line 64, in onDeviceEvent
                              Gizmod.Mice[0].createEventRaw(GizmoEventType.EV_KEY, GizmoKey.KEY_BTN_LFT, Event.Value)
                          AttributeError: type object 'GizmoDaemon.GizmoKey' has no attribute 'KEY_BTN_LFT'
                          Failed to call GizmodDispatcher.onEvent for deserializeMessage

                          The error above is when I press the left mouse pad button on the x10 (with the right button is the same).

                          5. with hacked gizmod running, the x10 works but gives some errors If I press the mouse pad :D

                          Hope this helps.

                          orangeek

                           
                          • Tim Burrell

                            Tim Burrell - 2008-02-02

                            Alright thanks for all your diagnostics there, really helps me see what's going on, and I'm pretty sure I know what the problem is.

                            If you want to see if you can get the mouse events to work without having a mouse connected, you should put in the dirty hack we discussed before, and change the 499-ATIX10 script so that instead of this:

                            if Event.Code == GizmoKey.BTN_LEFT:
                                    # do mouse left click
                                    Gizmod.Mice[0].createEventRaw(GizmoEventType.EV_KEY, GizmoKey.BTN_LFT, Event.Value)
                                    return True

                            you see this:

                            if Event.Code == GizmoKey.BTN_LEFT:
                                    # do mouse left click
                                    Gizmo.createEventRaw(GizmoEventType.EV_KEY, GizmoKey.BTN_LFT, Event.Value)
                                    return True

                            Same for right button, and where you see this:

                            elif Event.Type == GizmoEventType.EV_REL:
                                    # do mouse movements
                                    Gizmod.Mice[0].createEventRaw(GizmoEventType.EV_REL, Event.Code, Event.Value)
                                    return True

                            Chance to:

                            elif Event.Type == GizmoEventType.EV_REL:
                                    # do mouse movements
                                    Gizmo.createEventRaw(GizmoEventType.EV_REL, Event.Code, Event.Value)
                                    return True

                            I have no idea if that'll work, I've not tried it, but it's worth a shot.  I'd try but I don't have an ATI X10 to test with anymore!

                            Now if you want the mouse events to work while have a mouse plugged in... I'm not sure why you're seeing the behavior you are there.  If you end up wanting to go this route we can  likely get it figured out, but at the moment I'm not sure what's going on.  I have a feeling that calling setMinimumTimeBetweenEvents(0.0) on the gizmo when it's registered will fix it, but that's just a guess.  If you want to try this see GizmoRegistrar.py in handleDeviceAddition -- scroll down till you see the ATIX10 part, and add in a line after the exclusive mode that looks like:

                            self.Device.setMinimumTimeBetweenEvents(0.0)

                            As for your part 5 there... and the error in part 4, there's actually a bug in the 499 script that I just noticed thanks to that debug output!  Just replace KEY_BTN_ with BTN_ and the error should go away (also fixed in SVN if you would prefer to download the latest version).

                            Thanks,

                            Tim.

                             
                            • orangeek

                              orangeek - 2008-02-03

                              hi tim.
                              I think I'm not going a mouse connected to my mythbox.
                              Anyway now gizmod works perfectly.
                              I just had to fight with fluxbox and finished to install and use wmaker.
                              In fact, I wasnt able to run gizmod within the .fluxbox/apps file. If I do so, somehow gizmod doesnt use the ATI .py file.
                              If i put the same command (gizmod -Ag -C /etc/gizmod/) in .xinitrc and use wmaker, everythinkg works fine.
                              thank you for your great piece of software!
                              orangeek

                               
                              • Tim Burrell

                                Tim Burrell - 2008-02-03

                                Interesting!  Well glad to hear you got the kinks worked out!

                                 
                            • Michael Labiche

                              Michael Labiche - 2008-02-03

                              Hey Tim,
                                 I've been searching around trying to get something very basic to work with a Griffin Power Mate.  All I'd like to do is get the button press to emulate a mouse left click event.  I've successully gotten the PowerMate to emulate mouse wheel events, so I thought this last bit would be easy.  I've given it the ole RTFM college try, but I keep drawin a blank on this.  Sorry.  I realize this thread is referencing a ATI X10, but figured a poke in here might be worth a shot.

                              I tried the modified script above...

                              i.e. 
                              if Event.Code == GizmoKey.BTN_LEFT:
                              # do mouse left click
                              Gizmo.createEventRaw(GizmoEventType.EV_KEY, GizmoKey.BTN_LFT, Event.Value)
                              return True

                              but I am still seeing an error in the gizmod log...

                              e.g.
                              Traceback (most recent call last):
                                File "/root/.gizmod/GizmodDispatcher.py", line 109, in onEvent
                                  if UserScript.onEvent(Event, Gizmo):
                                File "/root/.gizmod/modules.d/bases/GizmoScriptDefault.py", line 73, in onEvent
                                  return self.onDeviceEvent(Event, Gizmo)
                                File "/root/.gizmod/modules.d/010-InteleHealth.py", line 81, in onDeviceEvent
                                  Gizmo.createEventRaw(GizmoEventType.EV_KEY, GizmoKey.BTN_LFT, Event.Value)
                              AttributeError: type object 'GizmoDaemon.GizmoKey' has no attribute 'BTN_LFT'
                              Failed to call GizmodDispatcher.onEvent for deserializeMessage

                              here is my onDeviceEvent section of my config script:

                              def onDeviceEvent(self, Event, Gizmo = None):
                                              """
                                              Called from Base Class' onEvent method.
                                              See GizmodDispatcher.onEvent documention for an explanation of this function
                                              """

                                              if Event.Class in INTERESTED_CLASSES and Gizmod.isProcessRunning(INTERESTED_APPLICATION) >= 0:
                                                      # Check for rotations
                                                      if Event.Type == GizmoEventType.EV_REL:
                                                              # move forward/backward thru the menu passing mousewheel events
                                                              Gizmod.Mice[0].createEventRaw(GizmoEventType.EV_REL, GizmoMouseAxis.WHEEL, -Event.Value)
                                                              return True
                                                              # THIS PART IS WORKING

                                                      # check for button press
                                                      elif Event.Type == GizmoEventType.EV_KEY:
                                                              if not Gizmo.getKeyState(GizmoKey.BTN_0):
                                                                      #should give one event per button press
                                                                      Gizmo.createEventRaw(GizmoEventType.EV_KEY, GizmoKey.BTN_LFT, Event.Value)
                                                                      return True
                                                                      #GIVES TRACEBACK ERROR LOG
                                                              else:
                                                                      return False
                                                      else:
                                                              return False
                                              return False

                              Sorry to bother you on SuperBowl Sunday.  Any help you can offer is truly appreciated.

                              Thanks,

                              Michael

                               
                              • Tim Burrell

                                Tim Burrell - 2008-02-03

                                Hey Michael,

                                No worries... questions are good!

                                I think there's two problems here... the first and most major one is that the key definition is actually GizmoKey.BTN_LEFT, not GizmoKey.BTN_LFT :)

                                That should get rid of the error you're seeing there.

                                That being said, if you notice in the part that works you've got a line like this:

                                Gizmod.Mice[0].createEventRaw(GizmoEventType.EV_REL, GizmoMouseAxis.WHEEL, -Event.Value)

                                Notice the Gizmod.Mice[0] part?  What that does is call createEventRaw on the first mouse device attached to the system.

                                Now in your BTN_LEFT part you've got:

                                Gizmo.createEventRaw(GizmoEventType.EV_KEY, GizmoKey.BTN_LEFT, Event.Value) 

                                That is most likely going to attempt to create a left button push on the powermate itself!  Likely not what you want.  Try this:

                                Gizmod.Mice[0].createEventRaw(GizmoEventType.EV_KEY, GizmoKey.BTN_LEFT, Event.Value)

                                Similarly if you wanted to create a keyboard event you'd use:

                                Gizmod.Keyboards[0].createEvent...

                                Make sense?

                                Let me know if that helps at all!

                                Thanks,

                                Tim.

                                 
                                • Michael Labiche

                                  Michael Labiche - 2008-02-03

                                  Hey Thanks Tim,
                                     That was definitely an improvement...the error message went away.  I still get no mouse event though.  Here is a debug log from gizmod run w/ the -g option...

                                  onEvent: Powermate -- /dev/input/event2 | [EV_KEY] <BTN_0> c: 0x100 v: 0x1
                                  onEvent: Powermate -- /dev/input/event2 | [EV_KEY] <BTN_0> c: 0x100 v: 0x0 Duration: 0.0928319990635
                                  onEvent: Powermate -- /dev/input/event2 | [EV_KEY] <BTN_0> c: 0x100 v: 0x1
                                  onEvent: Powermate -- /dev/input/event2 | [EV_KEY] <BTN_0> c: 0x100 v: 0x0 Duration: 0.00797099992633

                                  So, it looks like I'm definitely getting the event now, but I'm not sure about the mapping.  The number 0x110 comes to mind from previous searches...

                                  e.g.

                                  michael@linux-labiche:~/gizmo/gizmod-3.4> find . -exec grep "BTN_LEFT" '{}' \; -print
                                          GIZMO_BTN_LEFT                  = 0x110,
                                  ./libGizmod/GizmoKeyDefs.hpp
                                  Binary file ./gizmod/CMakeFiles/gizmod.dir/GizmoDaemon.o matches
                                  ./gizmod/CMakeFiles/gizmod.dir/GizmoDaemon.o
                                  Binary file ./gizmod/CMakeFiles/CMakeRelink.dir/gizmod matches
                                  ./gizmod/CMakeFiles/CMakeRelink.dir/gizmod
                                  Binary file ./gizmod/gizmod matches
                                  ./gizmod/gizmod
                                          .value("BTN_LEFT",              GIZMO_BTN_LEFT)                 ///< GIZMO_BTN_LEFT

                                  etc.

                                  Thanks for answering me on a Sunday.  I'm off to a SuperBowl party right now, hope u r 2.

                                  seeya,

                                  Michael

                                   
                                  • Tim Burrell

                                    Tim Burrell - 2008-02-11

                                    Did you post the output of gizmod starting up by running via "gizmod -g"?  I looked through the thread but didn't see it.  If you didn't, could you?

                                    Thanks,

                                    Tim.

                                     
    • orangeek

      orangeek - 2008-01-31

      and:
      why my remote doesnt create mouse events?
      do you think is my system somehow not well configured?

       
      • Tim Burrell

        Tim Burrell - 2008-01-31

        Well first of all, if you're not going to have a mouse connected to the system, you won't be able to generate mouse events anyway (not with Gizmod as it's currently set up).  You might be able to directly pass through the mouse pad events on X10 remote, but you likely wouldn't be able to generate any mouse events other than the one the remote driver itself creates.  I haven't tested this though so I could be wrong!

        But to answer this I need more info:

        - Does the X10 create mouse events on its own when gizmod is not running?
        - If it does, but not when gizmod is running then:
        - Does "gizmod -g" capture the mouse pad events from the remote?  And if so what do they look like (can you paste a few?)

        Thanks,

        Tim.

         
        • orangeek

          orangeek - 2008-02-01

          Tim, thank you for the reply.
          tonight I'll do the quick and dirty hack along with the tests and debug you suggest.

          orangeek

           
1 2 > >> (Page 1 of 2)

Log in to post a comment.