#title Synaptics Touchpad Configuration - Ubuntu 8.04 and earlier <> <> ||<>|| This page contains instructions for Ubuntu 8.04 and earlier. For an introduction or for Ubuntu 8.10 and later, please see [[SynapticsTouchpad|the new instructions]]. <> = Basic Configuration with a Graphical Interface = Ubuntu provides configuration of the most common touchpad options in '''System > Preferences > Mouse''', under the Touchpad tab. = Advanced Configuration with a Graphical Interface = This sections describes how to install a GUI configuration tool for your Synaptics touchpad which integrates into your desktop environment. Other methods of configuring the touchpad include using [[#synclient|synclient]] on the command line, or by adding [[#xconfig|options]] directly to the X server configuration file. <> == Ubuntu == * [[#shmconfig|Enable SHMConfig]]. * For a preference tool which integrates into the GNOME Desktop environment, install the '''gsynaptics''' package from the universe repository. For help with installing packages see InstallingSoftware. After installation, '''gsynaptics''' can be found under '''System > Preferences > Touchpad'''. <> == Kubuntu == * [[#shmconfig|Enable SHMConfig]]. * For a preference tool which integrates into the KDE desktop environment, install the '''ksynaptics''' package from the universe repository. For help with installing packages see InstallingSoftware. After installation, '''ksynaptics''' can be found in the '''KDE Control Center'''. <> == Xubuntu and others == * [[#shmconfig|Enable SHMConfig]]. * For users of Xfce or anything else besides GNOME or KDE, install the '''qsynaptics''' package from the universe repository. For help with installing packages see InstallingSoftware. <> = Disabling the Touchpad Temporarily While Typing = To avoid accidental mouse movement while typing, '''syndaemon''' can be used to monitor the keyboard activity and disable the touchpad for a period of time after the last keystroke. To use syndaemon, you will first need to [[#shmconfig|enable SHMConfig]]. The following commands should be typed in a [[UsingTheTerminal|terminal]]. The '''-d''' option causes '''syndaemon''' to run in the background, so the terminal can be closed after executing the command. {{{ syndaemon -d }}} The '''-t''' option causes '''syndaemon''' to only disable tapping and scrolling, not mouse movements: {{{ syndaemon -d -t }}} By default '''syndaemon''' disables the touchpad for 2 seconds after the last keyboard activity. To specify a different timeout, use the '''-i''' option. For example, a timeout of 1 second: {{{ syndaemon -d -i 1 }}} To make '''syndaemon''' start up each time you login, add the desired command to the list of Startup Programs in '''System > Preferences > Sessions'''. See AddingProgramToSessionStartup. <> = Enabling SHMConfig = In order for tools such as '''[[#synclient|synclient]]''', '''[[#syndaemon|syndaemon]]''', '''[[#gsynaptics|gsynaptics]]''', '''[[#ksynaptics|ksynaptics]]''', and '''[[#qsynaptics|qsynaptics]]''' to work, they need access to the synaptics touchpad driver's shared memory. This is done by enabling '''SHMConfig''' "on" in the X server Synaptics Touchpad configuration. With this enabled, these tools can modify the run-time configuration of the touchpad input driver without restarting the X server. /!\ Note the warning from the man page for synclient: {{{ WARNING: This is not secure if you are in an untrusted multiuser environment. All local users can change the parameters at any time. }}} If this is an issue for you, the touchpad can be configured without enabling SHMConfig by placing the desired options in [[#xconfig|the X server configuration file]] logging out and in again. In a [[UsingTheTerminal|terminal]] type: {{{ gksudo gedit /etc/X11/xorg.conf }}} Find the "Input``Device" section for the touchpad: {{{ Section "InputDevice" Identifier "Synaptics Touchpad" Driver "synaptics" Option "SendCoreEvents" "true" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "HorizScrollDelta" "0" EndSection }}} If this section is not present, you will need to [[#xinputdevice|add your touchpad to the X server configuration]]. Add the following line to this section: {{{ Option "SHMConfig" "on" }}} The result should look like this: {{{ Section "InputDevice" Identifier "Synaptics Touchpad" Driver "synaptics" Option "SendCoreEvents" "true" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "HorizScrollDelta" "0" Option "SHMConfig" "on" EndSection }}} To enable the changes log out of your desktop environment, and restart the X server by logging out and back in, or typing {{{sudo /etc/init.d/gdm restart}}}. <> = Configuration with synclient = '''synclient''' can be used to adjust touchpad settings from the command line. This will work even if a [[#gui|GUI Preference tool]] is installed. Enable SHMConfig in the X server configuration file as described in the section [[#shmconfig|Enabling SHMConfig]]. List all settings: {{{ synclient -l }}} === Examples === Turn touchpad off: {{{ synclient TouchpadOff=1 }}} Turn touchpad on: {{{ synclient TouchpadOff=0 }}} <> = Configuration with the X Server Configuration file = The options that are shown by the command {{{synclient -l}}} ([[#synclient|see above]]) may also be added directly to the touchpad "Input``Device" section in {{{/etc/X11/xorg.conf}}}. In this case [[#shmconfig|SHMConfig]] does not need to be enabled. For example, to turn the touchpad off, add the line: {{{ Option "TouchpadOff" "1" }}} The result will look like this: {{{ Section "InputDevice" Identifier "Synaptics Touchpad" Driver "synaptics" Option "SendCoreEvents" "true" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "HorizScrollDelta" "0" Option "SHMConfig" "off" Option "TouchpadOff" "1" EndSection }}} <> = Troubleshooting = == Determine Whether a Touchpad Is Configured == To check if a touchpad is configured, open a [[UsingTheTerminal|terminal]] and check your {{{/etc/X11/xorg.conf}}} file by typing the following: {{{ grep Iden /etc/X11/xorg.conf }}} If one of the lines is: {{{ Identifier "Synaptics Touchpad" }}} then you have a Synaptics Touchpad configured. If not, see [[#xinputdevice|Adding a Synaptics Touchpad to the X Server Configuration]]. <> == Adding a Synaptics Touchpad to the X Server Configuration == To add support for a touchpad which was not detected the xorg.conf file will need to be edited. In a [[UsingTheTerminal|terminal]] type: {{{ gksudo gedit /etc/X11/xorg.conf }}} After the lines: {{{ Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ExplorerPS/2" Option "ZAxisMapping" "4 5" Option "Emulate3Buttons" "true" EndSection }}} add the following: {{{ Section "InputDevice" Identifier "Synaptics Touchpad" Driver "synaptics" Option "SendCoreEvents" "true" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "HorizScrollDelta" "0" EndSection }}} Next, find the "Server``Layout" section near the bottom: {{{ Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" InputDevice "stylus" "SendCoreEvents" InputDevice "cursor" "SendCoreEvents" InputDevice "eraser" "SendCoreEvents" EndSection }}} Add the following line: {{{ InputDevice "Synaptics Touchpad" }}} The result should look like this: {{{ Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" InputDevice "stylus" "SendCoreEvents" InputDevice "cursor" "SendCoreEvents" InputDevice "eraser" "SendCoreEvents" InputDevice "Synaptics Touchpad" EndSection }}} To enable the changes restart X by logging out and back in, or typing {{{sudo /etc/init.d/gdm restart}}}. = See also = * [[SynapticsTouchpad/ShortcutKey|Turning Synaptics Touchpads On/Off with a Shortcut Key]] ----