If you have a Dell, there is a solution for this. This may also be applicable even if you do not have a Dell laptop, as long as you update certain steps. I have a Dell Inpsiron 13 7000 series, and the following solution worked perfectly for me.
These instructions come directly from Dell in this article Precision / XPS: Ubuntu General Touchpad/Mouse Issue Fix. The issue seems to be that Synaptics drivers override Dell's. You need to disable Synaptics.
The first portion did wonders for me. Here is the script that they suggest adding to sudo gedit /usr/share/X11/xorg.conf.d/51-synaptics-quirks.conf
. I do not recommend following the accepted answer's solutions as that route seems to create other problems.
# Disable generic Synaptics device, as we're using
# "DLL0704:01 06CB:76AE Touchpad"
# Having multiple touchpad devices running confuses syndaemon
Section "InputClass"
Identifier "SynPS/2 Synaptics TouchPad"
MatchProduct "SynPS/2 Synaptics TouchPad"
MatchIsTouchpad "on"
MatchOS "Linux"
MatchDevicePath "/dev/input/event*"
Option "Ignore" "on"
EndSection
For compatability comparison, I've a Dell Inspiron 13 7000 series with xinput list
jonathan@Dell:~$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB Receiver id=10 [slave pointer (2)]
⎜ ↳ Logitech USB Receiver id=11 [slave pointer (2)]
⎜ ↳ ELAN Touchscreen id=13 [slave pointer (2)]
⎜ ↳ DELL0741:00 06CB:7E7E Touchpad id=14 [slave pointer (2)]
...
Synaptics is not on that list because it has been disabled by the above script. Before adding this script, I suggest running xinput --test <id>"
(for me 14
). If you get output on a terminal, that means your device is working (your device is "on").
After rebooting, you will then need to install libinput
with the following command sudo apt-get install xserver-xorg-input-libinput libinput-tools
.
After libinput
installation, you'll need to update sudo gedit /usr/share/X11/xorg.conf.d/90-libinput.conf
per your preferrences. Here is mine for example
# Match on all types of devices but tablet devices and joysticks
Section "InputClass"
Identifier "libinput pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Option "Tapping" "True"
Option "TapingDrag" "True"
Option "DisableWhileTyping" "True"
Option "AccelProfile" "adaptive"
Option "NaturalScrolling" "True"
Option "AccelSpeed" "0.2"
Driver "libinput"
EndSection
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
And that's it, no more sensitive touchpad!