You are not logged in.
Pages: 1
Hi!
It seems I can't figure out how to set the two finger scrolling on my touchpad.
It worked out of the box on the other lapton on which I've installed Arch and I'm quite addicted to it...:(
I followed the Wiki, so here's my /etc/hal/fdi/policy/11-x11-synaptics.fdi
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.product" contains="ETPS/2 Elantech 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">2</merge>
<merge key="input.x11_options.TapButton3" type="string">3</merge>
<merge key="input.x11_options.SHMConfig" type="string">true</merge>
<merge key="input.x11_options.MaxTapMove" type="string">2000</merge>
<merge key="input.x11_options.VertEdgeScroll" type="string">true</merge>
<merge key="input.x11_options.VertTwoFingerScroll" type="string">true</merge>
<merge key="input.x11_options.HorizTwoFingerScroll" type="string">true</merge>
<merge key="input.x11_options.EmulateTwoFingerMinZ" type="string">60</merge>
<merge key="input.x11_options.CircularScrolling" type="string">true</merge>
</match>
</device>
</deviceinfo>
This is synclient -L:
Parameter settings:
LeftEdge = 1752
RightEdge = 5192
TopEdge = 1620
BottomEdge = 4236
FingerLow = 24
FingerHigh = 29
FingerPress = 255
MaxTapTime = 180
MaxTapMove = 2000
MaxDoubleTapTime = 180
SingleTapTimeout = 180
ClickTime = 100
FastTaps = 0
EmulateMidButtonTime = 75
EmulateTwoFingerMinZ = 120
EmulateTwoFingerMinW = 7
VertScrollDelta = 100
HorizScrollDelta = 100
VertEdgeScroll = 1
HorizEdgeScroll = 0
CornerCoasting = 0
VertTwoFingerScroll = 1
HorizTwoFingerScroll = 1
MinSpeed = 0.4
MaxSpeed = 0.7
AccelFactor = 0.00995223
TrackstickSpeed = 40
EdgeMotionMinZ = 29
EdgeMotionMaxZ = 159
EdgeMotionMinSpeed = 1
EdgeMotionMaxSpeed = 401
EdgeMotionUseAlways = 0
UpDownScrolling = 1
LeftRightScrolling = 1
UpDownScrollRepeat = 1
LeftRightScrollRepeat = 1
ScrollButtonRepeat = 100
TouchpadOff = 0
GuestMouseOff = 0
LockedDrags = 0
LockedDragTimeout = 5000
RTCornerButton = 0
RBCornerButton = 0
LTCornerButton = 0
LBCornerButton = 0
TapButton1 = 1
TapButton2 = 2
TapButton3 = 3
ClickFinger1 = 1
ClickFinger2 = 1
ClickFinger3 = 1
CircularScrolling = 1
CircScrollDelta = 0.1
CircScrollTrigger = 0
CircularPad = 0
PalmDetect = 0
PalmMinWidth = 10
PalmMinZ = 199
CoastingSpeed = 0
PressureMotionMinZ = 29
PressureMotionMaxZ = 159
PressureMotionMinFactor = 1
PressureMotionMaxFactor = 1
GrabEventDevice = 1
TapAndDragGesture = 1
AreaLeftEdge = 0
AreaRightEdge = 0
AreaTopEdge = 0
AreaBottomEdge = 0
So everything should be set fine.
Another problem is that if I run synclient -m 100, as suggested in the wiki I got:
time x y z f w l r u d m multi gl gm gr gdx gdy
0.000 0 0 0 0 0 0 0 0 0 0 00000000 0 0 0 0 0
But nothing changes if I touch or move the touchpad.
I really don't know what to do...any help would be much appreciated!
Thank you!
EDIT: Cicular Scrolling works perfectly...but I don't use it!
Last edited by rent0n (2009-11-15 18:42:23)
rent0n@deviantART | rent0n@bitbucket | rent0n@identi.ca | LRU #337812
aspire: Acer Aspire 5920 Arch Linux x86_64 | beetle: Gericom Beetle G733 Arch Linux i686
Offline
Read the wiki page on synaptics, it shows you how to enable it in xorg.conf. Works fine on my Eee
[git] | [AURpkgs] | [arch-games]
Offline
Offline
Read the wiki page on synaptics, it shows you how to enable it in xorg.conf. Works fine on my Eee
Well, I was trying not to use xorg.conf since it's deprecated in favour of HAL (and I don't have a xorg.conf actually), but I would try if it's the only possibility.
this solved mine but if you still have problem have a look also here
BTW Mid-button-emulation will work by two finger tapping as 2finger scrolling will do.
I had already seen the first link, but my problem is that I'm not able to use synclient because it only shows a list of zeros and nothing else.
I've tried to change that parameter with 10 50 100 and 1000 but nothing changes actually.
The second link doesn't work, can you retype it please?
I'm sure there's something wrong... I absolutely need this lovely two-finger scroll to work!
Thank you for any help!
rent0n@deviantART | rent0n@bitbucket | rent0n@identi.ca | LRU #337812
aspire: Acer Aspire 5920 Arch Linux x86_64 | beetle: Gericom Beetle G733 Arch Linux i686
Offline
You have the driver installed right? xf86-input-synaptics
And you don't have the old synaptics package, right?
Just to be sure
Offline
Here, try mine:
<?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>
<!-- 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.LeftEdge" type="string">120</merge>
-->
<merge key="input.x11_options.Device" type="string">/dev/input/mouse0</merge>
<merge key="input.x11_options.Protocol" type="string">auto-dev</merge>
<merge key="input.x11_options.LeftEdge" type="string">1700</merge>
<merge key="input.x11_options.RightEdge" type="string">5300</merge>
<merge key="input.x11_options.TopEdge" type="string">1700</merge>
<merge key="input.x11_options.BottomEdge" type="string">4200</merge>
<merge key="input.x11_options.FingerLow" type="string">25</merge>
<merge key="input.x11_options.FingerHigh" type="string">30</merge>
<merge key="input.x11_options.MaxTapTime" type="string">180</merge>
<merge key="input.x11_options.MaxTapMove" type="string">220</merge>
<merge key="input.x11_options.VertScrollDelta" type="string">100</merge>
<merge key="input.x11_options.MinSpeed" type="string">0.12</merge>
<merge key="input.x11_options.MaxSpeed" type="string">0.18</merge>
<merge key="input.x11_options.AccelFactor" type="string">0.010</merge>
<merge key="input.x11_options.SHMConfig" type="string">on</merge>
<merge key="input.x11_options.AlwaysCore" type="string">true</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.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>
</device>
</deviceinfo>
Offline
@SoleSoul: Yes I've installed the xf86-input-synaptics package.
@VirtualRider: Thanks, I've tried it, but with no luck (however, I can't see a two-finger scrolling section in your file).
I feel that I'm facing another kind of problem: it seems that HAL is not reading my 11-x11-synaptics-fdi at all.
How can I be sure about this?
Why does my synclient -m 100 doesn't work? Why is it displying only zero (0) and does not change at all?
On my other laptop, the two-finger scrolling works out-of-the-box without using any file.
I can't see any solutions.
rent0n@deviantART | rent0n@bitbucket | rent0n@identi.ca | LRU #337812
aspire: Acer Aspire 5920 Arch Linux x86_64 | beetle: Gericom Beetle G733 Arch Linux i686
Offline
Hm, you don't have a xorg.conf so input hotplugging shouldn't be disabled - but you could try a minimal xorg instead?
PS: I don't need 2-finger-scrolling so it's not in my synaptics config, but it works in both directions
Offline
If you run the command
$ hal-device
You'll get an output of all HAL-devices. Your touchpad should be there and if your fdi is used, all the options should be merged with that device. If you find the uid of the touchpad-device, you can chose to show only that device (just read the help for hal-device)
With my macbook, I had to change the 'match'-rule from what was default. So if your match-rule is not matched, your fdi-file will not get merged.
Capiche?
Zl.
Offline
If you run the command
$ hal-device
hal-device /org/freedesktop/Hal/devices/platform_i8042_i8042_AUX1_port_logicaldev_input
udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX1_port_logicaldev_input'
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'input' (string)
input.device = '/dev/input/event2' (string)
input.product = 'SynPS/2 Synaptics TouchPad' (string)
input.x11_driver = 'synaptics' (string)
info.subsystem = 'input' (string)
info.product = 'SynPS/2 Synaptics TouchPad' (string)
info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX1_port_logicaldev_input' (string)
input.originating_device = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX1_port' (string)
input.x11_options.TapButton1 = '1' (string)
input.x11_options.TapButton2 = '2' (string)
linux.device_file = '/dev/input/event2' (string)
input.x11_options.TapButton3 = '3' (string)
input.x11_options.AlwaysCore = 'true' (string)
input.x11_options.MinSpeed = '0.09' (string)
input.x11_options.MaxSpeed = '0.18' (string)
input.x11_options.Emulate3Buttons = 'true' (string)
input.x11_options.SHMConfig = 'true' (string)
input.x11_options.AccelFactor = '0.032' (string)
input.x11_options.LeftEdge = '1700' (string)
input.x11_options.RightEdge = '5300' (string)
input.x11_options.TopEdge = '1700' (string)
input.x11_options.BottomEdge = '4200' (string)
input.x11_options.FingerLow = '25' (string)
input.x11_options.FingerHigh = '30' (string)
input.x11_options.MaxTapTime = '180' (string)
input.x11_options.MaxTapMove = '220' (string)
input.x11_options.Device = '/dev/input/event2' (string)
input.x11_options.HorizEdgeScroll = 'true' (string)
input.x11_options.HorizScrollDelta = '100' (string)
input.x11_options.EmulateTwoFingerMinZ = '55' (string)
input.x11_options.VertEdgeScroll = 'true' (string)
input.x11_options.VertScrollDelta = '100' (string)
input.x11_options.RTCornerButton = '2' (string)
linux.sysfs_path = '/sys/devices/platform/i8042/serio2/input/input2/event2' (string)
info.parent = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX1_port' (string)
input.x11_options.RBCornerButton = '3' (string)
info.category = 'input' (string)
info.capabilities = { 'input', 'input.touchpad' } (string list)
But in my /etc/hal/fdi/policy/11-x11-synaptics.fdi I have:
<?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_options.Device" type="string">/dev/input/event2</merge>
<merge key="input.x11_driver" type="string">synaptics</merge>
<merge key="input.x11_options.AlwaysCore" type="string">true</merge>
<merge key="input.x11_options.MinSpeed" type="string">0.09</merge>
<merge key="input.x11_options.MaxSpeed" type="string">0.18</merge>
<merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>
<merge key="input.x11_options.SHMConfig" type="string">true</merge>
<merge key="input.x11_options.AccelFactor" type="string">0.032</merge>
<merge key="input.x11_options.LeftEdge" type="string">1700</merge>
<merge key="input.x11_options.RightEdge" type="string">5300</merge>
<merge key="input.x11_options.TopEdge" type="string">1700</merge>
<merge key="input.x11_options.BottomEdge" type="string">4200</merge>
<merge key="input.x11_options.FingerLow" type="string">25</merge>
<merge key="input.x11_options.FingerHigh" type="string">30</merge>
<merge key="input.x11_options.MaxTapTime" type="string">180</merge>
<merge key="input.x11_options.MaxTapMove" type="string">220</merge>
<merge key="input.x11_options.HorizEdgeScroll" type="string">true</merge>
<merge key="input.x11_options.HorizScrollDelta" type="string">100</merge>
<merge key="input.x11_options.EmulateTwoFingerMinZ" type="string">55</merge>
<merge key="input.x11_options.VertEdgeScroll" type="string">true</merge>
<merge key="input.x11_options.VertScrollDelta" type="string">100</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>
</device>
</deviceinfo>
So if your match-rule is not matched, your fdi-file will not get merged.
I can't understand why no working synaptics functions with my touchpad
F
do it good first, it will be faster than do it twice the saint
Offline
In my case I figured out that the main problem is the laptop itself.
I've got an Acer Aspire 5920 where the lateral media keys (that I manged to configure perfectly) are recognized by GNU/Linux like a second touchpad.
For some reason I can't understand, the presence of two touchpads prevents the real touchpad to discriminate between two fingers and one big finger.
However, no particular configuration should be required, because two-finger scrolling and two-finger tap are enabled by default.
This is my xinput list:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Macintosh mouse button emulation id=8 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=9 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=10 [slave pointer (2)]
⎜ ↳ Logitech USB Optical Mouse id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Video Bus id=6 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=7 [slave keyboard (3)]
↳ Chicony USB Keyboard id=11 [slave keyboard (3)]
↳ Chicony USB Keyboard id=12 [slave keyboard (3)]
↳ Acer CrystalEye webcam id=14 [slave keyboard (3)]
↳ Sleep Button id=15 [slave keyboard (3)]
↳ Power Button id=16 [slave keyboard (3)]
↳ Power Button id=17 [slave keyboard (3)]
9 is the touchpad, 10 are media keys.
Similarly, I have two related entries in hal-device:
udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port_logicaldev_input'
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'input' (string)
input.device = '/dev/input/event9' (string)
input.product = 'SynPS/2 Synaptics TouchPad' (string)
info.subsystem = 'input' (string)
info.product = 'SynPS/2 Synaptics TouchPad' (string)
linux.sysfs_path = '/sys/devices/platform/i8042/serio4/input/input9/event9' (string)
info.parent = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port' (string)
input.x11_driver = 'synaptics' (string)
info.capabilities = { 'input', 'input.touchpad' } (string list)
info.category = 'input' (string)
input.x11_options.TapButton1 = '1' (string)
input.originating_device = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port' (string)
input.x11_options.TapButton3 = '3' (string)
linux.device_file = '/dev/input/event9' (string)
info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX3_port_logicaldev_input' (string)
input.x11_options.TapButton2 = '2' (string)
udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX2_port_logicaldev_input'
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'input' (string)
input.device = '/dev/input/event7' (string)
input.product = 'SynPS/2 Synaptics TouchPad' (string)
info.subsystem = 'input' (string)
info.product = 'SynPS/2 Synaptics TouchPad' (string)
linux.sysfs_path = '/sys/devices/platform/i8042/serio3/input/input7/event7' (string)
info.parent = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX2_port' (string)
input.x11_driver = 'synaptics' (string)
info.capabilities = { 'input', 'input.touchpad' } (string list)
info.category = 'input' (string)
input.x11_options.TapButton1 = '1' (string)
input.originating_device = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX2_port' (string)
input.x11_options.TapButton3 = '3' (string)
linux.device_file = '/dev/input/event7' (string)
info.udi = '/org/freedesktop/Hal/devices/platform_i8042_i8042_AUX2_port_logicaldev_input' (string)
input.x11_options.TapButton2 = '2' (string)
I'm sure I'm not able to solve this issue..is there someone, with some knowledge on hal, who can help me?
Thank you!
rent0n@deviantART | rent0n@bitbucket | rent0n@identi.ca | LRU #337812
aspire: Acer Aspire 5920 Arch Linux x86_64 | beetle: Gericom Beetle G733 Arch Linux i686
Offline
I've got an Acer Aspire 5920 where the lateral media keys
Very similar here with Aspire 6935.
But if I set the values by xorg.conf I can get 2-finger functions, but no hot plugging.
Hal drop the synaptics driver because of the media center touch key confusion
F
do it good first, it will be faster than do it twice the saint
Offline
Hi,
Have you tried setting it up from Gnome Mouse Preferences?
System -> Mouse -> Touchpad Tab
Two-Finger Scrolling
Offline
Hal drop the synaptics driver because of the media center touch key confusion
Yes, this seems to be the explanation.
Have you tried setting it up from Gnome Mouse Preferences?
No because I don't have Gnome. However, I think that is just a GUI to perform actions on hal files.
rent0n@deviantART | rent0n@bitbucket | rent0n@identi.ca | LRU #337812
aspire: Acer Aspire 5920 Arch Linux x86_64 | beetle: Gericom Beetle G733 Arch Linux i686
Offline
Well, I've found this and seems quite interesring:
http://ubuntuforums.org/showthread.php?t=1313893
It is a way to apply a patch on the synaptics package that should make it able to recognize media keys and touchpad separately.
What do you guys think of it? It is worth a try?
rent0n@deviantART | rent0n@bitbucket | rent0n@identi.ca | LRU #337812
aspire: Acer Aspire 5920 Arch Linux x86_64 | beetle: Gericom Beetle G733 Arch Linux i686
Offline
Maybe your MinZ Value is too low, so that the driver doesn't recognize your second finger. You can check these values with synclient.
Offline
Maybe your MinZ Value is too low, so that the driver doesn't recognize your second finger. You can check these values with synclient.
Well actually the problem is that synclient doesn't work, probably because hal is confused about the two different devices...:/
rent0n@deviantART | rent0n@bitbucket | rent0n@identi.ca | LRU #337812
aspire: Acer Aspire 5920 Arch Linux x86_64 | beetle: Gericom Beetle G733 Arch Linux i686
Offline
Maybe your MinZ Value is too low.
Mine works fine, if it is set by xorg.conf parameters.
F
do it good first, it will be faster than do it twice the saint
Offline
Pages: 1