Although Elan Touchpad is listed in the output of xinput, "0" in
"hid_elan 16384 0" shows hid_elan is not being used. Is there an entry
named "*:04F3:3140.*" under /sys/bus/hid/drivers/hid-elan/?
> plus I found that this device is already defined in hid-elan.c
I couldn't find the string 0x3140. Do you mean the device is defined in
another way?
Yesterday, I used evtest to monitor the Synaptics touchpad and was
surprised to find when hid_multitouch is taking over the device,
multiple fingers (up to 4) touching could be detected,
```
$ sudo evtest
/dev/input/event14: MSFT0001:00 06CB:7F28 Mouse
/dev/input/event15: MSFT0001:00 06CB:7F28 Touchpad
Select the device event number [0-21]: 15
Input driver version is 1.0.1
Input device ID: bus 0x18 vendor 0x6cb product 0x7f28 version 0x100
Input device name: "MSFT0001:00 06CB:7F28 Touchpad"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 272 (BTN_LEFT)
Event code 325 (BTN_TOOL_FINGER)
Event code 328 (BTN_TOOL_QUINTTAP)
Event code 330 (BTN_TOUCH)
Event code 333 (BTN_TOOL_DOUBLETAP)
Event code 334 (BTN_TOOL_TRIPLETAP)
Event code 335 (BTN_TOOL_QUADTAP)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 0
Min 0
Max 1224
Resolution 12
Event code 1 (ABS_Y)
Value 0
Min 0
Max 804
Resolution 12
Event code 47 (ABS_MT_SLOT)
Value 0
Min 0
Max 4
Event code 53 (ABS_MT_POSITION_X)
Value 0
Min 0
Max 1224
Resolution 12
Event code 54 (ABS_MT_POSITION_Y)
Value 0
Min 0
Max 804
Resolution 12
Event code 55 (ABS_MT_TOOL_TYPE)
Value 0
Min 0
Max 2
Event code 57 (ABS_MT_TRACKING_ID)
Value 0
Min 0
Max 65535
Event type 4 (EV_MSC)
Event code 5 (MSC_TIMESTAMP)
Properties:
Property type 0 (INPUT_PROP_POINTER)
Property type 2 (INPUT_PROP_BUTTONPAD)
Testing ... (interrupt to exit)
Event: time 1597225994.180980, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID),
value 0
Event: time 1597225994.180980, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X),
value 765
Event: time 1597225994.180980, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y),
value 220
Event: time 1597225994.180980, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1597225994.180980, type 1 (EV_KEY), code 325 (BTN_TOOL_FINGER),
value 1
Event: time 1597225994.180980, type 3 (EV_ABS), code 0 (ABS_X), value 765
Event: time 1597225994.180980, type 3 (EV_ABS), code 1 (ABS_Y), value 220
Event: time 1597225994.180980, type 4 (EV_MSC), code 5 (MSC_TIMESTAMP), value 0
Event: time 1597225994.180980, -------------- SYN_REPORT ------------
```
The only issue is the pointer won't move when I my fingers move on the
touchpad. Compared with a working touchpad, the only difference is the
lack of ABS_PRESSURE events. If I use hid-rmi, these ABS_PRESSURE events
would be generated. It seems ABS_PRESSURE events are needed to make the
pointer move. If I could let hid_multitouch collect ABS_PRESSURE events,
then the touchpad could work.
So I'm curious if hid_multitouch also handle your touchpad device by default,
could you run `sudo evtest` on the device to see what kinds of events could be
generated?
--
You received this bug notification because you are a member of Ubuntu-X,
which is subscribed to xserver-xorg-input-libinput in Ubuntu.
https://bugs.launchpad.net/bugs/1887190
Title:
MSFT Touchpad not working on Lenovo Legion-5 15ARH05
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1887190/+subscriptions
_______________________________________________
Mailing list: https://launchpad.net/~ubuntu-x-swat
Post to : [email protected]
Unsubscribe : https://launchpad.net/~ubuntu-x-swat
More help : https://help.launchpad.net/ListHelp