Trackpad issues for Lenovo Yoga 9i
The pressure sensitivity settings on the Lenovo Yoga 9i laptop seem to be off.
The device is reported as SYNA2B31:00 06CB:CE37.
Udevadmin info:
P: /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-SYNA2B31:00/0018:06CB:CE37.0001/input/input10/event5
N: input/event5
L: 0
S: input/by-path/pci-0000:00:15.1-platform-i2c_designware.1-event-mouse
E: DEVPATH=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-SYNA2B31:00/0018:06CB:CE37.0001/input/input10/event5
E: DEVNAME=/dev/input/event5
E: MAJOR=13
E: MINOR=69
E: SUBSYSTEM=input
E: USEC_INITIALIZED=17172936
E: ID_INPUT=1
E: ID_INPUT_TOUCHPAD=1
E: ID_INPUT_WIDTH_MM=102
E: ID_INPUT_HEIGHT_MM=63
E: ID_SERIAL=noserial
E: ID_PATH=pci-0000:00:15.1-platform-i2c_designware.1
E: ID_PATH_TAG=pci-0000_00_15_1-platform-i2c_designware_1
E: LIBINPUT_DEVICE_GROUP=18/6cb/ce37:i2c-SYNA2B31:00
E: DEVLINKS=/dev/input/by-path/pci-0000:00:15.1-platform-i2c_designware.1-event-mouse
Modalias:
dmi:bvnLENOVO:bvrEHCN33WW:bd09/24/2020:br1.33:efr1.33:svnLENOVO:pn82BG:pvrYoga914ITL5:rvnLENOVO:rnLNVNB161216:rvrSDK0J40697WIN:cvnLENOVO:ct31:cvrYoga914ITL5:
Physical size: 1050 x 65
sudo touchpad-edge-detector 1050x65 /dev/input/event5
Touchpad SYNA2B31:00 06CB:CE37 Touchpad on /dev/input/event5
Move one finger around the touchpad to detect the actual edges
Kernel says: x [0..1224], y [0..756]
Touchpad sends: x [0..1224], y [0..756] |
^C
Touchpad size as listed by the kernel: 102x63mm
User-specified touchpad size: 1050x65mm
Calculated ranges: 1224/756
Suggested udev rule:
# <Laptop model description goes here>
evdev:name:SYNA2B31:00 06CB:CE37 Touchpad:dmi:bvnLENOVO:bvrEHCN33WW:bd09/24/2020:br1.33:efr1.33:svnLENOVO:pn82BG:pvrYoga914ITL5:rvnLENOVO:rnLNVNB161216:rvrSDK0J40697WIN:cvnLENOVO:ct31:cvrYoga914ITL5:*
EVDEV_ABS_00=0:1224:1
EVDEV_ABS_01=0:756:12
EVDEV_ABS_35=0:1224:1
EVDEV_ABS_36=0:756:12
The device has a physical haptic actuator that activates on its own. Using pressure settings 75:35 makes the libinput touch test tool matches its behaviour, i.e. the test tool reports key events at the same time as the actuator fires.
Pressing with one finger triggered the palm column sporadically, even when setting palm pressure to 250.
I will attach some libinput traces as I make them.