Alps (Synaptics) touchpad configuration in Lucid and Maverick Meerkat

The procedure for modifying touchpad settings has changed in Lucid Lynx. Today I installed the Beta 1 and found that the earlier techniques for configuring touchpad settings in Jaunty and Karmic no longer work. In Ubuntu 10.04, the entire HAL system has died and is replaced with something called udev.

Alternatively, we can change the touchpad settings in the xorg.conf.d folder. Thanks for the tip Jensel!

Let’s look at both techniques

Using Udev

Users can place their configuration files for udev inside “/etc/udev/rules.d” The files have a certain syntax, but of course it’s best to simply copy someone else’s file and just modify it to what you want. I created a file called touchpad.rules (the file must have the extension “rules”). Here is what I put into it:

ACTION!=”add|change”, GOTO=”xorg_synaptics_end”
KERNEL!=”event*”, GOTO=”xorg_synaptics_end”

ENV{ID_INPUT_TOUCHPAD}!=”1″, GOTO=”xorg_synaptics_end”

ENV{x11_options.MaxTapTime}=”300″

LABEL=”xorg_synaptics_end”

See the bold section? That’s where you put in your own settings similar to the rules we used to put into our .fdi files. Here are the settings in my earlier fdi file and here is the full list of options you can use.

I had to reboot the system to apply the changes – logging off didn’t work. If I find a better way to do this, I’ll post it here. The command posted on the official instruction page didn’t work for me either.

Using .conf files in xorg.conf.d

This is simple. Go to the folder “/usr/lib/X11/xorg.conf.d”. In there, find the file that has your synaptics settings. For me it was “10-synaptics.conf”. You can add your synaptics settings after the “Driver” line in the relevant “Identifier” section. My Identifier line was: Identifier “touchpad catchall”

Option        ”HorizEdgeScroll”    ”1″
Option        ”MaxTapTime”        ”300″

This will change the HorizEdgeScroll and MaxTapTime parameters. Just modify for whichever parameters you want to change. When you log out and log in again, your settings should be applied.

If you learn something more about these rules, be sure to let me know!

Like this post? +1 it!  

Related Posts:

