terriko: (Default)
[personal profile] terriko
This is more a note to self than anything else, but who knows, maybe someone reading is having exactly the same problem as me?

The "new" laptop has an overly sensitive touchpad, in that it seemed to be clicking at times when I didn't want it to click. While quite a few people handle this by disabling the touchpad or disabling tap-to-click, I knew from experience with my last linux laptop that this is a solvable problem under linux at least.

There's a *lot* of ways to control mouse settings, but here's the one that worked for me. In short:


xinput list
to find my touchpad device, which turned out to be id=12

xinput list-props 12 |grep -i finger
to give me a list of relevant entries

xinput set-prop 12 "Synaptics Finger" 25, 32, 256

to set it to something that seems better behaved.
According to the link above: "By increasing the second parameter, you require more finger pressure for the trackpad to respond. The first parameter controls release pressure, the third is to detect a button press (I think)."

and that seemed to match up. In my case, I needed to up the second number. While I was in there, I tweaked the two-finger settings so it'd be easier to "right click" with two fingers.

Lest it's useful to me later, here's my current settings:
terri@djpwn3:~$ xinput list-props 12 |grep -i finger
Synaptics Finger (261): 25, 32, 256
Synaptics Two-Finger Pressure (268): 256
Synaptics Two-Finger Width (269): 1
Synaptics Two-Finger Scrolling (272): 1, 1

The Joy of xinput

Date: July 10th, 2013 07:54 pm (UTC)
From: [personal profile] fg4fc07p
When I first discovered xinput, I was all like "Hey, finally I can discover ALL input the settings and change them from scripts, instead of having to find two or three different GNOME apps to configure every new touchpad! This is the best thing ever!"

That was a few lines of script code ago.

It turns out that the properties available change from driver/xorg version to version, and if there are multiple kernel drivers that work with your hardware, then those change on every boot if your kernel module loading order is unpredictable (hello, systemd. We meet again!). I now have three or four different parameter settings for ONE touchpad in ONE machine to handle all the possible cases.

Some touchpad hardware's motion sensitivity is programmed using a piecewise linear function (below speed x, use ratio Y; above speed x, use ratio Z), others with polynomial curves or exponential series, and translating a preference from one representation to another requires some non-trivial understanding of math. Mix in limited numeric precision in the hardware, and find there are preference settings that cannot be moved from an old device to a new one.

Re: The Joy of xinput

Date: July 11th, 2013 04:56 pm (UTC)
From: [personal profile] fg4fc07p
There is some useful data-mining potential from having a "send settings to $SOMEONE" button, especially if a lot of people with similar pointing habits are buying the same laptop (and even more interesting if there's a way to collect data like hand size or mobility to go with it).

For me the acceleration settings are the usual front-runner configuration problem. I need to be able to flick the pointer across the screen with a single stroke across the pad, but still have enough fine precision to hit single-pixel targets. I play a game called "bugsquish" (from a Debian archive near you) with my touchpad to make sure I have the settings right.

You may find that you need to implement the same xinput settings multiple different ways, even if you don't change hardware, because different drivers for the same hardware present different interfaces. Many devices even provide multiple register-level interfaces for compatibility with various hardware legacies. The good news is that you can drive xinput from a script so the search for a specific parameter ID can be automated once you know what it is--gone are the days of blindly plugging values into 'xset m' and hoping they're sane.

I have an HP netbook and a Macbook, which are about as different as two touchpads can be. HP divided their postage-stamp-sized pad into separate horizontal and vertical scroll areas, but it's really too small to be anything but a uniform surface with multi-finger gestures and no clicking on the touchpad (there are buttons, after all). The Macbook's huge touch surface has space to spare for separate scrolling and clicking areas, but it is normally configured as a uniform surface controlled by multi-finger gestures. I ended up configuring each one to behave like the factory defaults of the other, which terribly confuses anyone who tries to use my Macbook.

Profile

terriko: (Default)
terriko

September 2014

S M T W T F S
 123456
78 910111213
141516 17181920
2122 2324252627
282930    

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 30th, 2014 09:53 pm
Powered by Dreamwidth Studios