# [Solved] Synaptic Touchpad - Mouse Scrolling Feature

## milomak

I've previously run Debian and Fedora 10 on this laptop (HP 530 2.16GHz) where the mouse scroll area worked without needing to change xorg.conf. I however never thought of saving those xorg.conf files. How can I go about enabling the feature?Last edited by milomak on Wed Jan 21, 2009 5:49 pm; edited 1 time in total

----------

## d2_racing

First of all, can you post this :

```

# emerge --info

# cat /etc/X11/xorg.conf

# equery list xorg-x11

# equery list synaptic

# equery list hal

```

----------

## milomak

emerge -info

```

localhost ~ # emerge --info

Portage 2.1.4.4 (default/linux/x86/2008.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.27-gentoo-r7 i686)

=================================================================

System uname: 2.6.27-gentoo-r7 i686 Intel(R) Core(TM) Duo CPU T2600 @ 2.16GHz

Timestamp of tree: Wed, 14 Jan 2009 04:30:01 +0000

app-shells/bash:     3.2_p17-r1

dev-lang/python:     2.4.4-r13

dev-python/pycrypto: 2.0.1-r6

sys-apps/baselayout: 1.12.11.1

sys-apps/sandbox:    1.2.18.1-r2

sys-devel/autoconf:  2.13, 2.61-r1

sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1

sys-devel/binutils:  2.18-r1

sys-devel/gcc-config: 1.4.0-r4

sys-devel/libtool:   1.5.24

virtual/os-headers:  2.6.23-r3

ACCEPT_KEYWORDS="x86"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O2 -march=i686 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"

CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/terminfo /etc/udev/rules.d"

CXXFLAGS="-O2 -march=i686 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"

GENTOO_MIRRORS="http://gentoo.mirror.ac.za"

LDFLAGS="-Wl,-O1"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="X aac acl alsa arts bash-completion berkdb bzip2 cdr cli cracklib crypt css cups dbus dri dvd dvdr dvdread encode esd evo ffmpeg firefox flac fortran gcj gdbm gimp gnome gpm gstreamer gtk hal iconv ipv6 isdnlog jack java6 javascript jpeg kde kdeprefix lame libnotify matroska midi mime mp3 mpeg mplayer mudflap mysql ncurses networkmanager nls nptl nptlonly ogg opengl openmp pam pcmia pcre pdf perl pppd pulseaudio python qt3 qt4 readline reflection session spell spl ssl symlink sysfs syslog tcpd truetype unicode vorbis wifi win32codecs wxwindows x264 x86 xine xorg xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fbdev glint i810 intel mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa vga via vmware voodoo"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

```

----------

## milomak

xorg.conf

```

localhost ~ # cat /etc/X11/xorg.conf

Section "ServerLayout"

        Identifier     "X.org Configured"

        Screen      0  "Screen0" 0 0

        InputDevice    "Mouse0" "CorePointer"

        InputDevice    "Keyboard0" "CoreKeyboard"

EndSection

Section "Files"

        RgbPath      "/usr/share/X11/rgb"

        ModulePath   "/usr/lib/xorg/modules"

        FontPath     "/usr/share/fonts/misc/"

        FontPath     "/usr/share/fonts/TTF/"

        FontPath     "/usr/share/fonts/OTF"

        FontPath     "/usr/share/fonts/Type1/"

        FontPath     "/usr/share/fonts/100dpi/"

        FontPath     "/usr/share/fonts/75dpi/"

EndSection

Section "Module"

        Load  "glx"

        Load  "extmod"

        Load  "xtrap"

        Load  "record"

        Load  "GLcore"

        Load  "dbe"

        Load  "dri"

        Load  "freetype"

        Load  "type1"

EndSection

Section "InputDevice"

        Identifier  "Keyboard0"

        Driver      "kbd"

EndSection

Section "InputDevice"

        Identifier  "Mouse0"

        Driver      "mouse"

        Option      "Protocol" "auto"

        Option      "Device" "/dev/input/mice"

        Option      "ZAxisMapping" "4 5 6 7"

EndSection

Section "Monitor"

        #DisplaySize      330   210     # mm

        Identifier   "Monitor0"

        VendorName   "LPL"

        ModelName    "db00"

EndSection

Section "Device"

        ### Available Driver options are:-

        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",

        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"

        ### [arg]: arg optional

        #Option     "NoAccel"                   # [<bool>]

        #Option     "SWcursor"                  # [<bool>]

        #Option     "ColorKey"                  # <i>

        #Option     "CacheLines"                # <i>

        #Option     "Dac6Bit"                   # [<bool>]

        #Option     "DRI"                       # [<bool>]

        #Option     "NoDDC"                     # [<bool>]

        #Option     "ShowCache"                 # [<bool>]

        #Option     "XvMCSurfaces"              # <i>

        #Option     "PageFlip"                  # [<bool>]

        Identifier  "Card0"

        Driver      "intel"

        VendorName  "Intel Corporation"

        BoardName   "Unknown Board"

        BusID       "PCI:0:2:0"

EndSection

Section "Screen"

        Identifier "Screen0"

        Device     "Card0"

        Monitor    "Monitor0"

        SubSection "Display"

                Viewport   0 0

                Depth     1

        EndSubSection

        SubSection "Display"

                Viewport   0 0

                Depth     4

        EndSubSection

        SubSection "Display"

                Viewport   0 0

                Depth     8

        EndSubSection

        SubSection "Display"

                Viewport   0 0

                Depth     15

        EndSubSection

        SubSection "Display"

                Viewport   0 0

                Depth     16

        EndSubSection

        SubSection "Display"

                Viewport   0 0

                Depth     24

        EndSubSection

EndSection

```

