Libinput-touch screen detection

sanjay anvekar sanjayanvekar at yahoo.com
Thu Oct 3 10:52:41 UTC 2019


 Hi Peter,    I couldn't get reason for missing ID_INPUT_TOUCHSCREEN , my udev rule looks as below.
SUBSYSTEM=="input" KERNEL=="event[0-9]" ENV{ID_INPUT_TOUCHSCREEN}=="1"  ENV{ID_SEAT}="seat1" SYMLINK+="/dev/input/event0" 

I don't have libinput record tool, instead tried with evtest and I see BTN_TOUCH, below is capture from evtest
~# evtestNo device specified, trying to scan all of /dev/input/event*Available devices:/dev/input/event0:      touchscreen/dev/input/event1:      Dell Dell USB Optical MouseSelect the device event number [0-1]: 0Input driver version is 1.0.1Input device ID: bus 0x18 vendor 0x0 product 0x0 version 0x0Input device name: "touchscreen"Supported events:  Event type 0 (EV_SYN)  Event type 1 (EV_KEY)    Event code 330 (BTN_TOUCH)  Event type 3 (EV_ABS)    Event code 48 (ABS_MT_TOUCH_MAJOR)      Value      0      Min        0      Max      600    Event code 53 (ABS_MT_POSITION_X)      Value      0      Min      168      Max     3908    Event code 54 (ABS_MT_POSITION_Y)      Value      0      Min      195      Max     4045Properties:Testing ... (interrupt to exit)Event: time 1569995436.407176, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1Event: time 1569995436.407176, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 96Event: time 1569995436.407176, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 630Event: time 1569995436.407176, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 693Event: time 1569995436.407176, ++++++++++++++ SYN_MT_REPORT ++++++++++++Event: time 1569995436.407176, -------------- SYN_REPORT ------------Event: time 1569995436.413546, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 94Event: time 1569995436.413546, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 640Event: time 1569995436.413546, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 705Event: time 1569995436.476318, ++++++++++++++ SYN_MT_REPORT ++++++++++++Event: time 1569995436.476318, -------------- SYN_REPORT ------------Event: time 1569995436.482637, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 85Event: time 1569995436.482637, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 645Event: time 1569995436.482637, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 696Event: time 1569995436.482637, ++++++++++++++ SYN_MT_REPORT ++++++++++++Event: time 1569995436.543353, -------------- SYN_REPORT ------------Event: time 1569995436.549449, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 89Event: time 1569995436.549449, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 638Event: time 1569995436.549449, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 697Event: time 1569995436.549449, ++++++++++++++ SYN_MT_REPORT ++++++++++++Event: time 1569995436.549449, -------------- SYN_REPORT ------------Event: time 1569995436.555527, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 102Event: time 1569995436.555527, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 638Event: time 1569995436.555527, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 709Event: time 1569995436.555527, ++++++++++++++ SYN_MT_REPORT ++++++++++++Event: time 1569995436.555527, -------------- SYN_REPORT ------------Event: time 1569995436.752071, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0Event: time 1569995436.752071, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 0Event: time 1569995436.752071, ++++++++++++++ SYN_MT_REPORT ++++++++++++Event: time 1569995436.752071, -------------- SYN_REPORT ------------

Does this indicate that Kernel driver is working fine and issue is with some configuration ? Please let me know.
Thanks & Best Regards,Sanjay

    On Wednesday, 2 October, 2019, 07:16:32 pm GMT+1, Peter Hutterer <peter.hutterer at who-t.net> wrote:  
 
 On Wed, Oct 02, 2019 at 04:40:24PM +0000, sanjay anvekar wrote:
>  Hi Peter,   Thank you for your response. I tried changing udev properties but it didn't help. Here is output from udevadm command.udevadm info /dev/input/event0P: /devices/soc0/soc/2100000.aips-bus/21a4000.i2c/i2c-1/1-0048/input/input0/event0N: input/event0S: input/by-path/platform-21a4000.i2c-eventE: DEVLINKS=/dev/input/by-path/platform-21a4000.i2c-eventE: DEVNAME=/dev/input/event0E: DEVPATH=/devices/soc0/soc/2100000.aips-bus/21a4000.i2c/i2c-1/1-0048/input/input0/event0E: ID_INPUT=1E: ID_PATH=platform-21a4000.i2cE: ID_PATH_TAG=platform-21a4000_i2cE: MAJOR=13E: MINOR=64E: SUBSYSTEM=inputE: USEC_INITIALIZED=2341962
> 
> Also tried with 'libinput-debug-events' and following is outputlibinput-debug-events --device /dev/input/event0 --verboseinput device 'touchscreen', /dev/input/event0 not tagged as input devicefailed to create input device '/dev/input/event0'.Failed to initialized device /dev/input/event0
> I tested this input device with 'evetest' application and it works, but doesn't work with libinput.
> How do I debug further and conclude that it is Kernel driver issue ? Please let me know.
> Thanks & Best Regards,Sanjay

fwiw, the plain text your email client sends appears to be ... broken.

you're missing ID_INPUT_TOUCHSCREEN which is probably you're missing
BTN_TOUCH on the evdev node. run libinput record and that'll tell you the
bits set for the device - for a touchscreen you need ABS_X/Y and BTN_TOUCH
as the minimum.

look for the udev-builtin-input_id.c file in the systemd git repo, that will
tell you how the various ID_INPUT_FOO tags get applied. Then you need to
make sure the kernel exports those.

Cheers,
  Peter

> 
> 
> 
> 
>    On Wednesday, 2 October, 2019, 02:50:39 pm GMT+1, Peter Hutterer <peter.hutterer at who-t.net> wrote:  
>  
>  On Tue, Oct 01, 2019 at 04:08:17PM +0000, sanjay anvekar wrote:
> > Hi All,   I am new to Wayland. I am using Weston 1.9.0 on imx6x board with
> > touchscreen display of resolution 1024x768. I am seeing touchscreen as
> > /dev/input/event0 device and it is working. I confirmed functioning of
> > touchscreen using "cat /dev/input/event0" command. Unfortunately, I don't
> > see touchscreen is listed by libinput application i.e.
> > 'libinput-list-devices'. If I connect USB mouse then I see mouse is listed
> > by 'libinput-list-devices' application, but not touchscreen. I am running
> > Qt application and it is not able to detect touch inputs. Please let me
> > know your inputs to resolve this problem.
> 
> most likely the udev property ID_INPUT and/or ID_INPUT_TOUCHSCREEN is
> missing for this device, libinput debug-events --verbose should print
> *something* at least for the device.
> 
> If the property is missing though that means that it doesn't export the
> correct evdev bits to be picked up by the udev builtin, so most likely the
> kernel driver needs to be fixed.
> 
> Cheers,
>   Peter
>  
  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20191003/4f027464/attachment.html>


More information about the wayland-devel mailing list