libinput Acer c720 Observations
Wade Berrier
wberrier at gmail.com
Fri Jun 5 15:31:15 PDT 2015
Hello,
I'm running libinput 0.17 on Fedora 22 (compiled and installed the
rawhide src.rpm) on an Acer c720 chromebook. The observations below
also apply to 0.15 that shipped with the distro, but I upgraded to see
if it changed the behavior.
The trackpad doesn't quite "feel right". Here's some of the main
observations compared to when using the trackpad with ChromeOS and/or
the cmt driver:
1. the pointer is very "fidgety". Relatively small movements move the
pointer around quite a bit. If I adjust the pointer speed to the minimum
(using "Mouse & Touchpad" gui) these small controlled movements seem
much more accurate. But, then it takes several "swipes" to move the
pointer to the other side of the screen.
2. at first it seemed that no matter what "pointer speed" setting I
tried, finger distance always covered the same amount of screen
distance, no matter the finger velocity. ie: no acceleration
handling. I came across [1] and realized that wasn't the case.
After additional tinkering, I was able to affect screen distance
with finger speed, but it seemed very difficult to get into that
state/window.
In short, the lowest pointer speed feels natural in localized
scenarios requiring high precision (ie: clicking on tiny stuff). But,
when swiping faster to travel to the other side of the screen, a 40%
setting seems to "feel" about right. It's interesting that ChromeOS
gets away with not even having a pointer speed adjustment.
3. the pointer moves around when doing "hard clicks". Both on the way
down and the way up. It seems like ChromeOS "locks" the pointer in
place during this case. Without this, my 5 year old son is unable
to hard click a button, whereas he's able to on ChromeOS. Also
interesting, is that in ChromeOS I can roll my fingertip in circles
and the pointer barely, if at all, moves. So, I guess this is an
issue whether I'm clicking or not.
4. I get spurious pointer movement and clicks from my right palm while my
hands are in typing position. The feature of disabling the mouse
while typing partially helps. Also, the trackpad isn't centered
between my hands on the c720, possibly making it only happen with my
right hand. On ChromeOS, I can tap my palm all over the pad and
will get an occasional click but no pointer movement.
As an aside, it sounds like the mouse team at google pressure
calibrates [2] their hardware. Is libinput normalizing pressure in
addition to dpi? If so, does the hardware database also include
information for device specific pressure calibration?
I realize this is all highly subjective to muscle memory and personal
preference, but I think it can be useful to compare to the excellent
experience that the ChromeOS driver offers.
So, where do I go from here? Are my observations specific to the
c720? Is there something I can try out or tweak? If it were easy to
use the xf86-cmt driver on fedora [3] I probably would, but given
wayland will be using libinput it would be nice to get libinput
working nicely on this trackpad.
Wade
1. http://who-t.blogspot.com/2014/07/pointer-acceleration-in-libinput.html
2. https://plus.google.com/+HughGreenberg/posts/RfWqFAh7YHq - Andrew
de los Reyes Jul 15, 2014
3. https://bugzilla.redhat.com/show_bug.cgi?id=1100947
-------------- next part --------------
# EVEMU 1.2
# Input device name: "Cypress APA Trackpad (cyapa)"
# Input device ID: bus 0x18 vendor 0000 product 0000 version 0x01
# Supported events:
# Event type 0 (EV_SYN)
# Event code 0 (SYN_REPORT)
# Event code 1 (SYN_CONFIG)
# Event code 2 (SYN_MT_REPORT)
# Event code 3 (SYN_DROPPED)
# Event code 4 ((null))
# Event code 5 ((null))
# Event code 6 ((null))
# Event code 7 ((null))
# Event code 8 ((null))
# Event code 9 ((null))
# Event code 10 ((null))
# Event code 11 ((null))
# Event code 12 ((null))
# Event code 13 ((null))
# Event code 14 ((null))
# Event type 1 (EV_KEY)
# Event code 272 (BTN_LEFT)
# Event code 325 (BTN_TOOL_FINGER)
# Event code 328 (BTN_TOOL_QUINTTAP)
# Event code 330 (BTN_TOUCH)
# Event code 333 (BTN_TOOL_DOUBLETAP)
# Event code 334 (BTN_TOOL_TRIPLETAP)
# Event code 335 (BTN_TOOL_QUADTAP)
# Event type 3 (EV_ABS)
# Event code 0 (ABS_X)
# Value 867
# Min 0
# Max 870
# Fuzz 0
# Flat 0
# Resolution 10
# Event code 1 (ABS_Y)
# Value 274
# Min 0
# Max 470
# Fuzz 0
# Flat 0
# Resolution 10
# Event code 24 (ABS_PRESSURE)
# Value 0
# Min 0
# Max 255
# Fuzz 0
# Flat 0
# Resolution 0
# Event code 47 (ABS_MT_SLOT)
# Value 0
# Min 0
# Max 14
# Fuzz 0
# Flat 0
# Resolution 0
# Event code 53 (ABS_MT_POSITION_X)
# Value 0
# Min 0
# Max 870
# Fuzz 0
# Flat 0
# Resolution 10
# Event code 54 (ABS_MT_POSITION_Y)
# Value 0
# Min 0
# Max 470
# Fuzz 0
# Flat 0
# Resolution 10
# Event code 57 (ABS_MT_TRACKING_ID)
# Value 0
# Min 0
# Max 65535
# Fuzz 0
# Flat 0
# Resolution 0
# Event code 58 (ABS_MT_PRESSURE)
# Value 0
# Min 0
# Max 255
# Fuzz 0
# Flat 0
# Resolution 0
# Properties:
# Property type 0 (INPUT_PROP_POINTER)
# Property type 2 (INPUT_PROP_BUTTONPAD)
N: Cypress APA Trackpad (cyapa)
I: 0018 0000 0000 0001
P: 05 00 00 00 00 00 00 00
B: 00 0b 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 01 00 00 00 00 00
B: 01 20 e5 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 02 00 00 00 00 00 00 00 00
B: 03 03 00 00 01 00 80 60 06
B: 04 00 00 00 00 00 00 00 00
B: 05 00 00 00 00 00 00 00 00
B: 11 00 00 00 00 00 00 00 00
B: 12 00 00 00 00 00 00 00 00
B: 14 00 00 00 00 00 00 00 00
B: 15 00 00 00 00 00 00 00 00
B: 15 00 00 00 00 00 00 00 00
A: 00 0 870 0 0 10
A: 01 0 470 0 0 10
A: 18 0 255 0 0 0
A: 2f 0 14 0 0 0
A: 35 0 870 0 0 10
A: 36 0 470 0 0 10
A: 39 0 65535 0 0 0
A: 3a 0 255 0 0 0
More information about the wayland-devel
mailing list