----------

## milomak

```

localhost ~ # equery list xorg-x11

[ Searching for package 'xorg-x11' in all categories among: ]

 * installed packages

localhost ~ # equery list hal

[ Searching for package 'hal' in all categories among: ]

 * installed packages

[I--] [  ] app-misc/hal-info-20080508 (0)

[I--] [  ] sys-apps/hal-0.5.11-r1 (0)

localhost ~ # equery list synaptic

[ Searching for package 'synaptic' in all categories among: ]

 * installed packages

```

Hmm. no equery. As an aside shouldn't Gentoo come standard with equery?

EDIT:

```

localhost ~ # equery list xorg

[ Searching for package 'xorg' in all categories among: ]

 * installed packages

[I--] [  ] x11-base/xorg-server-1.3.0.0-r6 (0)

```

----------

## d2_racing

Hi, first we will try that :

Make sure that you have this exact line inside your /etc/make.conf

```

INPUT_DEVICES="keyboard mouse evdev synaptics"

```

After that, run this :

```

# emerge -auDNv world

```

This will install the synaptics package and it also will add the support for your touchpad.

----------

## d2_racing

And with that, I don't need any entry inside my /etc/X11/xorg.conf for synaptic :

```

Section "Module"

# This loads the DBE extension module.

    Load        "dbe"     # Double buffer extension

# This loads the miscellaneous extensions module, and disables

# initialisation of the XFree86-DGA extension within that module.

    SubSection  "extmod"

      Option    "omit xfree86-dga"   # don't initialise the DGA extension

    EndSubSection

# This loads the font modules

#    Load        "type1"

    Load        "freetype"

#    Load        "xtt"

# This loads the GLX module

    Load       "glx"

# This loads the DRI module

    Load       "dri"

# Corepointer du Thinkpad

    load       "evdev"

 

EndSection

# **********************************************************************

# Files section.  This allows default font and rgb paths to be set

# **********************************************************************

Section "Files"

# The location of the RGB database.  Note, this is the name of the

# file minus the extension (like ".txt" or ".db").  There is normally

# no need to change the default.

#    RgbPath   "/usr/share/X11/rgb"

# Multiple FontPath entries are allowed (which are concatenated together),

# as well as specifying multiple comma-separated entries in one FontPath

# command (or a combination of both methods)

# 

# 

    FontPath   "/usr/share/fonts/misc/"

    FontPath   "/usr/share/fonts/Type1/"

    FontPath   "/usr/share/fonts/100dpi/"

    FontPath   "/usr/share/fonts/75dpi/"

EndSection

# **********************************************************************

# Input devices

# **********************************************************************

# **********************************************************************

# Core keyboard's InputDevice section

# **********************************************************************

Section "InputDevice"

    Identifier   "Keyboard1"

    Driver   "kbd"

    Option "AutoRepeat" "500 30"

    Option "XkbRules"   "xorg"

    Option "XkbModel"   "pc105"

    Option "XkbLayout"   "ca(fr)"

EndSection

#**********************************************************************

#Core Pointer's InputDevice section

#**********************************************************************

Section "InputDevice"

# Identifier and driver

    Identifier   "Mouse1"

    Driver   "mouse"

    Option "Protocol"    "Auto"   # Auto detect

    Option "Device"      "/dev/input/mice"

    Option "Name"        "Logitech USB Gaming Mouse"

    Option "ZAxisMapping"   "4 5 6 7"

    Option "SendCoreEvents" "true"

    Option "Emulate3Buttons"

EndSection

# **********************************************************************

# Monitor section

# **********************************************************************

# Any number of monitor sections may be present

Section "Monitor"

    Identifier  "LCD"

EndSection

# **********************************************************************

# Graphics device section

# **********************************************************************

# Any number of graphics device sections may be present

# Standard VGA Device:

Section "Device"

    Identifier   "Standard VGA"

    VendorName   "Unknown"

    BoardName   "Unknown"

    Driver     "vga"

EndSection

# Device configured by xorgconfig:

Section "Device"

    Identifier  "ATI FIREGL"

     Driver      "fglrx"

EndSection

# **********************************************************************

# Screen sections

# **********************************************************************

# Any number of screen sections may be present.  Each describes

# the configuration of a single screen.  A single specific screen section

# may be specified from the X server command line with the "-screen"

# option.

Section "Screen"

    Identifier  "Screen 1"

    Device      "ATI FireGL"

    Monitor     "LCD"

    DefaultDepth 24

EndSection

# **********************************************************************

# ServerLayout sections.

# **********************************************************************

# Any number of ServerLayout sections may be present.  Each describes

# the way multiple screens are organised.  A specific ServerLayout

# section may be specified from the X server command line with the

# "-layout" option.  In the absence of this, the first section is used.

# When now ServerLayout section is present, the first Screen section

# is used alone.

Section "ServerLayout"

    Identifier  "Simple Layout"

    Screen "Screen 1"

    InputDevice "Mouse1" 

    InputDevice "Keyboard1" "CoreKeyboard"

EndSection

Section "DRI"

    Mode 0666

EndSection

```

