Thread: Kobo Start Menu
View Single Post
Old 10-11-2014, 08:01 AM   #530
Frenzie
Wizard
Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.Frenzie ought to be getting tired of karma fortunes by now.
 
Posts: 1,763
Karma: 731681
Join Date: Oct 2014
Location: Antwerp
Device: Kobo Aura H2O
I see his sources are available. Could you perhaps post your /proc/bus/input/devices and evtest /dev/input/event1 to see if anything's different?

Code:
#  cat /proc/bus/input/devices 
I: Bus=0019 Vendor=0001 Product=0001 Version=0100
N: Name="mxckpd"
P: Phys=gpio-keys/input0
S: Sysfs=/devices/platform/mxckpd/input/input0
U: Uniq=
H: Handlers=kbd event0 
B: EV=3
B: KEY=100000 4000000 8000008 0

I: Bus=0018 Vendor=0000 Product=0000 Version=0000
N: Name="zForce-ir-touch"
P: Phys=
S: Sysfs=/devices/virtual/input/input1
U: Uniq=
H: Handlers=event1 
B: EV=b
B: KEY=400 180000 4 0 0 0 0 0 0 0 0
B: ABS=2650000 1030003
Code:
# evtest /dev/input/event1
Input driver version is 1.0.0
Input device ID: bus 0x18 vendor 0x0 product 0x0 version 0x0
Input device name: "zForce-ir-touch"
Supported events:
  Event type 0 (Sync)
  Event type 1 (Key)
    Event code 258 (Btn2)
    Event code 307 (BtnX)
    Event code 308 (BtnY)
    Event code 330 (Touch)
  Event type 3 (Absolute)
    Event code 0 (X)
      Value      0
      Min        0
      Max     1440
    Event code 1 (Y)
      Value      0
      Min        0
      Max     1080
    Event code 16 (Hat0X)
      Value      0
      Min        0
      Max     1440
    Event code 17 (Hat0Y)
      Value      0
      Min        0
      Max     1080
    Event code 24 (Pressure)
      Value      0
      Min        0
      Max     2048
    Event code 48 (?)
      Value      0
      Min        0
      Max        2
    Event code 50 (?)
      Value      0
      Min        0
      Max       15
    Event code 53 (?)
      Value      0
      Min        0
      Max     1440
    Event code 54 (?)
      Value      0
      Min        0
      Max     1080
    Event code 57 (?)
      Value      0
      Min        1
      Max        2
Testing ... (interrupt to exit)
And a few lines of the output:
Code:
Event: time 1413023927.391625 ------- Config Sync ------ x: 36808 y: 36728 p: 0 ------------
Event: time 1413023927.391634 ------- Report Sync ------ x: 36808 y: 36728 p: 0 ------------
Event: time 1413023927.409451 ------- Config Sync ------ x: 36808 y: 36728 p: 0 ------------
Event: time 1413023927.409459 ------- Report Sync ------ x: 36808 y: 36728 p: 0 ------------
I got annoyed by the busybox limitations and got myself a Debian Jessie chroot environment. The output from real evtest is clearly a lot more useful:
Code:
# evtest  
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0:      mxckpd
/dev/input/event1:      zForce-ir-touch
Select the device event number [0-1]: 1
Input driver version is 1.0.0
Input device ID: bus 0x18 vendor 0x0 product 0x0 version 0x0
Input device name: "zForce-ir-touch"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 258 (BTN_2)
    Event code 307 (BTN_NORTH)
    Event code 308 (BTN_WEST)
    Event code 330 (BTN_TOUCH)
  Event type 3 (EV_ABS)
    Event code 0 (ABS_X)
      Value      0
      Min        0
      Max     1440
    Event code 1 (ABS_Y)
      Value      0
      Min        0
      Max     1080
    Event code 16 (ABS_HAT0X)
      Value      0
      Min        0
      Max     1440
    Event code 17 (ABS_HAT0Y)
      Value      0
      Min        0
      Max     1080
    Event code 24 (ABS_PRESSURE)
      Value      0
      Min        0
      Max     2048
    Event code 48 (ABS_MT_TOUCH_MAJOR)
      Value      0
      Min        0
      Max        2
    Event code 50 (ABS_MT_WIDTH_MAJOR)
      Value      0
      Min        0
      Max       15
    Event code 53 (ABS_MT_POSITION_X)
      Value      0
      Min        0
    Event code 54 (ABS_MT_POSITION_Y)
      Value      0
      Min        0
      Max     1080
    Event code 57 (ABS_MT_TRACKING_ID)
      Value      0
      Min        1
      Max        2
Properties:
Testing ... (interrupt to exit)
Event: time 1413025320.241268, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 1
Event: time 1413025320.241307, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 1
Event: time 1413025320.241315, type 3 (EV_ABS), code 50 (ABS_MT_WIDTH_MAJOR), value 1
Event: time 1413025320.241324, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 799
Event: time 1413025320.241333, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 844
Event: time 1413025320.241345, ++++++++++++++ EV_REL ++++++++++++
Event: time 1413025320.241355, -------------- EV_SYN ------------
Event: time 1413025320.330832, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 1
Event: time 1413025320.330870, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 0
Event: time 1413025320.330876, type 3 (EV_ABS), code 50 (ABS_MT_WIDTH_MAJOR), value 0
Event: time 1413025321.621320, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 489
Event: time 1413025321.621332, ++++++++++++++ EV_REL ++++++++++++
Event: time 1413025321.621342, -------------- EV_SYN ------------
Event: time 1413025321.720060, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 1
Event: time 1413025321.720097, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 1
Event: time 1413025321.720105, type 3 (EV_ABS), code 50 (ABS_MT_WIDTH_MAJOR), value 1
Event: time 1413025321.720114, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 805
Event: time 1413025321.720123, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 489
Event: time 1413025321.720135, ++++++++++++++ EV_REL ++++++++++++
Event: time 1413025321.720145, -------------- EV_SYN ------------
Apparently "clicking" the screen would have to be implemented through the ABS_MT_TOUCH_MAJOR value, which generates a 1 while touching and a 0 when not. The driver does not seem to output anything but type 3 events by itself.

So yeah, could anyone tell me if that's the same on other devices or if there's some kind of distinction here? I had expected the driver to simply send a button press when it might think it's appropriate, but then I don't really know anything about touch screens.
Frenzie is offline   Reply With Quote