You are not logged in.
Hi all,
This post is related to the launchpad bug "Middle button does not work for scrolling" and to the AUR package "xf86-input-evdev-trackpoint".
Abstract: The synaptics driver is currently not able to emulate scrollling using the middle mouse button on newer ThinkPads (**40 series). This AUR package aims at resolving this issue, but I'm having trouble to make it work.
So I installed the package and rebooted. The new file "90-evdev-trackpoint.conf" appeared in my /etc/X11/xorg.conf.d folder and the installation went fine. However:
My left and middle mouse buttons are not recognized afterwars, only my right mouse button works
I still have no middle mouse button scrolling feature
Maybe worth mentioning:
I do not use the testing repo
KDE desktop
System is up-to-date
The 90-.... Xorg conf file is the highest conf file number (so the settings should not be overridden)
Anyway, thanks for the effort to get that touchpad going, and thank you for your help!
Regards,
Laurent
Offline
@LimaSierra,
Thank you for testing the AUR package.
I am using Lenovo Thinkpad Yoga, and all buttons and wheel emuation work well.
After googling, Thinkpad **40 series seem to have the same input devices as Thinkpad Yoga.
I don't know why this package doesn't work for your device.
I think that if you can emulate middle and right button with synaptics driver, my driver should work too.
In version 2.8.2-3, I added a new feature that click events can happen on just touching. If you set "FingerPress" to
a very large number, this feature is disabled.
Would you test the following conf?
# 90-evdev-trackpoint.conf
Section "InputClass"
Identifier "Clickpad"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "SoftButtonAreas" "60% 0 0% 30% 40% 60% 0% 30%"
Option "FingerHight" "1000"
Option "FingerLow" "1000"
Option "FingerPress" "1000"
#Option "AreaBottomEdge" "20%"
#Option "AreaTopEdge" "20%"
EndSection
Section "InputClass"
Identifier "TrackPoint"
MatchProduct "TrackPoint"
MatchDriver "evdev"
Option "EmulateWheel" "1"
Option "EmulateWheelButton" "2"
Option "XAxisMapping" "6 7"
EndSection
Code is here: https://bitbucket.org/esrevinu/xf86-inp … trackpoint
Sorry for not helping much.
Regards,
Taegil
Offline
Hi,
I played around with the config files, and have some results by now. Note that I use the touchpad too, which causes some more problems.
So the source of the problem was apparently my 50-synaptics.conf, in which the Touchpad sections used the "synaptics" driver. There were 2 occurrences, if I change both, it works!
However:
synaptics provides MUCH better usability than evdev, if you do not configure everything by now. Especially important was the hysteresis, which made normal touchpad clicks usable again.
tap-clicks are triggered too sensibly (with too little pressure on the touchpad). I think this is evdev related and only a setting, but I couln't fine one. Have you got an idea?
As I use the SoftButtonAreas and AreaTopEdge settings, the top border of my touchpad should emulate the three "classic" ThinkPad buttons, and the mouse pointer should not move. This worked fine with synaptic. Now that the driver is evdev, only the middle and right area react to those classic clicks, but the left mouse button area is dead. I have absolutely no idea how to get it back without having mouse pointer movements in those areas. Any suggestions?
Middle click events are not always delivered reliably
Btw: tap-to-click and normal click generally work fine in the areas below AreaTopEdge.
So, have you got an idea how to get the "dead" area working again?
And, why did you use evdev, and not synaptics? I assume you have to make evdev work before synaptics can work, no?
Furthermore: why did you disable your touchpad?
At last, my config files:
50-synaptics.conf
# Example xorg.conf.d snippet that assigns the touchpad driver
# to all touchpads. See xorg.conf.d(5) for more information on
# InputClass.
# DO NOT EDIT THIS FILE, your distribution will likely overwrite
# it when updating. Copy (and rename) this file into
# /etc/X11/xorg.conf.d first.
# Additional options may be added in the form of
# Option "OptionName" "value"
#
Section "InputClass"
Identifier "touchpad catchall"
Driver "evdev"
MatchIsTouchpad "on"
Option "TapButton1" "1"
Option "TapButton2" "3"
Option "TapButton3" "2"
# This option is recommend on all Linux systems using evdev, but cannot be
# enabled by default. See the following link for details:
# http://who-t.blogspot.com/2010/11/how-to-ignore-configuration-errors.html
MatchDevicePath "/dev/input/event*"
EndSection
Section "InputClass"
Identifier "touchpad ignore duplicates"
MatchIsTouchpad "on"
MatchOS "Linux"
MatchDevicePath "/dev/input/mouse*"
Option "Ignore" "on"
EndSection
# This option enables the bottom right corner to be a right button on
# non-synaptics clickpads.
# This option is only interpreted by clickpads.
Section "InputClass"
Identifier "Default clickpad buttons"
MatchDriver "evdev"
Option "SoftButtonAreas" "60% 0 0 2600 40% 60% 0 2600"
Option "AreaTopEdge" "2600"
Option "PalmDetect" "1"
Option "HorizTwoFingerScroll" "1"
Option "HorizHysteresis" "30"
Option "VertHysteresis" "30"
Option "FingerPress" "100"
# Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
# To disable the bottom edge area so the buttons only work as buttons,
# not for movement, set the AreaBottomEdge
# Option "AreaBottomEdge" "82%"
EndSection
Section "InputClass"
Identifier "trackpoint catchall"
MatchIsPointer "true"
MatchProduct "TrackPoint|DualPoint Stick"
MatchDevicePath "/dev/input/event*"
Option "EmulateWheel" "1"
Option "EmulateWheelTimeout" "200"
Option "EmulateWheelButton" "2"
Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
EndSection
# This option disables software buttons on Apple touchpads.
# This option is only interpreted by clickpads.
Section "InputClass"
Identifier "Disable clickpad buttons on Apple touchpads"
MatchProduct "Apple|bcm5974"
MatchDriver "synaptics"
Option "SoftButtonAreas" "0 0 0 0 0 0 0 0"
EndSection
90-evdev-trackpoint.conf
Section "InputClass"
Identifier "TrackPoint"
MatchProduct "TrackPoint"
MatchDriver "evdev"
Option "EmulateWheel" "1"
Option "EmulateWheelButton" "2"
Option "XAxisMapping" "6 7"
EndSection
Thanks for your time, and keep up the great work!
Regards,
Laurent
Last edited by LimaSierra (2013-12-12 15:53:07)
Offline
It is likely that I tuned the source code to my fit.
I just released a new version 2.8.2-4. With this release, I hope you are satisfied.
Please revert 50-synaptics.conf to original one and then use 90-evdev-trackpoint.conf from the package.
I simply merged evdev and synaptics drivers to one driver whose name is
evdev. Only for touchpad, synaptics part of my evdev driver works. So you can
configure the driver as you do for synaptics driver.
Thanks.
Regards,
Taegil
Offline
Well, it may be that I broke things, but I can't get it to work again.
Could I please have your 50-synaptics.conf? Couldn't find anything on how to reset it to original...
Thanks,
Laurent
Offline
You can obtain original 50-synaptics.conf in this way.
1. delete 50-synaptics.conf
2. pacman -S xf86-input-synaptics
You may put synaptics-related options into the first section of 90-evdev-synaptics.conf.
There may be 90-evdev-trackpoint.conf.pacnew in /etc/X11/xorg.conf.d/.
How did you treat this file?
This file is one from the package. So you have to replace 90-evdev-trackpoint.conf with this.
Best wishes,
Taegil
Offline
It does not work for me either. I have a T440s
Offline
@worprandi
Sorry about that. Could you tell me details?
Please show me the result of command 'xinput list'.
Regards,
Taegil
Offline
Hello Taegil,
first of all let me thank you for the work you put in this package. I own a ThinkPad T440 and unfortunately this package is not working for me either. I also tried Laurent's configs as well.
This is my xinput output:
[sluo@cephalotus ~]$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=11 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=12 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ Integrated Camera id=9 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)]
↳ ThinkPad Extra Buttons id=13 [slave keyboard (3)]
Any hint is much appreciated and thank you again.
Offline
I just uploaded new version. In this version, I reverted some changes.
If it does not work, please delete xf86-input-synaptics package and 50-synaptics.conf, and try again.
If it still does not work, please let me know.
1. does left button click work?
2. does right button click work?
3. does middle button click work?
4. with xf86-input-evdev and xf86-input-synaptics, did you have all three buttons work? Show me the 50-synaptics.conf.
Best regards,
Taegil
Offline
Wow that was really fast! Your last update did it for me, left click, middle mouse scrolling and right click are working properly now.
I have the standard 50-synaptics.conf from the xf86-input-synaptics package and your package from AUR installed.
Thank you very much and have a great christmas time!
Best regards,
Siwei
Offline
Hey, I just wanted to add that I tried the AUR package with just synaptics installed and I can confirm it works beautifully on the T440s as well.
Thanks a lot!
Offline
Hi,
Can confirm it works for me too now!
It's really awesome man. You are great!
Many many thanks,
Laurent
Offline
OK SOLVED, it is working fine, i enabled it via xinput.
On my x230t i used before i disabled the touchpad in the bios and as it seems in the system too, i can't remeber where i did this...
------------------------------------------ OLD POST
I cant get this working on my T440s. I used different configurations (xf86-input-synaptics with its config and your aur package) but i dont get the buttons or touchpad working.
I cant even move the mouse with it, but when i cat the /dev/input/.. device i get data, so it is active but a config/driver problem.
My trackpoint is working fine.
What packages and configs du you exactly use?
Last edited by jnhieber (2014-01-17 19:10:07)
Offline
Hi,
sorry I wasn't available these last weeks to help you to fix problems with this package. But now, I can confirm it works perfectly on T440s
Offline
Hi,
A little off-topic, but: has anyone been able to activate press-to-select?
And: how do you configure sensitivity and speed? I have the corresponding udev rules...
# sudo vim /etc/udev/rules.d/10-trackpoint.rules
SUBSYSTEM=="serio", DRIVERS=="psmouse", WAIT_FOR="/sys/devices/platform/i8042/serio1/serio2/sensitivity", ATTR{sensitivity}="190", ATTR{speed}="100", ATTR{press_to_select}="1"
# test with: udevadm test /sys/devices/platform/i8042/serio1/serio2/
... but after each boot, it takes a couple of seconds before my trackpoint is available, and I'm curious if someone found other ways to achieve this.
Thanks,
Laurent
//EDIT: typo: it does not 'take a couple of boots', but 'a couple of seconds'
Last edited by LimaSierra (2014-01-26 18:03:02)
Offline
I beleive press to select is not available in the newer thinkpads
Offline
Unfortunately, I don't think it is possible either.
Anyway: how do you configure speed and sensitivity? Everybody using the same udev rule as me?
Regards
Offline
Hi,
sorry I wasn't available these last weeks to help you to fix problems with this package. But now, I can confirm it works perfectly on T440s
Hi all -
Could anyone with a T440s and a working config please post both the 50-synaptics.conf and the 90-evdev configuration? I'm actually having some trouble, and I suspect that I don't have the same files.
Thanks!
Offline
Here is my complete xorg.conf.d folder:
http://www.datafilehost.com/d/13ccdcd2
You won't need all of the files though.
Offline
@LimaSierra
You can use systemd's tmpfiles feature instead of the udev rule. See here:
https://wiki.archlinux.org/index.php/sy … rary_files
BTW, do you install regular synaptics in addition to the evdev-trackpoint package?
EDIT: Tmpfiles.d does not appear to work for this. I'm just calling a shell script from .xprofile for now.
Last edited by jck (2014-02-09 06:55:45)
Offline
@jck: You install synaptics "normally", then install xf86-input-evdev-trackpoint, which replaces some package (don't remeber exactly which one). Didn't that work for you?
Didn't try tmpfiles as you said it would not work. Why do you use .xprofile now, instead of the udev rule (I mean, what's the advantage of that way) ?
Regards
EDIT: @jck: Could you post your .xprofile config please? I'm struggling with permissions when trying to set the trackpoint settings.
Last edited by LimaSierra (2014-02-09 14:23:03)
Offline
It's nice to know that I can actually use the trackpoint! thanks for the effort.
The issue is I reinstalled synaptics after deleting the config, then installed xf86-input-evdev-trackpoint.conf but seems the config isn't used.
Lenovo Thinkpad E431
arch 64bit, KDE
kcm_synaptics is used as a client
Offline
I managed to fix it, The issue is with the values!. Xorg log shows the X and Y range lies -> (1472 5022) x, (1408 3346) y. But when i tested with evtest, the range for Y is very different, (2551 to 4789). So the percentage values in the 90-evdev-trackpoint.conf didn't really help as these values were calculated from stated X & Y ranges (as shown in the log, perhaps synaptics driver's issue?).
After tinkering with xinput set-props, I managed to get the thing working
Section "InputClass"
Identifier "Clickpad"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
# Synaptics options come here.
Option "TapButton1" "1"
Option "TapButton2" "3"
Option "TapButton3" "2"
Option "SoftButtonAreas" "4000 0 0 2600 2550 4000 0 2600"
Option "AreaTopEdge" "2600"
Option "AreaBottomEdge" "0"
EndSection
Section "InputClass"
Identifier "TrackPoint"
MatchProduct "TrackPoint"
MatchDriver "evdev"
Option "EmulateWheel" "1"
Option "EmulateWheelButton" "2"
Option "XAxisMapping" "6 7"
EndSection
Offline
The package also works great on my L540
Now both trackpoint and touchpad are really usable
Offline