69 comments to Alps (Synaptics) touchpad configuration in Lucid and Maverick Meerkat

  • Udev! They do find some very interesting sounding names :) Anyway it's all Greek to me:)

  • josquin

    Just for disabling the touchpad i used following command:

    gconftool -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled false

    To get a list of the options you can change this way, use:

    gconftool -R /desktop/gnome/peripherals/touchpad

    (Ubuntu Lucid Lynx Beta)

    • anupama

      Thanks Josquin, it saved my day

    • anupama

      Thanks Josquin,
      After 2 hours of googling, I successfully disabled my touchpad

    • oeyzone

      Thanks josquin,
      Somehow Ubuntu was mis-recognized the activate touchpad toggle button on my notebook. It display disabled when the status of the indicator of notebook is enabled, and the contrary.
      Took me some days have to use external mouse.
      Now it works perfectly after using the command line :
      gconftool -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled false

      • Leo Ramakers

        you asked it to be turned off? It worked for me when I said
        gconftool -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled true

  • [...] specified (ignoring) I am kinda lost at this point. I have followed howtos as listed here, here, and here. Am I not pointing my mouse.rules to the correct location? Maybe my issue is that I [...]

  • hello
    thank you for this tips, but it's doesn't work on my eeepc 901
    how do you name your files ?
    The mine is name : /etc/udev/rules.d/90-xorg-synaptics.rules
    And I have put into :

    ACTION!=”add|change”, GOTO=”xorg_synaptics_end”
    KERNEL!=”event*”, GOTO=”xorg_synaptics_end”

    ENV{ID_INPUT_TOUCHPAD}!=”1″, GOTO=”xorg_synaptics_end”

    ENV{x11_options.EdgeMotionMinSpeed}="110"
    ENV{x11_options.EdgeMotionMaxSpeed}="120"
    ENV{x11_options.EdgeMotionUseAlways}="1"

    LABEL=”xorg_synaptics_end”

    When I reboot, the option EdgeMotionUseAlways is not activate, do you do others things ?
    do you see something bad ?

    thank you
    quen57

    • Looks like this doesn't work for a lot of people.

      But following up on Jensel's comment below, I've added a new method for changing the settings. Let me know if it works for you

  • myjess

    Looks like these rules only for ubuntu, kubuntu seems to ignore them. To get kubuntu to do something similar I have to load kcm-touchpad and change mouse in the system-settings.

    Thanks.

  • Jensel

    Better method: xorg.conf.d, since Xorg will not be udev-aware for long. Placing custom files in /usr/lib/X11/xorg.conf.d/ works fine in lucid. Documentation is available on the man pages for xorg.conf and the drivers in question (evdev, synaptics)

    • Thanks Jensel!

      Your method does indeed work. Including this in the blog post now.

      • David

        Hi,

        I tried synaptics customization (in lucid) through udev rules and it did not work … then I tried through xorg.conf.d and … it PARTIALLY worked. I mean, I modified the values of 11 parameters and 7 of them worked and 4 did NOT. Could it be possible any piece of SW to overwrite these values ?

        Thanks.

        • Are any of the values that aren't set in the "gconf-editor" tool?

          • David

            Well … after my comment … I unticked touchpad preferences from startup applications and 9 parameters worked (two more than before) … but two other parameters keep ignoring my customization. All the parameters I mean can be listed with “synclient -l” command. I am a newbie so I am not quite sure about the relation between these parameters and “gconf-editor” tool.

            Gaining operativeness in two more parameters after unticking touchpad preferences in startup confirmed my suspicions. Some days ago, googling around I had read a bit here and there. I read that customization in “/usr/lib/X11/xorg.conf.d” could be overwritten … I had also read that for USER customization “/etc/X11/xorg.conf.d” would be a better folder to place “10-synaptics.conf” in order to minimize overwrite issues … Finally I had also read a thread from ubuntuforums … I think it was a girl that created “/etc/X11/xorg.conf.d” folder and copy “10-synaptics.conf” there (leaving just “touchpad catchall” section) … her touchpad revived but … her keyboard died … It was risky … … I unfortunately decided to try it out … now my keyboard has died too and I cannot access Ubuntu (I am now writing from the same laptop but from Windows Vista partition).

            As told before I am a newbie in Linux and I am such STUCK. My plan is finding a way to delete the new created “/etc/X11/xorg.conf.d” folder to recover my operativeness. Some weeks ago I set to 0 seconds the wait time for choosing the kernel version at booting time so I am afraid I can not enter the system in ‘safe mode’. I have an Ubuntu 10.04b1 liveCD … could it be possible to delete that folder booting from the liveCD ?

            A reflexion : Am I wrong if I think that running into these kind of problems just for tunning my touchpad is a signal of lack for matureness for mainstream users from Ubuntu (or at least from X server) ?

            • Yes you can boot from live CD an delete this file.
              If it's doesn't work run sudo rm or sudo nautilus and it's will delete fine. (but be carfull with un nautilus in sudo)
              Good luck

              • David

                Well … I am back … from Ubuntu … I am recovered … THANX … I deleted “/etc/X11/xorg.conf.d” and things went back to normality.

                I have double check some things and I can confirm that Touchpad (run from startup applications) is overwriting at least the parameter CoastingSpeed (If you want to activate corner-coasting you need to set CornerCoasting to '1' and CoastingSpeed > '0' ). If I untick Touchpad from startup applications the only two parameters that do NOT follow my customization are RTCornerButton and RBCornerButton.

                Which software could be overwriting these two parameters ?

                Note: When I untick Touchpad from startup applications I keep more parameters customized but some other parameters' values change. For me, the ideal thing would be keeping Touchpad running from startup applications and then run my customization on top.

                What is the relation between “gconf-editor” tool and synaptics parameters ?

                Thank you very much. :-)

  • jithin

    im using sony vaio e series and scroll is not working. my touchpad is alps. can someon help me to fix this please.. the above method didnt work

  • jithin

    how to find the Identifier for my touchpad?

    Identifier "Dell Inspiron embedded buttons quirks"

    • For me it was:

      Identifier "touchpad catchall"

      • jithin

        i also put the options inside catchall.. but no luck. scroll still is not working. :(
        jithin@jithin-laptop:~$ gconftool -R /desktop/gnome/peripherals/touchpad
        horiz_scroll_enabled = true
        touchpad_enabled = true
        tap_to_click = true
        scroll_method = 1
        config_migration_needed = false
        disable_while_typing = true

  • sorry for my bad english, I have a vaio but the scroll does not work, edit the file /usr/lib/X11/xorg.conf.d/10-synaptics.conf but it does not work

    Section "InputClass"
    Identifier "touchpad catchall"
    Option "HorizEdgeScroll" "1"
    Option "MaxTapTime" "300"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Driver "synaptics"
    EndSection

    is an alps touchpad vaio with with 64bits version uses lucid final

  • It's work fine for me (eeepc 901) thanks

  • Joseph Miller

    I just upgraded from 9.10 AMD64 to 10.04 and my touchpad wasn't working properly either. Apparently, xserver-xorg-input-synaptics was not installed. After installing this package, everything is good again. That may not be your problem, but I think it is problematic that somehow it didn't get installed.

  • Jakob Staerk

    I have had major trouble with a Dell Latitude E6510 (ALPS GlidePoint) It seams to be hit by several issues, so even is i got to disable the touchpad with the info provided here, it is still recognized as a mouse. I would be hapy if i could disable the touchpad and use the trackpoint only. In my search i also found reference to some having trouble where setting psmouse proto=imps helped (https://answers.launchpad.net/ubuntu/+source/xorg/+question/79740).

    Anyone having succes with the E6510 (or similar) ?

    • Dries

      I also own a E6510, and the touchpad has the same issue. The problem is that the touchpad is also detected as a PS/2 mouse, and that configuration is used. Anybody any idea to force to use only the ALPS ?

      • Rampor

        Running Ubuntu 10.04
        I also have a Dell E6510. My touchpad 'works' as a pointer, but not as a touchpad. Any changes I make in (System > Preferances > mouse – touchpad) do not effect the behavior of the touchpad.
        The main thing I want to do is disable the tap to click, or disable the touchpad while typing. If I could use one of those two options, i would be set.

        When I run the command 'sudo cat /dev/input/mouse2' and move my finger along the touchpad, i see output, but if I run the command 'sudo cat /dev/input/mouse3' I do not get any output while moving my finger along the touchpad.

        Below is part of my Xorg.0.log that I feel is causing the issue.
        It appears to me that the issue lies with the fact that the touchad is being seen by the system as a PS/2 mouse, instead of the touchpad first.

        I have tried to modify /usr/lib/X11/xorg.conf.d/05-evdev.conf and add (Option "MaxTapTime" "0") under the 'evdev pointer catchall' section but that has not helped.

        Any thoughts on how to fix this would be awesome!

        (II) config/udev: Adding input device PS/2 Mouse (/dev/input/event10)
        (**) PS/2 Mouse: Applying InputClass "evdev pointer catchall"
        (**) PS/2 Mouse: always reports core events
        (**) PS/2 Mouse: Device: "/dev/input/event10"
        (II) PS/2 Mouse: Found 3 mouse buttons
        (II) PS/2 Mouse: Found relative axes
        (II) PS/2 Mouse: Found x and y relative axes
        (II) PS/2 Mouse: Configuring as mouse
        (**) PS/2 Mouse: YAxisMapping: buttons 4 and 5
        (**) PS/2 Mouse: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
        (II) XINPUT: Adding extended input device "PS/2 Mouse" (type: MOUSE)
        (II) PS/2 Mouse: initialized for relative axes.
        (II) config/udev: Adding input device PS/2 Mouse (/dev/input/mouse2)
        (II) No input driver/identifier specified (ignoring)
        (II) config/udev: Adding input device AlpsPS/2 ALPS GlidePoint (/dev/input/event11)
        (**) AlpsPS/2 ALPS GlidePoint: Applying InputClass "evdev pointer catchall"
        (**) AlpsPS/2 ALPS GlidePoint: Applying InputClass "evdev touchpad catchall"
        (**) AlpsPS/2 ALPS GlidePoint: Applying InputClass "touchpad catchall"
        (II) LoadModule: "synaptics"
        (II) Loading /usr/lib/xorg/modules/input/synaptics_drv.so
        (II) Module synaptics: vendor="X.Org Foundation"
        compiled for 1.7.6, module version = 1.2.2
        Module class: X.Org XInput Driver
        ABI class: X.Org XInput driver, version 7.0
        (II) Synaptics touchpad driver version 1.2.2
        (**) Option "Device" "/dev/input/event11"
        (II) AlpsPS/2 ALPS GlidePoint: x-axis range 0 – 1023
        (II) AlpsPS/2 ALPS GlidePoint: y-axis range 0 – 767
        (II) AlpsPS/2 ALPS GlidePoint: pressure range 0 – 127
        (II) AlpsPS/2 ALPS GlidePoint: finger width range 0 – 0
        (II) AlpsPS/2 ALPS GlidePoint: buttons: left right middle
        (**) Option "MaxTapTime" "0"
        (**) Option "HorizEdgeScroll" "1"
        (–) AlpsPS/2 ALPS GlidePoint: touchpad found
        (**) AlpsPS/2 ALPS GlidePoint: always reports core events
        (II) XINPUT: Adding extended input device "AlpsPS/2 ALPS GlidePoint" (type: TOUCHPAD)
        (**) AlpsPS/2 ALPS GlidePoint: (accel) keeping acceleration scheme 1
        (**) AlpsPS/2 ALPS GlidePoint: (accel) acceleration profile 0
        (**) AlpsPS/2 ALPS GlidePoint: (accel) acceleration factor: 2.000
        (**) AlpsPS/2 ALPS GlidePoint: (accel) acceleration threshold: 4
        (–) AlpsPS/2 ALPS GlidePoint: touchpad found
        (II) config/udev: Adding input device AlpsPS/2 ALPS GlidePoint (/dev/input/mouse3)
        (II) No input driver/identifier specified (ignoring)

        • Koarl_the_guest

          I have the exact same problem:

          (II) config/udev: Adding input device AlpsPS/2 ALPS GlidePoint (/dev/input/mouse3)
          (II) No input driver/identifier specified (ignoring)

          these last two lines from Xorg.0.log seem to indicate that the above configuration is overwritten to a useless mouse3 device

          (synaptics drivers work only with event devices)

          but how do you disable udev for just this /dev/input/mouse3?

          I've been sitting on this for at least 8 hours – today.

          has anyone got an idea how to solve this issue?

  • David

    Well … neither RTCornerButton nor RBCornerButton appears under desktop/gnome/peripherals/touchpad in gconf settings. I have even tried to create two new keys with the customized names (lower cased) integer format and … did not work. I had to try :>)

    One day I will find out what is the problem … till then Thanks for your help.

  • FabianZ

    hey, for those who don't want to work with the console, but do the same much easier with a gui:
    go to System > Settings > Mouse > Touchpad and activate in the scrolling section your favourite behaviour for scrolling.
    greetings from germany
    FabianZ

  • Bladtman242

    <blockquote cite="#commentbody-11363">
    josquin :Just for disabling the touchpad i used following command:gconftool -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled falseTo get a list of the options you can change this way, use:gconftool -R /desktop/gnome/peripherals/touchpad(Ubuntu Lucid Lynx Beta)

    Why not use synclient?
    it still works, and it is a hell of a lot more simple if you ask me :)

    synclient TouchpadOff=1 disables the touchpad.
    synclient -l
    or:
    man synclient for list of variables.

  • David

    Just for posterity. I was having difficulties with getting my changes in 10-synaptics.conf to take effect. After examining the X log, I noticed that the settings from 05-evdev.conf were being loaded after 10-synaptics.conf. I opened 05-evdev.conf (gedit 05-evdev.conf) and commented out the following lines (I added the hashes):

    #Section "InputClass"
    # Identifier "evdev touchpad catchall"
    # MatchIsTouchpad "on"
    # MatchDevicePath "/dev/input/event*"
    # Driver "evdev"
    #EndSection

    Two finger scrolling is now persistent, even after coming back from sleep. I'm new to linux, so I have no idea why this worked, but maybe it had something to do with the evdev vs synaptic driver? This change might help Jithin or other people who are confused as to why their changes aren't taking effect. Thank you for the extremely useful post bhagwad.

    • Koarl_the_guest

      hm, that sounds mysterious

      05 should be executed before 10, nevertheless I'll try your suggestion…

      although my 'special' conf is in a 99-… file :-)

  • Volker Bradley

    Hope that you can help me fix the jumping cursor issue. I just want to disable the touchpad.
    1. I have 64 bit Lucid running on my laptop. I have created a touchpad.rules file into which I put:
    ACTION!=”add|change”, GOTO=”xorg_synaptics_end”
    KERNEL!=”event*”, GOTO=”xorg_synaptics_end”

    ENV{ID_INPUT_TOUCHPAD}!=”1″, GOTO=”xorg_synaptics_end”

    ENV{x11_options.MaxTapTime}=”0″

    LABEL=”xorg_synaptics_end”

    2. I have gone to the gconf-editor -> desktop -> gnome -> peripherals -> toupad and put a checkmark in disable while typing, and removed the checkmark in front of touchpad_enabled.
    3. I have given the gconftool -s -t bool /desktop/gnome/peripherals/touchpad/touchpad_enabled false command
    4. In my 10-synaptics.conf file I have:
    Section "InputClass"
    Identifier "touchpad catchall"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Driver "synaptics"
    Option "MaxTapTime" "0"
    EndSection

    I have rebooted and in spite of all of these settings, my cursor jumps all over the place while I am typing. The touchpad is not deactivated.
    Do you have any other suggestions?

    • Øyvind Bakksjø

      +1 to what Volker Bradley said. In addition, my xorg.conf says

      Option “SHMConfig” “true”

      but still, synclient complains: “Couldn’t find synaptics properties. No synaptics driver loaded?”

      I have a Dell Precision M4500. I don’t know what else to try at this point. The damn touchy thing just won’t die.

  • I'm trying to enable simulated two finger scrolling. I tried both the Udev and .conf file methods but I can't get it to stick. It loses the settings when I switch to a VT or suspend the machine or sometimes just randomly. My inelegant solution is to run a cron job every minute to correct the settings.

  • David

    Hi,

    I have just cloned my install … and from the clone, I have upgraded to Ubuntu 10.10 . I wanted to keep as many of my settings and also try 'Maverick Meerkat' … you know what happens when you got a bit of free time ;)

    The thing is that I have lost some configuration around my touchpad, I mean … it doesn't behaves the same and when I checked about my previously customized '/usr/lib/X11/xorg.conf.d' set , I have realized that it is not there any longer so the question is : are we supposed to follow the same rules than five months ago (according to Alps touchpad configuration) ? … or … there have been another change in udev, X11 or whatever that changes the way we have to struggle with Ubuntu 10.10 touchpad configuration ?

    Thank you.

  • No idea David – haven't yet tried out Maverick. But once I do, I'll take a look and see what's wrong.

    You're a brave man :)

  • David

    Hi,

    … just to let you know, I have tried the udev way unsuccessfully. I have even create xorg.conf.d directory at '/usr/lib/X11' … and then copy my previously customized dataset there … and no positive results either …

    This is truly a pain in the ass. Before reaching 'The year of the Linux Desktop' these kind of things shouldn't be so unstable.

    Regards.

    • You're right David. Linxu does have to smooth some things out if it wants to go mainstream.

      If the two methods aren't working for you, try the technique given above by bladtman242. That should definitely work.

      • David

        Well Bhagwad,

        it works … in fact, it already worked on 'Lucid Lynx' … unfortunately it's not operative since as soon as you reboot you lose whatever you have previously customized.

        Thank you anyway. :-)

        • Just put the command in the startup list and you're set!

          • David

            Hi Bhagwad,

            I'm afraid I have made my very first Linux script … since I needed to customize eleven settings, I opened Gedit, I wrote all synclient commands there and I finally saved the file as name.sh … and … it worked !!!

            When I run the script, it sets the eleven parameters properly … if I put the script in the startup list, only eitht parameters are properly set ¿? … so … I thought … something is overwritting three parameters …

            After digging a bit, I found an entry at Configuration Editor not at /desktop/gnome/peripherals/touchpad but at /desktop/gnome/peripherals/AlpsPS@47@2@32@ALPS@32@GlidePoint which was the responsible of overwriting one parameter. I was unable to find the other two (not properly set) remaining parameters anywhere around.

            I am not an expert at all, but I have been searching at System Log for the other two parameters in order to find out who is overwritting them … but I haven't found anything directly related. At Xorg.0.log I have only been able to find :

            [ 37.180] (–) AlpsPS/2 ALPS GlidePoint: no supported touchpad found
            [ 37.180] (EE) AlpsPS/2 ALPS GlidePoint Unable to query/initialize Synaptics hardware.
            [ 37.240] (EE) PreInit failed for input device "AlpsPS/2 ALPS GlidePoint"
            [ 37.240] (II) UnloadModule: "synaptics"

            I know EE means error, but the touchpad works … let's say 'a kind of OK' …

            The two parameters are RTCornerButton and RBCornerButton … is there any tipical way to check who is overwritting their values ?

            Thank you.

  • Josh Smith

    So how do we get Ubuntu to recognize that a touchpad exists. When I cat /proc/bus/input/devices all that shows is a PS/2 mouse. I am running 10.10 (upgraded from 10.4) and it still doesnt' work.

    The instructions above are great if I had Ubuntu recognizing the touchpad, but it doesn't. Any tips?

  • Bart

    none of this works in kubuntu 10.04. system settings for touchpad are greyed out and there is no identifier for touchpad. all drivers are installed but nothing works.

  • ajm

    For those who’s touchpad shows up as PS/2…

    Basically, you need to add your device back to alps.c, recompile psmouse.ko, add into current /lib/modules/WHATEVER KERNEL YOU’RE ON

    It works – at least it’s recognized…still working on everything else.

    Good Luck!

    • Antonio

      Hi ajm,

      could you please give more details about this procedure e.g. how can one guess how to modify alps.c? Or have you any update an this problem/solution?

      Thanks!

  • Pure curiosity:

    U sure that the “10-synaptics.conf” file is located under “/usr/lib/X11/xorg.conf.d”?

    I can find a similar file (“50-synaptics.conf”) under “/usr/share/X11/xorg.conf.d”. In facr the folder “xorg.conf.d” folder is not even located in the lib-line.

    For all with Touchpad issues: Try to press [Fn] + [F7]. I was looking for a solution for weeks, just to find out, that this hardware block even survives new installations!

    And for all with scroll issues: Try to set the mode probe.
    sudo rmmod psmouse
    sudo modprobe psmouse proto=imps
    for test. If imps doesn’t work, try exps

    If any of those work, make it permanent by editing “/etc/modprobe.d/options” and add the following lines:
    options psmouse proto=imps

    restart x.

    Cheers for that wonderful blog.

  • rengucha

    Got a HP dm4 i5 loaded 10.10. As usual wiped the MS 7 completely. Only hitch was the jumping touchpad. Once I did what Rodnox suggested everything worked like charm.

  • Joliea

    I have tried and tried all these methods on how to enable my touchpad vertical scroll on the right for my Dell Latitude E6510 and nothing seems to work. This scroll function is central to my work and the only way I can use it is through using an external mouse.

    ANyone??? I really would like to know how to do this.

  • ajm

    Sorry to have not kept up, but some new progress has been made!

    I did supply links, but apparently those get stripped from my posting…apologies

    I have gotten some results (Vertical scrolling on Dell Latitude E6510) by search Launchpad, Bug #550625

    Also, in terms of actually recompiling alps.c – though I don’t believe it’s any longer necessary – that was originally found at “confluence dot nau dot edu” it was posted by Christopher M. Gray.

    I believe its the first hit by searching “Recognize ALPS Touchpad on Dell E6510 in Ubuntu”

  • Joliea

    How do I apply this “psmouse.ko” thing? New to ubuntu. Absolutely no knowledge. Help!

  • Good news! The scroll feature works fine after upgrading to Ubuntu 11.04 Natty Narwhal

Leave a Reply