Trackpoint speed completely off (in different direction on different thinkpads)
Summary
On my personal Thinkpad T480 (running Arch Linux) the trackpoint by default is extremely slow. On my work Thinkpad P15 Gen1 (running Ubuntu 20.04 LTS) it instead silly fast when using libinput.
I cannot find a way to change the speed, only the acceleration. Acceleration is not the issue here. Base speed is. Setting min or max acceleration using xinput set-prop <id> "libinput Accel Speed" 0.0/1.0
doesn't really help at all.
How do I change the speed to resolve this issue?
According to xinput on the T480 (trackpoint is really slow) it is a "TPPS/2 IBM TrackPoint". On the P15 it is instead a "TPPS/2 Elan TrackPoint".
Steps to reproduce
- Get hold of a Thinkpad T480 or Thinkpad P15 Gen1.
- Notice silly speed (slow or fast) of trackpoint by default.
Note! The T480 has a 1080p screen at 14", while the P15 Gen1 has a 4k screen at 15" but I'm driving at 1080p so the DPI roughly match my external monitor. I don't know if this would affect any sort of scaling calculation.
I have no idea how to reproduce without access to those specific machines.
Required information
In the two attached files I move the trackpoint diagonally across the screen. The recording are separate in time for record and debug-events, I hope that is not an issue?
- libinput version: T480: 1.19.3-2 (Arch Linux package)
- hardware information:
-
libinput record
output: t480-recording.yml -
libinput debug-events --verbose
output: t480-debug-events.txt
For logs of the the P15 I first need to find a way to get it on the latest version temporarily. While I do have local root, as it is a work laptop I'm somewhat limited in what I can do and I'm stuck with Ubuntu LTS in that case.
Additional info:
$ udevadm info /dev/input/event19
P: /devices/pci0000:00/0000:00:1f.4/i2c-7/7-002c/rmi4-00/rmi4-00.fn03/serio2/input/input26/event19
N: input/event19
L: 0
S: input/by-path/pci-0000:00:1f.4-serio-2-event-mouse
E: DEVPATH=/devices/pci0000:00/0000:00:1f.4/i2c-7/7-002c/rmi4-00/rmi4-00.fn03/serio2/input/input26/event19
E: DEVNAME=/dev/input/event19
E: MAJOR=13
E: MINOR=83
E: SUBSYSTEM=input
E: USEC_INITIALIZED=11019885
E: ID_INPUT_POINTINGSTICK=1
E: ID_INPUT=1
E: ID_INPUT_MOUSE=1
E: ID_BUS=i8042
E: ID_SERIAL=noserial
E: ID_PATH=pci-0000:00:1f.4-serio-2
E: ID_PATH_TAG=pci-0000_00_1f_4-serio-2
E: LIBINPUT_DEVICE_GROUP=11/2/a:rmi4-00
E: DEVLINKS=/dev/input/by-path/pci-0000:00:1f.4-serio-2-event-mouse
$ libinput measure trackpoint-range
libinput: trackpoint-range is not installed
(I couldn't find an obvious package name for this, like libinput-<something>
, any suggestions?)
$ cat /sys/class/input/event19/device/device/sensitivity
128