Created attachment 131253 [details]
using GNOME3 on Debian 9, the trackpoint on my keyboard (IBM/Lenovo UltraNav SK-8845) is very slow since I upgraded from Debian 8. The GNOME control panel only lets me change the speed of the mouse pointer: not the speed of the trackpoint nor the one of the touchpad. Is that a problem on libinput's side, or is that the expected behaviour from the GNOME3 control panel ?
I also tried to add the following file to configure udev:
# cat /etc/udev/hwdb.d/99-local-trackpoint.hwdb
And to reload with `udevadm hwdb --update` and `udevadm trigger /dev/input/event*`, but the speed did not change.
Here is more information about my hardware.
# lsusb | grep -i track
Bus 001 Device 009: ID 06cb:0009 Synaptics, Inc. Composite TouchPad and TrackPoint
# find /sys/ -name *modalias | xargs grep -i 06cb
[edited for brevity]
Device: Synaptics Inc. Composite TouchPad / TrackPoint
Seat: seat0, default
Tap drag lock: disabled
Middle emulation: n/a
Scroll methods: *two-finger edge
Click methods: none
Accel profiles: none
Device: Synaptics Inc. Composite TouchPad / TrackPoint (Stick)
Seat: seat0, default
Tap drag lock: n/a
Middle emulation: disabled
Scroll methods: *button
Click methods: none
Accel profiles: flat *adaptive
# udevadm info /sys/class/input/event13
E: DEVLINKS=/dev/input/by-path/pci-0000:00:1a.7-usb-0:1.3.4:1.0-event-mouse /dev/input/by-id/usb-Synaptics_Inc._Composite_TouchPad___TrackPoint-event-mouse
root@anx191:/etc/udev# udevadm info /sys/class/input/event14
E: DEVLINKS=/dev/input/by-path/pci-0000:00:1a.7-usb-0:1.3.4:1.1-event-mouse /dev/input/by-id/usb-Synaptics_Inc._Composite_TouchPad___TrackPoint-if01-event-mouse
I also attached the contents of /var/log/Xorg.0.log
An issue is also opened on the Debian BTS: (https://bugs.debian.org/861631)
Thanks for your help !
Charles Plessy, Tsurmi, Kanagawa, Japan.
Please attach three separate recordings, each about 2-3 seconds long, with evemu-record:
* slow pointer motion with light pressure
* medium pointer motion with 'normal' pressure
* fast pointer motion with strong pressure
Yes, I know these are subjective, focus more on how the pointer *should* behave than how it currently does when recording.
Created attachment 131267 [details]
Capture with "sudo evemu-record /dev/input/event14 light_pressure.txt"
Created attachment 131268 [details]
Capture with "sudo evemu-record /dev/input/event14 normal_pressure.txt"
Created attachment 131269 [details]
Capture with "sudo evemu-record /dev/input/event14 strong_pressure.txt"
so, quick analysis: if I take the last one with the strong pressure and apply various different const accel settings (hardcoded, because why not ;) I get deltas that differ vastly. compare this event here which is the same event in the sequence:
1.0: event19 POINTER_MOTION +2.34s -62.00/ 64.00
2.0: event19 POINTER_MOTION +2.26s -123.74/127.73
4.0: event19 POINTER_MOTION +3.93s -164.75/170.07
The timestamps change because it's the time between starting the tool and starting the evemu-play, so it's a manual thing. You can ignore them, they are the same event.
At const accel 4, the delta is ca 170 units versus 64 units at const accel 1. This suggests that everything is working just fine, at least at high speeds.
What is missing in your comment #0 is that POINTINGSTICK_CONST_ACCEL=1.5 is never actually applied to the udev device. It doesn't show up in the output, so something isn't handled correctly. I don't immediately see why not, but your hwdb entry doesn't take effect so libinput doesn't see it. Please fix this first.
Thanks for the link. Now with the command `sudo udevadm trigger /sys/class/input/event14` I could make the udev configuration be applied to the device. My mistake yesterday was that I used the command `udevadm trigger /dev/input/event*` instead.
Now, with CONST_ACCEL=1.0 and SENSITIVITY=100, it takes me 4 to 5 seconds to travel back and forth from lateral sides of the screen, 2 to 3 s with CONST_ACCEL=2.0 and SENSITIVITY=200, and a bit less than 2 s with CONST_ACCEL=8.0 and SENSITIVITY=800, which practically solves my problem.
I am happy to provide more test data to help the other users of the same trackpoint to get comfortable defaults settings.
SENSITIVITY only goes to 255 and (iirc) it's 0xff masked, so setting it to 800 does not have the effect you'd expect. 800 == 32 when masked like this, so your best combination is likely going to be 200/2.5 or 255/2.5 or something like that.
Indeed, now I am using 200/3.5 (although the difference with 200/2.5 or 255/2.5 is very subtle).
Is there anything more I can do ?
for the archives: https://github.com/systemd/systemd/pull/5927
submit the snippet you're using now to systemd for merging into the hwdb please, thanks. Const accel of 3.5 still seems a bit high but I'll handle this in another bug (will link to here)
fwiw, see bug 91369 for trackpoint acceleration issues of this kind
Issue opened on GitHub: https://github.com/systemd/systemd/issues/5952
not sure if this one is fixed now or not, but I'm marking it as dupe of 91369 anyway because stuff is finally happening there. Please have a look at the most recent comment(s) please, thanks
*** This bug has been marked as a duplicate of bug 91369 ***