archlinux recently switched to libinput as the default input driver. Since then the trackpoint on my Dell Latitude E5470 is barely usable. It is much too fast and detailed pointing isn't possible.

xinput lists the following properties for the trackpoint:

Device 'AlpsPS/2 ALPS DualPoint Stick':
    Device Enabled (139):   1
    Coordinate Transformation Matrix (141): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Accel Speed (274): -1.000000
    libinput Accel Speed Default (275): 0.000000
    libinput Accel Profiles Available (276):    1, 1
    libinput Accel Profile Enabled (277):   1, 0
    libinput Accel Profile Enabled Default (278):   1, 0
    libinput Natural Scrolling Enabled (279):   0
    libinput Natural Scrolling Enabled Default (280):   0
    libinput Send Events Modes Available (259): 1, 0
    libinput Send Events Mode Enabled (260):    0, 0
    libinput Send Events Mode Enabled Default (261):    0, 0
    libinput Left Handed Enabled (281): 0
    libinput Left Handed Enabled Default (282): 0
    libinput Scroll Methods Available (283):    0, 0, 1
    libinput Scroll Method Enabled (284):   0, 0, 1
    libinput Scroll Method Enabled Default (285):   0, 0, 1
    libinput Button Scrolling Button (286): 2
    libinput Button Scrolling Button Default (287): 2
    libinput Middle Emulation Enabled (288):    0
    libinput Middle Emulation Enabled Default (289):    0
    Device Node (262):  "/dev/input/event13"
    Device Product ID (263):    2, 8
    libinput Drag Lock Buttons (290):   <no items>
    libinput Horizontal Scroll Enabled (291):   1

The only knob to change that I found was Accel Speed (274), which I lowered to prevent the pointer from teleporting. But I actually want acceleration. Otherwise detailed pointing isn't possible as I noticed it.

Is there any way to decrease the base speed of the trackpoint?


Pointer speed is based on the device's dimensions and DPI resolution, which aren't always reported correctly. systemd-udev comes with a hwdb database of corrections for this (installed to /usr/lib/udev/hwdb.d/60-evdev.hwdb).

See the previous link, as well as the commit log, for examples on adding your own configuration. (The hwdb needs to be compiled with systemd-hwdb update and re-applied using... uh, either a reboot or some incantation involving udevadm trigger …, I think.)

Here's a similar adjustment for Dell Latitude E6320:

Most hwdb commits have links to Bugzilla threads, read them for examples.

  • Do I have to change the system file with the hardware data base or can I add an additional file with the update just for my device? – languitar Mar 2 '17 at 14:39
  • You should add an additional one, e.g. /etc/udev/hwdb.d/61-evdev-custom.hwdb. (I don't remember if it's first-match-wins or last-match-wins, but shouldn't be a problem in your case.) – grawity Mar 2 '17 at 14:40
  • Thanks. Is there any chance to get the current DPI value as a reference for my own experiments? – languitar Mar 2 '17 at 14:49
  • 1
    Ok, the interesting variables are POINTINGSTICK_CONST_ACCEL and POINTINTGSTICK_SENSITIVITY. Still I cannot find anything that feels as good as before with evdev :/ – languitar Mar 2 '17 at 15:27
  • 1
    But unfortunately I still can't get anything usable. Either the stick is too slow for distances, or it is impossible to make small movements. – languitar Mar 3 '17 at 9:29

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.