Jumping cursor on a Surface Pro 3 touchpad
Summary
Hello everyone,
My touchpad on my surface pro 3 does some jumps from time to time. It occurs when I move the fingers a bit slowly on a kinda rectilinear trajectory. I cannot point to precise elements on my screen comfortably.
Steps to reproduce
Simply move the cursor at a speed of around 1 cm.s-1 in a straight line.
libinput version you encountered the bug on
> libinput --version
1.13.4
Hardware information:
Surface pro 4 type cover, without fingerprint sensor.
Name: Microsoft Surface Type Cover Touchpad
ID: bus 0x3 vendor 0x45e product 0x7e8 version 0x111
modalias content :
dmi:bvnAmericanMegatrendsInc.:bvr3.11.2150:bd04/26/2017:svnMicrosoftCorporation:pnSurfacePro3:pvr1:rvnMicrosoftCorporation:rnSurfacePro3:rvr1:cvnMicrosoftCorporation:ct9:cvr1:
udev :
P: /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input51/event3
N: input/event3
L: 0
S: input/by-path/pci-0000:00:14.0-usb-0:3:1.0-event-mouse
S: input/by-id/usb-Microsoft_Surface_Type_Cover-event-mouse
E: DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input51/event3
E: DEVNAME=/dev/input/event3
E: MAJOR=13
E: MINOR=67
E: SUBSYSTEM=input
E: USEC_INITIALIZED=27688103503
E: ID_INPUT=1
E: ID_INPUT_TOUCHPAD=1
E: ID_INPUT_WIDTH_MM=97
E: ID_INPUT_HEIGHT_MM=49
E: ID_VENDOR=Microsoft
E: ID_VENDOR_ENC=Microsoft
E: ID_VENDOR_ID=045e
E: ID_MODEL=Surface_Type_Cover
E: ID_MODEL_ENC=Surface\x20Type\x20Cover
E: ID_MODEL_ID=07e8
E: ID_REVISION=0207
E: ID_SERIAL=Microsoft_Surface_Type_Cover
E: ID_TYPE=hid
E: ID_BUS=usb
E: ID_USB_INTERFACES=:030000:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=usbhid
E: ID_PATH=pci-0000:00:14.0-usb-0:3:1.0
E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_3_1_0
E: ID_INPUT_TOUCHPAD_INTEGRATION=internal
E: LIBINPUT_DEVICE_GROUP=3/45e/7e8:usb-0000:00:14.0-3
E: DEVLINKS=/dev/input/by-path/pci-0000:00:14.0-usb-0:3:1.0-event-mouse /dev/input/by-id/usb-Microsoft_Surface_Type_Cover-event-mouse
There's no button on my touchpad. You can click on its entire surface.
touchpad-edge-detector :
> touchpad-edge-detector 97x49 /dev/input/event3
Touchpad Microsoft Surface Type Cover Touchpad on /dev/input/event3
Move one finger around the touchpad to detect the actual edges
Kernel says: x [0..1956], y [0..997]
Touchpad sends: x [0..1956], y [0..997] \^C/
Touchpad size as listed by the kernel: 97x49mm
User-specified touchpad size: 97x49mm
Calculated ranges: 1956/997
Suggested udev rule:
# <Laptop model description goes here>
evdev:input:b0003v045Ep07E8*
EVDEV_ABS_00=0:1956:20
EVDEV_ABS_01=0:997:20
EVDEV_ABS_35=0:1956:20
EVDEV_ABS_36=0:997:20
I use tap-to-click and clickfinger.
Other log output:
From this file : libinput-record.txt
[edited by @whot: removed duplicate output, easier in a separate file anyway, only non-default is tapping is enabled]