49

My touchpad is way too sensitive. While writing, the cursor jumps suddenly to the place the mouse cursor is sitting. I am not even touching the touchpad! I had the same problem with 12.04 and recently did an upgrade to 14.04, which didn't solve the problem.

In the mouse-and-touchpad settings, there are only settings for a mouse, not a touchpad. I have tried this:

sudo apt-get install gsynaptics

gpointing-device-settings

which didn't help.

Then I found this which might describe my problem.

But I get stuck halfway through. When putting this in the terminal:

(Add the patch to the psmouse module:)

sudo dkms add -m psmouse -v elantech-v6

I get this:

Error! Could not find module source directory. Directory: /usr/src/psmouse-elantech-v6 does not exist.

Can anyone help?

7 Answers 7

56
xinput list

will give your device name (look for TouchPad)

xinput list-props "Touchpad Name"

This will give the available properties of your touchpad. You will probably find that the property is still "Synaptics ..." based, which means that you would type something like:

xinput set-prop "Touchpad Name" "Synaptics Finger" 50 90 255

I use the following properties (replace Touchpad Name with yours from the xinput list command) for mine to reduce the overall sensitivity:

xinput set-prop "Touchpad Name" "Synaptics Noise Cancellation" 20 20
xinput set-prop "Touchpad Name" "Synaptics Finger" 50 90 255

The above 2 commands seem to do the trick for me. Before them my touchpad was basically unusable.

10
  • 1
    I had to set "Synaptics Finger" to 100 110 255 before it made much difference on my machine. Also, I recommend keeping "Synaptics Noise Cancellation" low like 10 10 as it doesn't help solve the oversensitivity problem and makes the touchpad seem laggy when set higher.
    – Planky
    Nov 8, 2015 at 4:01
  • I had to tweak mind, but used different params for my lenovo yoga 2. Thank you for the answer! Jan 2, 2016 at 14:24
  • @Matthew Fisher : Mar 19, 2016 at 17:47
  • I checked the name of my touchpad and it is SynPS/2 Synaptics . Then I tried the "list-props" comand and found: herman@homepc:~/Documents$ xinput list-props Synaptics unable to find device Synaptics Any help here? Thanks. Mar 19, 2016 at 17:57
  • On MSI GT72 6QD best is xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Finger" 50 50 255
    – Zibri
    Nov 24, 2016 at 11:09
12

How about this manual which has a list of commands you can supposedly use. The arguments "50 90 225" as given in the other answers are explained in these docs to represent values for "low, high, and press." I don't know what my original values were, but ..."Synaptics Finger" 5 16 225 has made my system tolerable.

3
  • Those settings are a great improvement on my Lenovo T450S
    – Bert
    Jan 22, 2017 at 0:55
  • 1
    Don't know why but this seems to have made accidental dragging much easier. Any idea on how to relieve that?
    – xji
    Jan 26, 2018 at 8:19
  • @xji same problem here. Would love to know how to stop accidental palm touches repositioning my cursor. Nov 1, 2019 at 11:03
9

I had a similar problem with Toshiba C-50 This solved my problem:

xinput list
xinput list-props "SynPS/2 Synaptics TouchPad" | grep -i finger
xinput set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Finger" 50 90 255

Here, SynPS/2 Synaptics TouchPad is the name of your touchpad which get listed when you type in xinput list in terminal.Replace SynPS/2 Synaptics TouchPad by Your Device Name.

Source

6
  • Sorry, I need some more help. When I type in the list-props command, I get this: Device 'FSPPS/2 Sentelic FingerSensingPad'. What do I do afterwards?
    – user293817
    Jun 15, 2014 at 16:35
  • I mean, what do I type in instead of "synaptics finger"? I typed in xinput set-prop "FSPPS/2 Sentelic FingerSensingPad" "Sentelic Finger" 50 90 255 and got this: property 'Sentelic Finger' doesn't exist, you need to specify its type and format.
    – user293817
    Jun 15, 2014 at 16:58
  • You shoudld Type xinput list-props "SPPS/2 Sentelic FingerSensingPad'" | grep -i finger Then Type xinput set-prop "'FSPPS/2 Sentelic FingerSensingPad" " Sentelic Finger" 50 90 255
    – yask
    Jun 15, 2014 at 18:20
  • that's exactly what I did. And what I got out was what I copied in above: "property 'Sentelic Finger' doesn't exist, you need to specify its type and format"
    – user293817
    Jun 15, 2014 at 22:32
  • 4
    Could you tell what the numbers mean 50 90 255? I have by default like this Synaptics Finger (267): 25, 30, 0 Under Win7 touchpad is less sensitive and just the way it should be.
    – Hrvoje T
    Jan 3, 2016 at 16:58
5

There is a command line tool called synclient. If you write man synclient in console it says:

This program lets you change your Synaptics TouchPad driver for XOrg/XFree86 server parameters while X is running.

There is also a GUI for the tool, called gpointing-device-settings, but it doesn't offer nearly as many options as the command line tool. The only caveat to using the command line tool is that there are so many options.

You can read this article by Jack Wallen for more details.

0
5

The general solution to this problem is not to dial down the touchpad sensitivity, but to enable palm detection so that resting your palm while typing doesn't trigger a click. For example, I have libinput installed and put the following in /etc/X11/xorg.conf.d/90-libinput.conf:

Section "InputClass"                                                                                                                        
        Identifier "libinput touchpad catchall"                                                                                             
        MatchIsTouchpad "on"                                                                                                                
        MatchDevicePath "/dev/input/event*"                                                                                                 
        Driver "libinput"                                                                                                                   
        Option "Tapping" "True"                                                                                                             
        Option "PalmDetection" "True"                                                                                                       
        Option "TappingDragLock" "True"                                                                                                     
EndSection                                                                                                                                  

For more information, check out these other relevant posts:

1
  • 3
    In Ubuntu 18.04 LTS Bionic Beaver, the directory is /usr/share/X11/xorg.conf.d, not /etc/X11/xorg.conf.d. Jun 12, 2018 at 9:11
0

I had this issue on many variants of linux. Currently I am on Elementary OS Loki. I had automated the fix of this problem by creating following shell script at /etc/X11/Xsession.d/56touchpadfix:

export `xinput list | grep -i touchpad | awk '{ print $6 }'`
xinput --set-prop "$id" "Synaptics Noise Cancellation" 20 20
xinput --set-prop "$id" "Synaptics Finger" 35 45 250
xinput --set-prop "$id" "Synaptics Scrolling Distance" 180 180
true

You need to tune values for your hardware. Mine work for Sony SVS series laptop.

0

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!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .