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