Touchscreen filters in andy-tracking...

Nelson Castillo arhuaco at freaks-unidos.net
Wed Jan 28 07:42:52 CET 2009


On Tue, Jan 27, 2009 at 8:05 PM, "Marco Trevisan (Treviño)"
<mail at 3v1n0.net> wrote:
> I've just give a try to this [1] kernel image in my Om2008 based
> distro... I've read so much about the new LCD touchscreen filters and
> the work of Nelson Castillo seems quite good, but imho, from an user
> point of view, the touchscreen usability of the 2.6.28 kernel isn't good
> as the one I had with the 2.6.26 :(.

Hi Marco.

A few people contributed code/ideas for the touchscreen filtering. I
tuned a few things and added a filter.

> I'm saying this after that I've tested the touchscreen behavior writing
> with the Illume keyboard.

I think the the illume keyboard does dictionary correction[1] and I
think it is not OK to to compare the TS code with this app that
already accounts for wrong taps being reported. Right?

[1] https://kerneltrap.org/mailarchive/openmoko-community/2009/1/6/4609774

> I'm mainly using a stable kernel that after the inclusion of the patches
> "palliate_touch_screen_jitter.patch" [2] and "soft_tap.patch" [3] is
> really very precise and usable.

Just FYI what these patches implement is still there (but with
different code due to changed logic).

> So, with the stable kernel I can write very quickly with very low
> pressure and generally I don't have precision issues.
> At the contrary, using the 2.6.28 kernel I've to write really slowly
> (using more pressure) and often it doesn't grabs fast double-clicks over
> a region (needed when you write a letter with some double-chars or if
> all the chars are near in the keyboard).
>
> Any idea in how to get back the stable-touchscreen usability?

I read you have tried Tick's touch_test.py before. Could you please
give us feedback after comparing with both kernels using this app? (I
tried to build the kernel you have but I don't have the .config).

Now that you mention it, the parameters for the filter are selected by
hand. They work and it seems they reject most bad clicks and help with
finger use. But indeed many (wrong) points are being discharged. IMHO
they should be discarded but please read on.

I thought it would be good to modify touch_test.py in order to make a
survey and then an optimization. That is, with a calibrated
touchscreen the modified app shows you points and you click on them
with different pressure. After each click you tell the app somehow
(using the console or in some other way) that this sample should be
taken into account (it means that you believe it was a good click
based on what you think and on the visual feedback). Then with this
information you try to minimize the size of the filters and the number
of points being discarded. You need to provide bad clicks as well
(those that consist of only noise and that should be filtered anyway).
Perhaps with this information you can even allow for some small error
(E) so that you really minimize the number of points that the filters
need....

I did not work on it right away because there are other (hard) issues
that require  attention but I think it would be nice to check this out
someday.

I think you should also draw lines... I did some tests with lines too
(using a ruler as a guide). Some programs need more than clicks.

Best regards,
N.-



More information about the openmoko-kernel mailing list