----------

## milomak

I did what you suggested but still it is not working

EDIT:

```

localhost ~ # equery list synaptic*

[ Searching for package 'synaptic*' in all categories among: ]

 * installed packages

```

```

localhost ~ # emerge --search synaptic

Searching...

[ Results for search key : synaptic ]

[ Applications found : 6 ]

*  gnome-extra/gsynaptics

      Latest version available: 0.9.10

      Latest version installed: [ Not Installed ]

      Size of files: 377 kB

      Homepage:      http://gsynaptics.sourceforge.jp/

      Description:   A GTK+ based configuration utility for the synaptics driver

      License:       GPL-2

*  kde-misc/ksynaptics

      Latest version available: 0.3.3

      Latest version installed: [ Not Installed ]

      Size of files: 814 kB

      Homepage:      http://qsynaptics.sourceforge.net/

      Description:   synaptics touchpad configuration tool

      License:       GPL-2

*  x11-drivers/synaptics

      Latest version available: 0.14.6

      Latest version installed: [ Not Installed ]

      Size of files: 123 kB

      Homepage:      http://w1.894.telia.com/~u89404340/touchpad/

      Description:   Driver for Synaptics touchpads

      License:       GPL-2

*  x11-drivers/xf86-input-synaptics [ Masked ]

      Latest version available: 0.99.3-r1

      Latest version installed: [ Not Installed ]

      Size of files: 278 kB

      Homepage:      http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/

      Description:   Driver for Synaptics touchpads

      License:       MIT

*  x11-libs/libsynaptics

      Latest version available: 0.14.6c

      Latest version installed: [ Not Installed ]

      Size of files: 216 kB

      Homepage:      http://qsynaptics.sourceforge.net/

      Description:   library for accessing synaptics touchpads

      License:       GPL-2

*  xfce-extra/gsynaptics-mcs-plugin

      Latest version available: 1.0.0

      Latest version installed: [ Not Installed ]

      Size of files: 273 kB

      Homepage:      http://goodies.xfce.org/projects/mcs-plugins/gsynaptics-mcs-plugin

      Description:   a simple MCS plugin that starts gsynaptics and launches gsynaptics-init

      License:       GPL-2

```

