AnsweredAssumed Answered

HID-over-I2C unstable BTN_TOUCH event

Question asked by Michael Stahl on Feb 27, 2020
Latest reply on Mar 5, 2020 by igorpadykov

Hello,

I have a touch screen connected that uses the HID-over-I2C protocol. The touch works except the long-press touch events.

I used evtest for checking the touch.

 

~$ ./evtest /dev/input/event0
Input driver version is 1.0.1
Input device ID: bus 0x18 vendor 0x3eb product 0x2151 version 0x100
Input device name: "hid-over-i2c 03EB:2151"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 330 (BTN_TOUCH)
  Event type 3 (EV_ABS)
    Event code 0 (ABS_X)
      Value   1232
      Min        0
      Max     4095
      Resolution      15
    Event code 1 (ABS_Y)
      Value   3035
      Min        0
      Max     4095
      Resolution      25
    Event code 47 (ABS_MT_SLOT)
      Value      0
      Min        0
      Max        9
    Event code 53 (ABS_MT_POSITION_X)
      Value      0
      Min        0
      Max     4095
      Resolution      15
    Event code 54 (ABS_MT_POSITION_Y)
      Value      0
      Min        0
      Max     4095
      Resolution      25
    Event code 57 (ABS_MT_TRACKING_ID)
      Value      0
      Min        0
      Max    65535
Properties:
  Property type 1 (INPUT_PROP_DIRECT)
Testing ... (interrupt to exit)
Event: time 1581777887.342273, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 24
Event: time 1581777887.342273, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 1853
Event: time 1581777887.342273, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 1815
Event: time 1581777887.342273, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1581777887.342273, type 3 (EV_ABS), code 0 (ABS_X), value 1853
Event: time 1581777887.342273, type 3 (EV_ABS), code 1 (ABS_Y), value 1815
Event: time 1581777887.342273, -------------- SYN_REPORT ------------
Event: time 1581777887.452048, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1581777887.452048, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1581777887.452048, -------------- SYN_REPORT ------------
Event: time 1581777887.810668, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 25
Event: time 1581777887.810668, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1581777887.810668, -------------- SYN_REPORT ------------
Event: time 1581777887.814014, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1581777887.814014, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1581777887.814014, -------------- SYN_REPORT ------------

 

 

I put my finger to the touch and let it on it. You can see that the BTN_TOUCH event came multiple.

Is there a way to set a threshold?

 

Thanks

Michael

Outcomes