You are not logged in.
After having consulting the the excellent wiki here on the site I still cannot seem to get the Synaptics TouchPad to work the way I want it to my laptop (an ASUS M50VM-A1). I have been trying to configure by adding the appropiate files to /etc/hal/fdi/policy, but so far I have been unsucessful.
Here is my current file 99-x11-synaptics.fdi (I have also tried it as 11-x11-synaptics.fdi )
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.product" contains="SynPS/2 Synaptics TouchPad">
<append key="info.capabilities" type="strlist">input.touchpad</append>
</match>
<match key="info.capabilities" contains="input.touchpad">
<merge key="input.x11_driver" type="string">synaptics</merge>
<merge key="input.x11_options.TapButton1" type="string">1</merge>
<merge key="input.x11_options.TapButton2" type="string">3</merge>
<merge key="input.x11_options.TapButton3" type="string">2</merge>
<merge key="input.x11_options.VertEdgeScroll" type="string">false</merge>
<merge key="input.x11_options.VerteScrollDelta" type="string">2</merge>
<merge key="input.x11_options.VertTwoFingerScroll" type="string">true</merge
<merge key="input.x11_options.FastTaps" type="string">1</merge>
<merge key="input.x11_options.HorizEdgeScroll" type="string">false</merge>
<merge key="input.x11_options.HorizScrollDelta" type="string">1</merge>
<merge key="input.x11_options.HorizTwoFingerScroll" type="string">true</merge>
<merge key="input.x11_options.EmulateTwoFingerMinW" type="string">7</merge>
<merge key="input.x11_options.EmulateThreeFingerMinW" type="string">12</merge>
<merge key="input.x11_options.shmconfig" type="string">on</merge>
</match>
</device>
</deviceinfo>
As far as I can tell it is not working at all. I was able to turn the touchpad on and off via syndaemon when SHMconfig was turned on with another .fdi file.
Here is the entry in /proc/bus/input/devices that pertains to the touchpad
I: Bus=0011 Vendor=0002 Product=0007 Version=02b1
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio4/input0
S: Sysfs=/devices/platform/i8042/serio4/input/input9
U: Uniq=
H: Handlers=mouse1 event9
B: EV=b
B: KEY=420 70000 0 0 0 0
B: ABS=11000003
And lastly here is my xorg.conf
Section "Files"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/100dpi:unscaled"
FontPath "/usr/share/fonts/75dpi:unscaled"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/Type1"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
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
Section "Module"
Load "dbe"
Load "dri"
Load "glx"
Load "dri2"
Load "extmod"
Load "record"
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 "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Device"
Identifier "Card0"
Driver "nvidia"
VendorName "nVidia Corporation"
BoardName "G96 [GeForce 9600M GS]"
BusID "PCI:1:0:0"
EndSection
Section "ServerFlags"
Option "DontZap" "False"
EndSection
What exactly I am doing wrong? An also on an unrelated note: why is it that I cannot restart X--despite having "DontZap" set to false--with ctrl-alt-backspace?
Thanks!
Offline
So it turns out I can turn the touchpad on and off with synclient TouchpadOff=1 (which would indicate that SHMconfig is on, wouldn't it?). But the rule described here http://wiki.archlinux.org/index.php/Tou … _detection no longer works since specifying the the SHMconfig option in the fdi file fore the touchpad rather that a separate file as described here: https://help.ubuntu.com/community/Synap … #shmconfig
Offline
I haven't analyzed your fdi file, but here's my working /etc/hal/fdi/policy/11-x11-synaptics.fdi, with comments removed. Maybe it'll help you:
<?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>
</match>
<match key="info.product" contains="AlpsPS/2 ALPS">
<merge key="input.x11_driver" type="string">synaptics</merge>
</match>
<match key="info.product" contains="appletouch">
<merge key="input.x11_driver" type="string">synaptics</merge>
</match>
<match key="info.product" contains="bcm5974">
<merge key="input.x11_driver" type="string">synaptics</merge>
</match>
<match key="input.x11_driver" contains="synaptics">
<merge key="input.x11_options.SHMConfig" type="string">true</merge>
<merge key="input.x11_options.TapButton1" type="string">0</merge> <!-- mouse button for non-corner trackpad click -->
<merge key="input.x11_options.TapButton2" type="string">0</merge> <!-- mouse button for 2-finger click -->
<merge key="input.x11_options.TapButton3" type="string">0</merge> <!-- mouse button for 3-finger click -->
<merge key="input.x11_options.RightEdge" type="string">930</merge>
</match>
</match>
</device>
</deviceinfo>
I don't know if this matters, but the file has permissions 644, owner/group are root/root.
Offline
You have /etc/xorg.conf on your system, which means that Xorg will not try to autodetect certain hardware, like your Synaptics mouse. I think you missed one part of the wiki page. Try this step.
Offline
You have /etc/xorg.conf on your system, which means that Xorg will not try to autodetect certain hardware, like your Synaptics mouse. I think you missed one part of the wiki page. Try this step.
I don't have most of what that wiki link describes, and I'm working fine. I think that section of the wiki only describes what you need to do if input hotplugging is disabled.
However, I notice that I do have this in my xorg.conf:
Section "Module"
...
Load "synaptics"
...
EndSection
whereas Zerimas does not. Try adding that also, and restarting X.
Offline
Profjim: I tried your fdi policy and it worked to some degree: upon detection of an external mouse the pad would become disabled. However, when I modified your exact config to look like this:
<?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>
</match>
<match key="info.product" contains="AlpsPS/2 ALPS">
<merge key="input.x11_driver" type="string">synaptics</merge>
</match>
<match key="info.product" contains="appletouch">
<merge key="input.x11_driver" type="string">synaptics</merge>
</match>
<match key="info.product" contains="bcm5974">
<merge key="input.x11_driver" type="string">synaptics</merge>
</match>
<match key="input.x11_driver" contains="synaptics">
<merge key="input.x11_options.SHMConfig" type="string">true</merge>
<merge key="input.x11_options.TapButton1" type="string">1</merge>
<merge key="input.x11_options.TapButton2" type="string">3</merge>
<merge key="input.x11_options.TapButton3" type="string">2</merge>
<merge key="input.x11_options.VertEdgeScroll" type="string">false</merge>
<merge key="input.x11_options.VertScrollDelta" type="string">30</merge>
<merge key="input.x11_options.VertTwoFingerScroll" type="string">true</merge
<merge key="input.x11_options.HorizEdgeScroll" type="string">true</merge>
<merge key="input.x11_options.HorizScrollDelta" type="string">30</merge>
<merge key="input.x11_options.HorizTwoFingerScroll" type="string">true</merge>
<merge key="input.x11_options.SpecialScrollAreaRight" type="string">false</merge>
It ceased to turn off on mouse detection; two finger scrolling would not work, and the rights side of the touch pad still acted as a scroll wheel--despite two option which explicitly disable it.
Last edited by Zerimas (2009-08-27 04:38:43)
Offline
Profjim: could you please possibly post your xorg.conf so I can compare it to my own?
Offline
Hi,
I didn't even touch hal policy files to get my touchpad working - it worked out of the box. I only modified xorg.conf to make it behave as i wanted. I've got lenovo t61.
Here is my xorg.conf
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
InputDevice "SynapticsTouchpad" "SendCoreEvents"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
Load "synaptics"
EndSection
Section "InputDevice"
#Option "Device" "/dev/input/mice"
Identifier "SynapticsTouchpad"
Driver "synaptics"
Option "AlwaysCore" "true" # send events to CorePointer
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "SHMConfig" "false" # configurable at runtime? security risk
Option "LeftEdge" "1700" # x coord left
Option "RightEdge" "5300" # x coord right
Option "TopEdge" "1700" # y coord top
Option "BottomEdge" "4200" # y coord bottom
Option "FingerLow" "25" # pressure below this level triggers release
Option "FingerHigh" "30" # pressure above this level triggers touch
Option "MaxTapTime" "180" # max time in ms for detecting tap
Option "VertEdgeScroll" "true" # enable vertical scroll zone
Option "HorizEdgeScroll" "false" # enable horizontal scroll zone
Option "CornerCoasting" "true" # enable continuous scroll with finger in corner
Option "CoastingSpeed" "0.30" # corner coasting speed
Option "VertScrollDelta" "100" # edge-to-edge scroll distance of the vertical scroll
Option "HorizScrollDelta" "100" # edge-to-edge scroll distance of the horizontal scroll
Option "MinSpeed" "0.10" # speed factor for low pointer movement
Option "MaxSpeed" "0.60" # maximum speed factor for fast pointer movement
Option "AccelFactor" "0.0020" # acceleration factor for normal pointer movements
Option "VertTwoFingerScroll" "true" # vertical scroll anywhere with two fingers
Option "HorizTwoFingerScroll" "true" # horizontal scroll anywhere with two fingers
Option "TapButton1" "1"
Option "TapButton2" "2"
Option "TapButton3" "3"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
Identifier "Wbudowany"
VendorName "Lenovo"
HorizSync 28.0 - 33.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Quadro140"
Driver "nvidia"
VendorName "NVIDIA Corporation"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Quadro140"
Monitor "Wbudowany"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
Do, or do not. There is no try. [Yoda]
Offline
After poking around a bit it seems as if hal is ignoring the fdi policy entirely (apparently synclient doesn't require SHMconfig to be on in order to turn the pad on and off). For those of you that have it working with properly via fdi with hotplugging enable, could you please post what version Xorg you are using?
Offline
Here's my xorg.conf (with comments stripped).
http://pastebin.ca/1544515
Offline
I am having the very same problem as Zerimas. After hours of messing with my fdi settings for my touchpad, Hal continues to ignore them. I'll probably try an xorg.conf file soon, see if that works better (I imagine it SHOULD work), but the whole idea is that I shouldn't need an xorg.conf file at all if my fdi is properly configured. I have no xorg.conf at all right now.
I'm running 64-bit, standard repos (no testing).
*EDIT*
An update for the interested... I've installed GPointing-Devce-Settings (from AUR) and it seems to have no problem configuring things on that end. Apparently Hal is automatically enabling SHMConfig to ON? As it turns out though, this may be enough of a solution for my needs, as I can keep scrolling on and effectively turn tap-click off by moving the slider for tap time all the way left.
*EDIT 2*
GPointing-Device-Settings works okay, but I have to run the program and tweak the settings for each session/boot, which sucks.
*EDIT 3*
Okay, I got things working for me. I'm too busy right now to properly compare and test the differences (synclient-l output and Xorg log file) between the main xf86-input-synaptics driver and the svn one in AUR, but things are working for me now that I installed the one from AUR. Loking at the PKGBUILD with little to no idea of what I'm looking for, I see that the AUR svn build is sourcing our 11-x11-blah-synaptic file... maybe somehow the main version of the driver missed out on that?
Anyhow, give it a try Zerimas, if you're still having the problem, and let me/us know if it helps.
(you'll have to remove the original xf86-input-synaptics package first of course, due to conflict with the AUR version)
Last edited by krisvek (2009-09-03 18:48:26)
Offline