I will run emerge ksynaptics and report back after that.

----------

## d2_racing

I think that you need to install this one : x11-drivers/synaptics

----------

## szczerb

Actually you need to add "synaptics" to your INPUT_DEVICES in your make.conf and then 'emerge -DuNva world'. The driver will get automatically pulled in.

----------

## d2_racing

That's what I said earlier : 

```
INPUT_DEVICES="keyboard mouse evdev synaptics" 
```

----------

## milomak

 *d2_racing wrote:*   

> I think that you need to install this one : x11-drivers/synaptics

 

I assumed that ksynaptics would pull it as a dependency. I was mistaken

But even after installing it and running the emerge command above, it still doesn't work.

----------

## milomak

Here are the packages that I have installed

```

localhost ~ # equery list synap

[ Searching for package 'synap' in all categories among: ]

 * installed packages

[I--] [  ] kde-misc/ksynaptics-0.3.3 (0)

[I--] [  ] x11-drivers/synaptics-0.14.6 (0)

[I--] [  ] x11-libs/libsynaptics-0.14.6c (0)
```

However the scroll still just moves the mouse up or down instead of scrolling.

When I load ksyanptic through the KDE Control Center, I get this error

```

Shared Memory is not accessible

Please add the option 'SHMConfig' "on"' into the 

touchpad section of /etc/X11/xorg.conf
```

----------

## milomak

While searching around at what i could possibly add to xorg.conf, I noticed that in a number of other peoples xorg files, there was a reference to /dev/psaux. I do not have this on my system. Could it be the cause?

I also added the below to my xorg

```

Section "InputDevice"

        Identifier      "Synaptics Touchpad"

        Driver          "synaptics"

        Option          "SendCoreEvents"        "true"

#       Option          "Device"                "/dev/psaux"

        Option          "Protocol"              "auto-dev"

        Option          "HorizEdgeScroll"       "0"

        Option          "SHMConfig"             "on"

EndSection

```

But I still get the SHMConfig error message in ksynaptic.

----------

## keenblade

 *milomak wrote:*   

>  *d2_racing wrote:*   I think that you need to install this one : x11-drivers/synaptics 
> 
> I assumed that ksynaptics would pull it as a dependency. I was mistaken
> 
> But even after installing it and running the emerge command above, it still doesn't work.

 

kde-misc/ksynaptics is not developed anymore. You will get blocks soon. I suggest to use ~arch for synaptics:

```

x11-drivers/xf86-input-synaptics

```

Then control it with fdi files or xorg.conf.

To see available options:

```

synclient -l

```

If you will use xorg.conf, this will give you the options with right syntax:

```

synclient -l | awk '/=/{printf "Option \"%s\" \"%s\"\n",$1,$3}'

```

----------

## tarpman

You might be interested in bug 236983.

----------

## milomak

Before I go the xf86 route, how can I find out to what device the touchpad is attached to, ie something like /dev/psaux

----------

## tarpman

