I have an annoying problem with my Elantech touchpad for at least a half a year now. Most of the time it randomly loses sync and got recognized as PS/2 Elantech Touchpad or BYD Touchpad. It varies from update to update but in essence these errors persist in dmesg
:
psmouse serio1: Failed to enable mouse on isa0060/serio1
psmouse serio1: elantech: synaptics_send_cmd query 0x01 failed.
psmouse serio1: Failed to enable mouse on isa0060/serio1
input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input19
In occasions when the touchpad got detected correctly it still works very bad, lucks multi-touch, tapping, two-finger scrolling and has some kind of calibration problems (only center of the touchpad is responsive while other zones ignore any input). dmesg
for this scenario looks like this:
psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x595f03)
psmouse serio1: elantech: Synaptics capabilities query result 0x10, 0x15, 0x0e.
psmouse serio1: elantech: Elan sample query result 04, 02, 86
input: ETPS/2 Elantech Touchpad as /devices/platform/i8042/serio1/input/input2
During system uptime it randomly starts to react randomly on my input clicking and moving in random direction.
I'm using Arch Linux now but the problem was also present on Ubuntu 16.04 and 14.04.
From Arch Linux Wiki page there is a note for Lenovo Y700 that in order to make touchpad working pata_legacy
module should be completely blacklisted so I added this to my kernel bootloader configuration:
options: ... modprobe.blacklist=pata_legacy ...
lsmod
doesn't show pata_legacy
loaded so blacklisting works. But it doesn't help in any way as the issue with touchpad persists.
I'm using libinput
and have not changed my configuration for a while now (and it works flawlessly in that time frames when touchpad feels OK):
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
Option "Tapping" "True"
Option "DisableWhileTyping" "True"
Option "NaturalScrolling" "True"
Option "MiddleEmulation" "True"
EndSection
I believe that the problem is connected with a kernel somehow but I'm not into low-level things so I can't get it working by myself.
Any help, documentation references, debugging tips etc. are strongly welcomed as I don't mind fixing it myself but I have no idea where to start (and where to look).
$ uname -r
4.10.13-1-ARCH