Touchpad Synaptics

From ArchWiki
Revision as of 20:32, 1 May 2007 by Kbutcher5 (talk | contribs)
Jump to: navigation, search


What is this ?

This tutorial will help install and make your touchpad work properly on your laptop machine.

Loading appropriate modules

Both evdev and psmouse kernel modules have to be loaded in memory. You can check their presence by typing in a console :

lsmod


In case of problem with these modules, add the following in the MODULES line of your /etc/rc.conf :

MODULES = (... evdev psmouse ...)

Driver installation

As root user type in a console:

pacman -S synaptics

Additional packages may be installed too for graphical post-configuration of the touchpad : ksynaptics (for KDE), gsynaptics (for GNOME). Gsynaptics is in the community repository, which is not enabled by default.

Checking for the right device name

Type in a console :

cat /proc/bus/input/devices


The device name is in the Handlers line of the Synaptics / ALPS block.

I: Bus=0011 Vendor=0002 Product=0007 Version=0000
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio4/input0
S: Sysfs=/class/input/input1
H: Handlers=mouse0 event1 
B: EV=b
B: KEY=6420 0 7000f 0 0 0 0 0 0 0 0
B: ABS=11000003

e.g. H: Handlers=mouse0 event1

in this example case the Device Option in the xorg.conf will be :

Option      "Device" "/dev/input/mouse0"

xorg.conf configuration

Add the followings lines in the following sections of /etc/X11/xorg.conf :


Section "Module" :

Load "synaptics"


Section "ServerLayout" :

InputDevice "Touchpad" "AlwaysCore"

Note : ServerLayout Section may only contain one "CorePointer" entry. If another pointer is to be used, use "AlwaysCore". There is only one CorePointer allowed...


Create a new "InputDevice" section for the touchpad:

Section "InputDevice"
        Identifier  "Touchpad"
        Driver      "synaptics"
        Option      "Device" "/dev/input/mouse0"
        Option      "Protocol" "auto-dev"
        Option      "LeftEdge" "1700"
        Option      "RightEdge" "5300"
        Option      "TopEdge" "1700"
        Option      "BottomEdge" "4200"
        Option      "FingerLow" "25"
        Option      "FingerHigh" "30"
        Option      "MaxTapTime" "180"
        Option      "MaxTapMove" "220"
        Option      "VertScrollDelta" "100"
        Option      "MinSpeed" "0.06"
        Option      "MaxSpeed" "0.12"
        Option      "AccelFactor" "0.0010"
        Option      "SHMConfig" "on"
EndSection

Troubleshooting

Firefox misinterprets horizontal scrolling

Even though this problem isn't concerning the synaptics drivers, you will probably look up here for a solution anyway. To prevent firefox from "scrolling" the history and make it scroll the site, you have to set the following settings:

mousewheel.horizscroll.withnokey.action = 1
mousewheel.horizscroll.withnokey.sysnumlines = true

You can edit them by opening about:config. (Tip taken from gentoo wiki.)

Stopping the mouse from clicking while typing

This is a neat little trick incorporated with the synaptics driver, you can actually make sure that touchpad tap is disabled while typing. It is a very simple procedure, so here is how it is done.

In you profiles .xinitrc, that is the file in your home directory of you user, if your username is john it is /home/john/.xinitrc. You have probably already messed with this file to get your WM(window manager) to start, so to make it short, you just have to add "syndaemon -t -i 2 &" before the execution of your WM. The "-t" tells the daemon not to freeze your cursor and the "-i 2" tells the daemon for how long tapping should be disabled. Tapping will be enabled immediately if you click one of your touchpad buttons, hope this helps, for more options write "syndaemon -h" in a terminal.

Links

Synaptics TouchPad driver for XOrg/XFree86 : [1]