Arch Linux

Please read this before reporting a bug:

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!

FS#60072 - [libinput] upgrade to 1.12.0 breaks Elan touchpad

Attached to Project: Arch Linux
Opened by Chris (ozz) - Sunday, 16 September 2018, 03:28 GMT
Last edited by Andreas Radke (AndyRTR) - Tuesday, 18 September 2018, 05:06 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andreas Radke (AndyRTR)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


I'm working with an ASUS C302 (Skylake/CAVE) Chromebook that has an Elan touchpad.

With the upgrade to 1.12.0 the pad has become practically non-responsive. At least the touch pressure is way too high and the middle mouse button does not work at all. It also seems like the left and right mouse buttons do not always work.

Reverting to libinput version 1.11.3 fixes everything.

I'm not sure if this is a configuration problem or some sort of change/bug within libinput itself.
This task depends upon

Closed by  Andreas Radke (AndyRTR)
Tuesday, 18 September 2018, 05:06 GMT
Reason for closing:  Fixed
Additional comments about closing:  1.12.0-2
Comment by Andreas Radke (AndyRTR) - Sunday, 16 September 2018, 08:58 GMT
Please report this upstream.
Comment by Chris (ozz) - Sunday, 16 September 2018, 11:07 GMT Comment by Paul Bredbury (brebs) - Sunday, 16 September 2018, 11:21 GMT
I've created - the touchpad pressure can be tweaked.
Comment by Chris (ozz) - Sunday, 16 September 2018, 11:49 GMT
I had tried that change to /etc/udev/hwdb.d/99-touchpad-pressure.hwdb but it does not work. The range is not picked up and the pressure sensitivity stays the same.

Also, this won't fix the middle mouse button (does not work at all) or the (seemingly) broken LMB/RMB (misses clicks).
Comment by Paul Bredbury (brebs) - Sunday, 16 September 2018, 13:46 GMT
This helps the sensitivity:

$ cat /etc/libinput/local-overrides.quirks
[Touchpad pressure override]
MatchName=Elan Touchpad

Testing in xorg:

$ grep "Elan Touchpad.*dev.*event" ~/.local/share/xorg/Xorg.0.log
[ 18277.721] (II) config/udev: Adding input device Elan Touchpad (/dev/input/event6)

$ libinput quirks list /dev/input/event6

There are other quirk examples in /usr/share/libinput/, e.g. ModelChromebook=1 in /usr/share/libinput/50-system-google.quirks
Comment by Paul Bredbury (brebs) - Sunday, 16 September 2018, 13:56 GMT
To demystify that dmi string:

# cat /sys/class/dmi/id/modalias

So I suppose a better matching line is:

Comment by Paul Bredbury (brebs) - Monday, 17 September 2018, 09:03 GMT
With the below, "right button" is a two-finger tap, and "middle button" is a three-finger tap:

$ cat /etc/libinput/local-overrides.quirks
[Asus C302]
MatchName=Elan Touchpad
Comment by Chris (ozz) - Monday, 17 September 2018, 13:32 GMT
The last one (/etc/libinput/local-overrides.quirks) does fix the sensitivity.

The two and three finger tap work but the right and middle mouse button clicks still do not work. I believe there is only one hardware button but in the old version of libinput it would emulate the middle and right button based on finger position when pressing the hardware button. That's not working in 1.12.0.
Comment by Chris (ozz) - Monday, 17 September 2018, 22:12 GMT