peppedaman
April 8th, 2013, 08:14 AM
Hello,
So far I've been having a problem with my Elantech multitouch trackpad in Linux. Basically all i get is right click left click and tap, along with movement abilities. The problem seems to be rooted in improper detection of the elantech as a touchpad, likely b/c its a new revision or whatnot. Using psmouse-elantech-v6 does nothing to solve the problem, though its changes the identifier shown in xinput and also reports "version 9" elantech touchpad. I've even tried psmouse-alps and psmouse-alps-dst (see dmesg for why), no effect on anything. All below info is from default psmouse, for reference. Synclient reports the same no matter what. dmesg is the same except it detects version 9 elantech as i said. Xorg.0.log is also identical. xinput reports "PS/2 Elantech TF Click-Pad" instead of the usual "PS/2 Elantech Touchpad". Of note is that working elantech trackpads of the past in forums i scouted through shows up as "ETPS/2 Elantech Touchpad". I think this might be a simple fix in the end, just improper detection, I hope. For reference, I've tried kernel 3.5 on Ubuntu 12.10 and kernel 3.8.0-17 on Ubuntu 13.04 thus far, with all combinations of psmouse. Here's my debug of default psmouse:
synclient -l
Couldn't find synaptics properties. No synaptics driver loaded? //note that even if attempting to force synaptics it will reject the touchpad as unknown
dmesg (snipped)
[ 19.796863] psmouse serio1: alps: Unknown ALPS touchpad: E7=10 00 64, EC=10 00 64
[ 19.989545] psmouse serio1: elantech: unknown hardware version, aborting...
[ 20.175551] input: PS/2 Elantech Touchpad as /devices/platform/i8042/serio1/input/input4
/var/log/Xorg.0.log (snipped)
[ 30.009] (**) PS/2 Elantech Touchpad: Applying InputClass "evdev pointer ca
tchall"
[ 30.009] (II) Using input driver 'evdev' for 'PS/2 Elantech Touchpad'
[ 30.009] (**) PS/2 Elantech Touchpad: always reports core events
[ 30.009] (**) evdev: PS/2 Elantech Touchpad: Device: "/dev/input/event4"
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Vendor 0x2 Product 0x1
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Found 3 mouse buttons
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Found relative axes
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Found x and y relative axes
[ 30.009] (II) evdev: PS/2 Elantech Touchpad: Configuring as mouse
[ 30.009] (**) evdev: PS/2 Elantech Touchpad: YAxisMapping: buttons 4 and 5
[ 30.009] (**) evdev: PS/2 Elantech Touchpad: EmulateWheelButton: 4, Emulate
WheelInertia: 10, EmulateWheelTimeout: 200
[ 30.009] (**) Option "config_info" "udev:/sys/devices/platform/i8042/serio1/input/input4/event4"
[ 30.009] (II) XINPUT: Adding extended input device "PS/2 Elantech Touchpad" (type: MOUSE, id 13)
[ 30.009] (II) evdev: PS/2 Elantech Touchpad: initialized for relative axes.
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) keeping acceleration scheme 1
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) acceleration profile 0
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) acceleration factor: 2.000
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) acceleration threshold: 4
[ 30.010] (II) config/udev: Adding input device PS/2 Elantech Touchpad (/dev/input/mouse0)
[ 30.010] (II) No input driver specified, ignoring this device.
[ 30.010] (II) This device may have been added with another device file.
xinput | grep Elan
PS/2 Elantech Touchpad id=13 [slave pointer (2)]
my 10-evdev.conf
GNU nano 2.2.6 File: /usr/share/X11/xorg.conf.d/10-evdev.conf
#
# Catch-all evdev loader for udev-based systems
# We don't simply match on any device since that also adds accelerometers
# and other devices that we don't really want to use. The list below
# matches everything but joysticks.
Section "InputClass"
Identifier "evdev pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev tablet catchall"
MatchIsTablet "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
my 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 "synaptics"
MatchIsTouchpad "on"
# 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 "synaptics"
Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
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
Hope things go well with this. The computer is rather new and already the support is great otherwise. It's going to be a popular laptop I imagine so if this can be patched early it'll save alot of people the headache I've been going through. Feel free to ask any questions and request any testing.
:)
So far I've been having a problem with my Elantech multitouch trackpad in Linux. Basically all i get is right click left click and tap, along with movement abilities. The problem seems to be rooted in improper detection of the elantech as a touchpad, likely b/c its a new revision or whatnot. Using psmouse-elantech-v6 does nothing to solve the problem, though its changes the identifier shown in xinput and also reports "version 9" elantech touchpad. I've even tried psmouse-alps and psmouse-alps-dst (see dmesg for why), no effect on anything. All below info is from default psmouse, for reference. Synclient reports the same no matter what. dmesg is the same except it detects version 9 elantech as i said. Xorg.0.log is also identical. xinput reports "PS/2 Elantech TF Click-Pad" instead of the usual "PS/2 Elantech Touchpad". Of note is that working elantech trackpads of the past in forums i scouted through shows up as "ETPS/2 Elantech Touchpad". I think this might be a simple fix in the end, just improper detection, I hope. For reference, I've tried kernel 3.5 on Ubuntu 12.10 and kernel 3.8.0-17 on Ubuntu 13.04 thus far, with all combinations of psmouse. Here's my debug of default psmouse:
synclient -l
Couldn't find synaptics properties. No synaptics driver loaded? //note that even if attempting to force synaptics it will reject the touchpad as unknown
dmesg (snipped)
[ 19.796863] psmouse serio1: alps: Unknown ALPS touchpad: E7=10 00 64, EC=10 00 64
[ 19.989545] psmouse serio1: elantech: unknown hardware version, aborting...
[ 20.175551] input: PS/2 Elantech Touchpad as /devices/platform/i8042/serio1/input/input4
/var/log/Xorg.0.log (snipped)
[ 30.009] (**) PS/2 Elantech Touchpad: Applying InputClass "evdev pointer ca
tchall"
[ 30.009] (II) Using input driver 'evdev' for 'PS/2 Elantech Touchpad'
[ 30.009] (**) PS/2 Elantech Touchpad: always reports core events
[ 30.009] (**) evdev: PS/2 Elantech Touchpad: Device: "/dev/input/event4"
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Vendor 0x2 Product 0x1
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Found 3 mouse buttons
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Found relative axes
[ 30.009] (--) evdev: PS/2 Elantech Touchpad: Found x and y relative axes
[ 30.009] (II) evdev: PS/2 Elantech Touchpad: Configuring as mouse
[ 30.009] (**) evdev: PS/2 Elantech Touchpad: YAxisMapping: buttons 4 and 5
[ 30.009] (**) evdev: PS/2 Elantech Touchpad: EmulateWheelButton: 4, Emulate
WheelInertia: 10, EmulateWheelTimeout: 200
[ 30.009] (**) Option "config_info" "udev:/sys/devices/platform/i8042/serio1/input/input4/event4"
[ 30.009] (II) XINPUT: Adding extended input device "PS/2 Elantech Touchpad" (type: MOUSE, id 13)
[ 30.009] (II) evdev: PS/2 Elantech Touchpad: initialized for relative axes.
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) keeping acceleration scheme 1
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) acceleration profile 0
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) acceleration factor: 2.000
[ 30.009] (**) PS/2 Elantech Touchpad: (accel) acceleration threshold: 4
[ 30.010] (II) config/udev: Adding input device PS/2 Elantech Touchpad (/dev/input/mouse0)
[ 30.010] (II) No input driver specified, ignoring this device.
[ 30.010] (II) This device may have been added with another device file.
xinput | grep Elan
PS/2 Elantech Touchpad id=13 [slave pointer (2)]
my 10-evdev.conf
GNU nano 2.2.6 File: /usr/share/X11/xorg.conf.d/10-evdev.conf
#
# Catch-all evdev loader for udev-based systems
# We don't simply match on any device since that also adds accelerometers
# and other devices that we don't really want to use. The list below
# matches everything but joysticks.
Section "InputClass"
Identifier "evdev pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev tablet catchall"
MatchIsTablet "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
my 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 "synaptics"
MatchIsTouchpad "on"
# 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 "synaptics"
Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
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
Hope things go well with this. The computer is rather new and already the support is great otherwise. It's going to be a popular laptop I imagine so if this can be patched early it'll save alot of people the headache I've been going through. Feel free to ask any questions and request any testing.
:)