Introduction

A touchpad, and clickpad is a built-in input device for laptops that is used as a computer mouse. Synaptics is a driver for these.

Default clickpad gestures

The default gestures are:

  • Single finger press on the top 80% of the clickpad surface = primary click
  • Two finger press on the top 80% of the clickpad surface = secondary click
  • Two finger movement vertically = scroll vertically
  • Two finger movement horizontally = scroll horizontally

When clicking the bottom 20% clickpad buttons, one would want to use two fingers to maximize the accuracy of the click.

Basic Configuration with a Graphical Interface

Ubuntu provides basic configuration of your touchpad options in System > Preferences > Mouse, under the Touchpad tab.

Try the touchpad after unchecking the Enable mouse clicks with touchpad check box.

Check operation after Enable horizontal scrolling is checked. This may not have been the default setting.

Disabling Touchpad while Typing

  • Go to System > Preferences > Mouse > Touchpad and uncheck 'Disable touchpad while typing' and 'Enable mouse clicks with touchpad'. (This method is not available under Ubuntu 14.04.)

Completely disabling Touchpad

Some systems don't have the option to permanently disable the touchpad via BIOS or it's located in an external keyboard. To fully disable you can do the following:

  • Determine the device id (the device name should be something with touchpad or glidepoint)

xinput list
  • Disable it (e.g. here the device id is 15)

xinput set-prop 15 "Device Enabled" 0

You may run the command during session startup

Adjust Touchpad Sensitivity

Determine device number (see above)

xinput list

Open a separate terminal to watch emitted events:

Replace [device number] with the number of your touchpad from 'xinput list'. It will probably be one of the devices under "Virtual core pointer".

This step is not mandatory but it can help to track problems:

xinput --test [device number]

If text flies by as you move your mouse pointer using the touchpad, you know that you got the correct device number.

Open another terminal to see current settings: (Again this step can be omitted but is helpful to see available options. Watch for "Synaptics Finger". It will change as soon as you apply the next command.)

xinput --watch-props [device number]

Set sensitivity:

xinput --set-prop [device number] "Synaptics Finger" 50 80 257

The terminal running 'xinput --watch-props' should now display

Property 'Synaptics Finger' changed.
        Synaptics Finger (267): 50, 80, 257

The higher you set the numbers the more force is needed to make an event fire. And the less sensitive the touchpad get.

Troubleshooting

Determine whether a touchpad has been detected

To check if a touchpad has been detected open a terminal and check the input device list given by this command:

xinput list

If one of the lines mentions a touchpad or glidepoint (perhaps also "Synaptics" or "ALPS"), your touchpad has been detected.

If one of the lines mentions an "ADB mouse", then your touchpad is old. Use the trackpad command line tool to configure it. Here's an example to switch on tapping and dragging:

sudo trackpad show
sudo trackpad tap
sudo trackpad drag

Enabling SHMConfig in order to get synclient debug output

Online, the most commonly found procedure for doing this involves using HAL. However, since HAL hasn't been present in Ubuntu since 10.04, you will have to do it the other way -- by editing xorg.conf.

sudo gedit /etc/X11/xorg.conf 

Paste this into the document:

Section "InputClass"
        Identifier "enable synaptics SHMConfig"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Option "SHMConfig" "on"
EndSection

If it's not empty, put it at the end. Save, close the file and reboot.

Now you should be able to see what kind of input your touchpad detects by running

synclient -m 100 

The synclient manpage will explain what the numbers you see onscreen mean.

Touchpad not working after login

This usually happens when you disable your touchpad and then suspend your computer. To fix this just run this command:

gconftool-2 --set --type boolean /desktop/gnome/peripherals/touchpad/touchpad_enabled true

If nothing else works, please see the official Ubuntu touchpad debugging article.

Control touchpad features using synclient

synclient is a commandline utility to query and modify Synaptics driver options. This would allow one to adjust touchpad features that may not be exposed via the GUI. One would adjust parameters via a terminal:

synclient PARAMETER=#

where PARAMETER is as listed below, and # is a number. While the formal definition of each parameter may be found in the synaptics manpage, here is a more user friendly description of each of the parameters:

LeftEdge

RightEdge

TopEdge

BottomEdge

FingerLow

FingerHigh

MaxTapTime

MaxTapMove

MaxDoubleTapTime

SingleTapTimeout

ClickTime

EmulateMidButtonTime

EmulateTwoFingerMinZ

EmulateTwoFingerMinW

VertScrollDelta - Controls the speed and direction of vertical scrolling. The fastest natural direction scroll speed is 1. Larger positive values decrease the scroll speed. The fastest reverse direction scroll speed is -1, with larger negative values decreasing the scroll speed.

HorizScrollDelta - Controls the speed and direction of horizontal scrolling. The fastest natural direction scroll speed is 1. Larger positive values decrease the scroll speed. The fastest reverse direction scroll speed is -1, with larger negative values decrease the scroll speed.

VertEdgeScroll - Enables=1/Disables=0 vertical scrolling when dragging across the right edge of the touchpad. 

HorizEdgeScroll - Enables=1/Disables=0 vertical scrolling when dragging across the right edge of the touchpad.

CornerCoasting

VertTwoFingerScroll - Enables=1/Disables=0 vertical scrolling when using two fingers anywhere on the touchpad.

HorizTwoFingerScroll - Enables=1/Disables=0 horizontal scrolling when using two fingers anywhere on the touchpad.

MinSpeed - Adjusts the minimum speed of your touchpad cursor. Lowest is 0.

MaxSpeed - Adjusts the maximum speed of your touchpad cursor. Lowest is 0.

AccelFactor - Adjust the rate of speed increment at which the touchpad cursor increases from MinSpeed to MaxSpeed. Lowest is 0.

TouchpadOff - Enables=1/Disables=0 the touchpad entirely.

LockedDrags

LockedDragTimeout

RTCornerButton - Disables=0 click when one taps the right top corner of the touchpad.

RBCornerButton - Disables=0 click when one taps the right bottom corner of the touchpad.

LTCornerButton - Disables=0 click when one taps the left top corner of the touchpad.

LBCornerButton - Disables=0 click when one taps the left bottom corner of the touchpad.

TapButton1

TapButton2

TapButton3

ClickFinger1

ClickFinger2

ClickFinger3

CircularScrolling

CircScrollDelta

CircScrollTrigger

PalmDetect

PalmMinWidth

PalmMinZ

CoastingSpeed

CoastingFriction

PressureMotionMinZ

PressureMotionMaxZ

PressureMotionMinFactor

PressureMotionMaxFactor

ResolutionDetect

GrabEventDevice

TapAndDragGesture

AreaLeftEdge

AreaRightEdge

AreaTopEdge

AreaBottomEdge

HorizHysteresis

VertHysteresis

ClickPad

See also

Known Issues


CategoryXwindowSystem

SynapticsTouchpad (last edited 2014-07-27 19:45:42 by c-67-173-10-68)