tomsom / yoga-linux

Run Linux on the Lenovo Yoga 7 14 (14ARB7) with AMD Ryzen 6800U (Rembrand).
https://github.com/tomsom/yoga-linux/wiki
56 stars 2 forks source link

Synaptics SYNA2BA6 touchpad jumping #28

Closed stuarthayhurst closed 1 year ago

stuarthayhurst commented 1 year ago

The touchpad in my laptop (SYNA2BA6) has issues where it jumps and jitters in some areas. I can't be sure if this is a hardware issue, or a problem with it not using the Synaptics drivers. It's also an i2c-hid device, so perhaps it's no supposed to use the Synaptics drivers, and stick to the generic HID drivers, like it does on Windows?

Posting here to see if other people have the same issue, or if I'll be sending my laptop back for repair :/

If your trackpad registers as an MSFT0001, you're probably on an older BIOS. If you want to check the trackpad in your laptop, use sudo libinput list-devices, if you're on Wayland with libinput-bin installed. Otherwise, it'll be somewhere in journalctl, grep for MSFT or SYNA. If you have a trackpad from another brand, you might have to do some more digging.

Okazakee commented 1 year ago

The touchpad in my laptop (SYNA2BA6) has issues where it jumps and jitters in some areas. I can't be sure if this is a hardware issue, or a problem with it not using the Synaptics drivers. It's also an i2c-hid device, so perhaps it's no supposed to use the Synaptics drivers, and stick to the generic HID drivers, like it does on Windows?

Posting here to see if other people have the same issue, or if I'll be sending my laptop back for repair :/

If your trackpad registers as an MSFT0001, you're probably on an older BIOS. If you want to check the trackpad in your laptop, use sudo libinput list-devices, if you're on Wayland with libinput-bin installed. Otherwise, it'll be somewhere in journalctl, grep for MSFT or SYNA. If you have a trackpad from another brand, you might have to do some more digging.

Yo I had a similar issue with a wireless usb mouse, not touchpad, it worked as normal for some minutes, then it started go crazy randomly on the screen, as if sensibility of the sensor was cranked up to infinity

soupglasses commented 1 year ago

I currently have the MSFT0001 device, using BIOS version K5CN35WW which is a few versions out of date by now.

Myaats commented 1 year ago

The touchpad on my device lists as ELAN06FA by libinput on my device, I guess they may be sourcing from multiple manufactures. That said I have not noticed any jitter issues with my trackpad. My BIOS version is K5CN37WW.

stuarthayhurst commented 1 year ago

I'm pretty sure I've just got a faulty touchpad at this point, it happens randomly and more frequently on certain surfaces? It also seems to slowly be getting worse, so I'll probably send it for repair soon then.

Thanks for the replies :)

soupglasses commented 1 year ago

I would still keep this open, ill try to update here soon and see what i get. Also i am curious what you mean by "Synaptics drivers". I am just running the wayland libinput ones. I dont think Synaptics as a special drivers should exist anymore unless you are on X11.

soupglasses commented 1 year ago

Also if you are able to, can you test it under Windows? If its faulty it should also show up under windows, no?

stuarthayhurst commented 1 year ago

I mentioned Synaptics drivers, as they have a few kernel drivers, for I2C, USB and SMBus. Some touchpads seem to support some sort of noise reduction with the SMBus driver, so I wondered if perhaps it needed to register with this to use the noise reduction. I tried a test build of the kernel adding the touchpad's ID to the supported list, but the driver didn't seem to care, and I haven't done any further troubleshooting. Doesn't help that Synaptics don't really publish datasheets publicly, so finding out what this touchpad actually supports isn't easy :/

I should be able to reproduce this under Windows, but it can take hours of constant use to appear. The touchpad feels very dulled in Windows with the weird acceleration profiles, so I'm not convinced the small rapid movements would show up through this either. I don't use Windows at all in my workflow, so I can try reproduce it at some point, but this might not be for a while.

stuarthayhurst commented 1 year ago

Well I tried patched versions of psmouse and synaptics_i2c, to try and get the touchpad to register with either of them. After prodding synaptics_i2c enough, I got it to attempt to use the device, but it fails on the Synaptics-specific calls to modify its registers, so I'd say it's not supposed to be used. The psmouse module showed absolutely no interest in an i2c device, which is fair enough.

Unless Synaptics buried some special noise filtering in the hardware and haven't documented a way to enable it, I think I'm out of luck :/ I'll try reproducing the jumping in Windows next time I boot it.

stuarthayhurst commented 1 year ago

Got my laptop back from the repair centre (for the second time :/), and they replaced the touchpad and case assembly.

All sorted now, so I guess it was a hardware issue