Alternate Touchpad Configuration for XPS 9343 Developer Edition Running Ubuntu 15.04

Here is information addressing the lack of palm detection with Ubuntu 15.04.  A big shout out to Pilot6 who developed the steps below and shared them with the community on Ask Ubuntu

Some customers have reported frustration with the lack of palm detection due to limitations with the Synaptics driver currently implemented in current stable versions of the Linux Kernel. This walkthrough is intended for advanced users who would like to experiment with the alternate libinput input device driver. This has only been tested to work in the XPS 13 9343 using Ubuntu 15.04 and 15.10 beta.

Note: these steps are not supported by Dell support and you are performing this at your own risk. Compatibility issues could arise and result in your operating system being rendered unable to boot.

  1. Install some needed packages by running the following commands.

sudo apt-get install git build-essential autoconf automake pkg-config libtool

sudo apt-get install libmtdev1 libmtdev-dev libudev-dev libevdev-dev xutils-dev

  1. Install xserver-xorg-dev.

sudo apt-get install xserver-xorg-dev

  1. Clone libinput and xf86-input-libinput.

git clone http://cgit.freedesktop.org/wayland/libinput/

git clone http://cgit.freedesktop.org/xorg/driver/xf86-input-libinput/

  1. Build and install both packages.

cd libinput

./autogen.sh –prefix=/usr

make && sudo make install

cd ../xf86-input-libinput

./autogen.sh –prefix=/usr

make && sudo make install

  1. Now we need to create the config file in /usr/share/X11/xorg.conf.d named 99-libinput.conf using your favorite text editor (the following example will be using gedit).

Sudo gedit /usr/share/X11/xorg.conf.d/99-libinput.conf

  1. Add the following to the blank file you just opened, these options should cause the touchpad to perform similar to an Apple Mac touchpad.

Section “InputClass”

Identifier “libinput”

Driver “libinput”

MatchDevicePath “/dev/input/event*”

MatchIsTouchpad “true”

Option “Tapping” “true”

Option “TappingDragLock” “true”

Option “ClickMethod” “none”

Option “NaturalScrolling” “true”

EndSection

  1. There are many more options available. Not all options are supported, if the option is not supported than the default will be used. In the above example “Natural Scrolling” is set to “true”. If you don’t like natural scrolling just set that option to “false”. Follow the below link for an explanation of the many options that are able to be adjusted in the 99-libinput.conf

https://www.mankier.com/4/libinput

HTH

Pau for now…


Comments