/dev/psaux is an artifact of an older age and is no longer needed (my kernel doesn't even have the psaux driver built).  synaptics uses a /dev/event* device and notes which one in the X log /var/log/Xorg.0.log.

----------

## milomak

I did an lshal and the device may be /dev/input/event2

```

udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port_logicaldev_input'

  info.capabilities = {'input', 'input.touchpad'} (string list)

  info.category = 'input'  (string)

  info.parent = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port'  (string)

  info.product = 'SynPS/2 Synaptics TouchPad'  (string)

  info.subsystem = 'input'  (string)

  info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port_logicaldev_input'  (string)

  input.device = '/dev/input/event2'  (string)

  input.originating_device = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port'  (string)

  input.product = 'SynPS/2 Synaptics TouchPad'  (string)

  linux.device_file = '/dev/input/event2'  (string)

  linux.hotplug_type = 2  (0x2)  (int)

  linux.subsystem = 'input'  (string)

  linux.sysfs_path = '/sys/devices/platform/i8042/serio4/input/input2/event2'  (string)
```

So I added the below to xorg.conf

```

Section "InputDevice"

        Driver      "synaptics"

        Identifier  "TouchPad"

        Option      "SendCoreEvents"

        Option      "Device" "/dev/input/event2"

        Option      "Protocol" "auto-dev"

        Option      "SHMConfig" "on"

        Option      "PalmDetect" "on"

EndSection

```

Still no go. And there is also this

```

root ~ # cat /var/log/Xorg.0.log | grep TouchPad

root ~ # cat /var/log/Xorg.0.log | grep EE

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

(II) Loading extension MIT-SCREEN-SAVER

root ~ # cat /var/log/Xorg.0.log | grep synaptic

```

----------

## tarpman

you shouldn't have to specify a device for synaptics, anyway.  that's what the auto-dev thing is for.  and no, it doesn't use hal for that.

are you even including the touchpad inputdevice in your server layout?

----------

## milomak

Ah. I had forgotten to uncomment that line. Thanks.

```

InputDevice    "TouchPad" "AlwaysCore"
```

----------

## fbcyborg

Hello, 

I have just upgraded to xorg-server-1.5.3-r1 which pulled in also xf86-input-synaptics-0.99.3-r1 but now, tap-to-click is no longer working.

I also read this bug report and this entire thread.

Even though I made my own fdi config file, also vertical (and horizontal) edge scrolling function doesn't work anymore.

This is my 11-x11-synaptics.fdi file:

```
<?xml version="1.0" encoding="ISO-8859-1"?>

<deviceinfo version="0.2">

  <device>

    <match key="info.capabilities" contains="input.touchpad">

      <match key="info.product" contains="Synaptics TouchPad">

        <merge key="input.x11_driver" type="string">synaptics</merge>

    <!-- Arbitrary options can be passed to the driver using

         the input.x11_options property since xorg-server-1.5. -->

    <!-- EXAMPLE:

    -->

        <merge key="input.x11_options.SHMConfig" type="string">on</merge>

        <merge key="input.x11_options.SendCoreEvents" type="string">true</merge>

        <merge key="input.x11_options.Protocol" type="string">auto-dev</merge>

        <merge key="input.x11_options.LeftEdge" type="string">120</merge>

        <merge key="input.x11_options.RightEdge" type="string">930</merge>

        <merge key="input.x11_options.BottomEdge" type="string">700</merge>

    <merge key="input.x11_options.FingerLow" type="string">14</merge>

    <merge key="input.x11_options.FingerHigh" type="string">15</merge>

    <merge key="input.x11_options.MaxTapTime" type="string">180</merge>

        <merge key="input.x11_options.MaxTapMove" type="string">110</merge>

        <merge key="input.x11_options.ClickTime" type="string">0</merge>

        <merge key="input.x11_options.EmulateMidButtonTime" type="string">0</merge>

        <merge key="input.x11_options.VertScrollDelta" type="string">10</merge>

    <merge key="input.x11_options.VertEdgeScroll" type="string">true</merge>

    <merge key="input.x11_options.HorizEdgeScroll" type="string">true</merge>

    <merge key="input.x11_options.HorizScrollDelta" type="string">10</merge>

    <merge key="input.x11_options.MinSpeed" type="string">0.45</merge>

    <merge key="input.x11_options.MaxSpeed" type="string">0.75</merge>

    <merge key="input.x11_options.AccelFactor" type="string">0.020</merge>

        <merge key="input.x11_options.EdgeMotionMinSpeed" type="string">200</merge>

        <merge key="input.x11_options.EdgeMotionMaxSpeed" type="string">200</merge>

        <merge key="input.x11_options.UpDownScrolling" type="string">1</merge>

        <merge key="input.x11_options.CircularScrolling" type="string">0</merge>

        <merge key="input.x11_options.CircScrollDelta" type="string">0.1</merge>

        <merge key="input.x11_options.CircScrollTrigger" type="string">2</merge>

        <merge key="input.x11_options.RTCornerButton" type="string">2</merge>

        <merge key="input.x11_options.RBCornerButton" type="string">3</merge>

        <merge key="input.x11_options.TapButton1" type="string">1</merge>

        <merge key="input.x11_options.TapButton2" type="string">2</merge>

        <merge key="input.x11_options.TapButton3" type="string">3</merge>

      </match>

      <match key="info.product" contains="/dev/psaux">

      </match>

      <match key="info.product" contains="AlpsPS/2 ALPS">

      </match>

      <match key="info.product" contains="appletouch">

      </match>

      <match key="info.product" contains="bcm5974">

      </match>

    </match>

  </device>

</deviceinfo>

```

I also enabled SHMConfig in the fdi file but:

```
# synclient -l

Can't access shared memory area. SHMConfig disabled?
```

How to fix this?

Thanks.

----------

## keenblade

 *fbcyborg wrote:*   

> ...
> 
> I also enabled SHMConfig in the fdi file but:
> 
> ```
> ...

 

In my fdi file the value is "true" not "on". Try following to see if it helps.

```

<merge key="input.x11_options.SHMConfig" type="string">true</merge>

```

And my whole "11-x11-synaptics.fdi" file which I am very happy with:

```

<?xml version="1.0" encoding="ISO-8859-1"?>

<deviceinfo version="0.2">

  <device>

    <match key="info.capabilities" contains="input.touchpad">

        <merge key="input.x11_driver" type="string">synaptics</merge>

        <merge key="input.x11_options.SHMConfig" type="string">true</merge>

        <merge key="input.x11_options.MaxTapMove" type="string">200</merge>

        <merge key="input.x11_options.VertEdgeScroll" type="string">0</merge>

        <merge key="input.x11_options.HorizEdgeScroll" type="string">0</merge>

        <merge key="input.x11_options.VertTwoFingerScroll" type="string">1</merge>

        <merge key="input.x11_options.HorizTwoFingerScroll" type="string">1</merge>

        <merge key="input.x11_options.CircularScrolling" type="string">0</merge>

        <merge key="input.x11_options.LockedDrags" type="string">1</merge>

        <merge key="input.x11_options.PalmDetect" type="string">1</merge>

        <merge key="input.x11_options.TapButton1" type="string">1</merge>

        <merge key="input.x11_options.TapButton2" type="string">2</merge>

        <merge key="input.x11_options.TapButton3" type="string">3</merge>

   <merge key="input.x11_options.RTCornerButton" type="string">2</merge>

    </match>

  </device>

</deviceinfo>

```

----------

## fbcyborg

 *keenblade wrote:*   

> 
> 
> In my fdi file the value is "true" not "on". Try following to see if it helps.
> 
> ```
> ...

 I already tried with it, but it's the same. SHMConfig is still detected as not acritive. I don't understand why. *keenblade wrote:*   

> 
> 
> And my whole "11-x11-synaptics.fdi" file which I am very happy with:
> 
> ```
> ...

 

I tried your config file but using it, my touchpad is dead. It seems it is not recognized at all.

Is it possible there isn't any official guide to get my synaptics touchpad working with hal?

Do you think these lines of my 11-x11-synaptics.fdi file could be uncorrect?

```
<match key="info.product" contains="/dev/psaux">

      </match>

      <match key="info.product" contains="AlpsPS/2 ALPS">

      </match>

      <match key="info.product" contains="appletouch">

      </match>

      <match key="info.product" contains="bcm5974">

      </match> 
```

My touchpad has been recognized by lsusb as it follows:

```
Bus 005 Device 002: ID 044e:300c Alps Electric Co., Ltd

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               2.00

  bDeviceClass          224 Wireless

  bDeviceSubClass         1 Radio Frequency

  bDeviceProtocol         1 Bluetooth

  bMaxPacketSize0        64

  idVendor           0x044e Alps Electric Co., Ltd

  idProduct          0x300c

  bcdDevice           19.15

  iManufacturer           1 ALPS

  iProduct                2 UGX

  iSerial                 0

  bNumConfigurations      1

```

----------

## VoidMage

Please always check if the settings from your fdi file are actually applied,

this saves both you and us lots of headache.

----------

## keenblade

 *fbcyborg wrote:*   

> 
> 
> I tried your config file but using it, my touchpad is dead. It seems it is not recognized at all.
> 
> Is it possible there isn't any official guide to get my synaptics touchpad working with hal?
> ...

 

Have you look at the new Synaptics_Touchpad gentoo wiki ? It covers ALPS touchpads, too. Also your SHMConfig problem is explained there: "Setting the "SHMConfig" option to true doesn't work in newer Xorg. Change it to on." Also try this xorg.conf :

```

"Option" "SHMConfig" "on" 

```

 *Quote:*   

> 
> 
> Do you think these lines of my 11-x11-synaptics.fdi file could be uncorrect?
> 
> ```
> ...

 

I don't know if it is correct, but I would not use it with hal, if possible. I don't have any touchpad setting in xorg.conf. Try to comment those lines if you have. They may disable hal detection.

----------

## fbcyborg

 *VoidMage wrote:*   

> Please always check if the settings from your fdi file are actually applied,
> 
> this saves both you and us lots of headache.

 

Yes but, how to do it? Shall I have to use synclient -l ?? In this case, I can't.

 *keenblade wrote:*   

> 
> 
> Have you look at the new Synaptics_Touchpad gentoo wiki ? It covers ALPS touchpads, too. 

 Yes, I've just done it. Thanks for notifying me that URL. *keenblade wrote:*   

> Also your SHMConfig problem is explained there: "Setting the "SHMConfig" option to true doesn't work in newer Xorg. 

 I read all of that solutions but they didn't work for me. I activated the SHMConfig option in my .fdi file; I also changed the option to "on" instead of "true" (I also tried to activate it first in the xorg.conf file and then in the fdi file but not at the same time, obviously) but it didn't solve the SHM problem.   :Evil or Very Mad:  ; the debug use flag is disabled; I upgraded xorg-x11 to 7.3 version but nothing changed; finally, I also tried to compile psmouse as module but it's the same as before. *keenblade wrote:*   

> Change it to on." Also try this xorg.conf :
> 
> ```
> 
> "Option" "SHMConfig" "on" 
> ...

 

Me too. I don't have any InputDevice section in the xorg.conf file related to the touchpad since I have upgraded to the 1.5 version of xorg.

Thanks a lot for your support guys. I appreciate you.

----------

## keenblade

fbcyborg, check your /var/log/Xorg.0.log file. First you can start with this to see if SHMConfig is applied:

```

cat /var/log/Xorg.0.log | grep SHMC

```

in my case it outputs:

```

(**) Option "SHMConfig" "true"

```

You can check if the options in fdi file are applied, like this for HorizEdgeScroll:

```

cat /var/log/Xorg.0.log | grep HorizEdgeScroll

```

Also try to migrate your fdi file to xorg.conf. Maybe they work fine there until a fix.

----------

## VoidMage

Please read nearly any of the hal/evdev threads, 

in most of them it's explain in detail how to check that.

----------

## fbcyborg

 *keenblade wrote:*   

> fbcyborg, check your /var/log/Xorg.0.log file. First you can start with this to see if SHMConfig is applied:
> 
> ```
> 
> cat /var/log/Xorg.0.log | grep SHMC
> ...

  :Sad:  In my case returns: nothing.  :Sad: 

I also tried to not use hal to load the touchpad properties. I set up the xorg.conf file as I did using an old version of xorg-server but the result is the same. I tried to load SHMConfig into the InputDevice Section (for the touchpad) but nothing changed. *keenblade wrote:*   

> 
> 
> You can check if the options in fdi file are applied, like this for HorizEdgeScroll:
> 
> ```
> ...

 It returns nothing too. *keenblade wrote:*   

> 
> 
> Also try to migrate your fdi file to xorg.conf. Maybe they work fine there until a fix.

 

I've just tried. As I told you some rows above, I came back to my old configuration options. My InputDevice Section (related to the touchpad) is the following:

```
Section "InputDevice"

    Identifier     "Synaptics Touchpad"

    Driver     "synaptics"

    Option     "SendCoreEvents"        "true"

    Option     "Device"        "/dev/psaux"

    Option     "Protocol"      "auto-dev"

    Option     "LeftEdge"      "120"

    Option     "RightEdge"     "930"

    Option     "TopEdge"       "120"

    Option     "BottomEdge"    "700"

    Option     "FingerLow"     "14"

    Option     "FingerHigh"    "15"

    Option     "MaxTapTime"    "180"

    Option     "MaxTapMove"    "110"

    Option     "ClickTime"     "0"

    Option     "EmulateMidButtonTime" "75"

    Option     "VertScrollDelta" "10"

    Option     "HorizScrollDelta" "0"

    Option     "MinSpeed"      "0.45"

    Option     "MaxSpeed"      "0.75"

    Option     "AccelFactor"   "0.020"

    Option     "EdgeMotionMinSpeed" "200"

    Option     "EdgeMotionMaxSpeed" "200"

    Option     "UpDownScrolling" "1"

    Option     "CircularScrolling" "0"

    Option     "CircScrollDelta" "0.1"

    Option     "CircScrollTrigger" "2"

    Option     "RTCornerButton" "2"

    Option     "RBCornerButton" "3"

    Option     "TapButton2"    "2"

    Option     "SHMConfig"             "On"

EndSection

```

If I use these settings, my touchpad works like now. No tap-to-click and no horizontal edge scrolling.

----------

## keenblade

For horizontal scroling you can use "CircularScrolling". Try adding these in your xorg.conf to see what will happen.

```

    Option     "CircularScrolling" "1"

    Option     "MaxTapMove"    "200" 

    Option     "TapButton1"    "1" 

    Option     "TapButton2"    "2" 

    Option     "TapButton3"    "3" 

```

After xorg update, did you re-emerge x11-drivers/xf86-input-synaptics and x11-drivers/xf86-input-evdev? Do you have hal userflag globally? In your make.conf do you have synaptics and evdev in INPUT_DEVICES?

INPUT_DEVICES="keyboard mouse evdev synaptics"

Not: I believe evdev is also required for touchpad.

----------

## VoidMage

No, evdev is not used by touchpad, if it's correctly configured in hal 

(IOW, told to use synaptics driver).

----------

## fbcyborg

 *keenblade wrote:*   

> For horizontal scroling you can use "CircularScrolling". Try adding these in your xorg.conf to see what will happen.
> 
> ```
> 
>     Option     "CircularScrolling" "1"
> ...

 

Hello!

I've just tried to enable CircularScrolling in my xorg.conf and now, I can scroll pages again.. Woow!

You told to enable Horizontal Scrolling I had to set CircularScrolling to 1, but it enabed vertical

scrolling, instead. I didn't try to scroll something horizontally but now, it's just good to have 

vertical scrolling enabled.

 *keenblade wrote:*   

> 
> 
> After xorg update, did you re-emerge x11-drivers/xf86-input-synaptics and x11-drivers/xf86-input-evdev?

 Of course yes! *keenblade wrote:*   

>  Do you have hal userflag globally? 

 No, but xorg-server has been compiled with hal use flag activated. *keenblade wrote:*   

> In your make.conf do you have synaptics and evdev in INPUT_DEVICES?
> 
> INPUT_DEVICES="keyboard mouse evdev synaptics"

 Yes, I have.

Now, I have to get the touchpad working with hal.. I should make some attempt.

Thanks a lot!

----------

## keenblade

I prefer two finger scrolling. With two finger pressed I can scroll horizontal and vertical at the same time. If it works for you, you may like it:

```

    Option     "VertTwoFingerScroll" "1"

    Option     "HorizTwoFingerScroll"    "1"

```

I would try following command to see if any important package misses the hal useflag that may help to recognize .fdi files.

```

USE="hal" emerge -vpuDN world

```

----------

## fbcyborg

I think my touchpad doesn't support two finger scrolling. I tried to set it up but it doesn't work.

I also tried to see if any package would be emerged again with hal USE flag globally enabled, but there's no package to emerge.

Thanks

----------

## DaggyStyle

 *fbcyborg wrote:*   

> I think my touchpad doesn't support two finger scrolling. I tried to set it up but it doesn't work.
> 
> I also tried to see if any package would be emerged again with hal USE flag globally enabled, but there's no package to emerge.
> 
> Thanks

 

does one finger scrolling works?

----------

## fbcyborg

Yes, one finger scrolling works.

----------