24 responses to “Alternate Touchpad Configuration for XPS 9343 Developer Edition Running Ubuntu 15.04”

  1. In 15.10, you can just install the xserver-xore-input-libinput package.

    Since most of the options for configuring this driver are not yet exposed through the unity settings for the touchpad, I recommend the following to be added to you /etc/X11/xorg.conf.d/99-libinput.conf:

    Section “InputClass”
    Identifier “libinput”
    Driver “libinput”
    MatchDevicePath “/dev/input/event*”
    MatchIsTouchpad “true”
    Option “Tapping” “true”
    Option “ClickMethod” “clickfinger”
    Option “NaturalScrolling” “true”
    EndSection

    This will enable tap-to-click on the whole surface of the touchpad (thus removing the button regions at the bottom). It will also allow using one, two, and three finger taps (or physical clicks) respectively for left, right, and middle clicks. It will also enable the reverse vertical scrolling direction (like on Macbooks). All of this config will only be applied to touchpads. The device will also default to be disabled while typing, which is good to have on since palm detection is not supported yet.

    With this config, I find the the touchpad far more usable.

    1. The spacing and greater than/less than symbols in my config file content were stripped. Please ping me @ wt@penguintechs.org or @w00tSpeaks on twitter if you can’t figure out what’s missing.

  2. Lawrence Avatar
    Lawrence

    On my hardware, using libinput, the option “DisableWhileTyping” is effective on an external keyboard, but not the laptop’s keyboard. Strange. Does anybody has a similar experience?

  3. Thanks for this.

    Is `Option “PalmDetection” “True”` supported here ?

    1. Lawrence Avatar
      Lawrence

      There is no such option.

      Palm detection is automatically enabled:

      http://wayland.freedesktop.org/libinput/doc/latest/palm_detection.html

  4. Minh Ha Duong Avatar
    Minh Ha Duong

    The configure for xf86-input-libinput fails with error message

    checking for LIBINPUT… no
    configure: error: Package requirements (libinput >= 0.21.0) were not met:

    No package ‘libinput’ found

    Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix.

    Alternatively, you may set the environment variables LIBINPUT_CFLAGS and LIBINPUT_LIBS to avoid the need to call pkg-config.

    1. Minh Ha Duong Avatar
      Minh Ha Duong

      PEBKAC, Sorry for the noise. The instructions works fine so far.

  5. Minh Ha Duong Avatar
    Minh Ha Duong

    I have no idea what a Macbook touchpad behaves like. I don’t want to know at the moment. The configuration file kills the right click ?

  6. prawits.florian@gmail.com Avatar
    prawits.florian@gmail.com

    Does anyone know how to apply the firmware update for the touchpad (A00) under ubuntu 15.04? Unfortunately my linux skills are somewhat limited and I have spent the last few days trying to figure out how this can be accomplished. Updating the BIOS to A05 was easy enough for me, but I got really stuck with the touchpad.

    Also as a side note it would be nice to know how to find out what the current firmware version of the touchpad is, because I am not entirely sure whether the firmware is in need of updating (I purchased my XPS around May).

    Any help here would be really appreciated.

    Link to A00 Firmware:
    http://downloads.dell.com/FOLDER02883019M/1/9343_Firmware_T792T_WN32_18.1.48_A00.EXE

  7. jimbasilio Avatar
    jimbasilio

    For 15.10 you can use the native packages for a much easier installation.

    http://askubuntu.com/a/678122/108825

    1. Hi, i did this, but i don’t think it is working. I enabled palm detection in the conf file and and its the one with the highest value, so it should get selected by the system right?

  8. I’m not on Ubuntu 15.04, but Linux Mint 17.2 (Based on 14.04).

    Building and installing libinput went fine, but with xf86-input-libinput I am running into a problem when building the package:

    > make && sudo make install
    make all-recursive
    make[1]: Entering directory `/home/richard/code/linux/xf86-input-libinput’
    Making all in src
    make[2]: Entering directory `/home/richard/code/linux/xf86-input-libinput/src’
    CC xf86libinput.lo
    xf86libinput.c: In function ‘open_restricted’:
    xf86libinput.c:934:3: error: implicit declaration of function ‘xf86Msg’ [-Werror=implicit-function-declaration]
    xf86Msg(X_ERROR, “Failed to look up path ‘%s’\n”, path);
    ^
    xf86libinput.c:934:3: warning: nested extern declaration of ‘xf86Msg’ [-Wnested-externs]
    cc1: some warnings being treated as errors
    make[2]: *** [xf86libinput.lo] Error 1
    make[2]: Leaving directory `/home/richard/code/linux/xf86-input-libinput/src’
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/home/richard/code/linux/xf86-input-libinput’
    make: *** [all] Error 2

    Any pointers would be appreciated.

    1. I’m also getting this error on Xubuntu 14.04 LTS.

    2. Actually, I was able to run make successfully after making a quick hack to xf86libinput.c.

      Edit the file ./xf86-input-libinput/src/xf86libinput.c
      Search for xf86Msg
      Comment the line by inserting //
      Run make again

  9. Hello?

  10. Minh Ha Duong Avatar
    Minh Ha Duong

    This is to share a solution to the frustration of the cursor jumping around while you type:
    disable “tap to click”
    Now I can use the keyboard !

    1. Minh Ha Duong thank you this tip solves the most annoying problem with this machine

      1. Only if you don’t like tap to click, which is honestly the only way I use touchpads. It’s a workaround if you decide to sacrifice functionality. Not a solution.

  11. Did anyone actually get this to work?

    1. Minh Ha Duong Avatar
      Minh Ha Duong

      I compiled it ok, then moved to Ubuntu 15.10 with libinput compiled in.
      The cursor still freezes.
      If the seller had a Satisfaction warranty refund I would have taken it long ago !

  12. Hi Barton, I am guessing it is an honest mistake either by you or your tech team, but the instructions you posted seem to have been taken directly from from this answer: http://askubuntu.com/questions/649103/proper-touchpad-thumb-palm-detection-with-libinput/651008#651008
    and you did not attribute the author or link to that answer. Is Pilot6 part of your tech team?

    1. Xu, thanks for flagging this. I checked with the team and it turns out that we did leverage a lot of our instructions from Pilot6’s post. I apologize for the lack of attribution and going forward we will make sure this doesn’t happen again.

      Once again, i appreciate you bringing this to my attention.

      1. PS I rewrote the intro to reflect Pilot6’s work

      2. Thank you for looking into it, Barton, and for the quick fix!

Leave a Reply

Discover more from 808labs

Subscribe now to keep reading and get access to the full archive.

Continue reading