Niggs
Niggs

Reputation: 11

linux tslib ts_read not working with multi-touch display

Question:
Does the tslib function ts_read work with multi-touch screens or do I need to update our software to use ts_read_mt?

Background:
Currently in the process of updating my embedded linux system from using a single touch touchscreen to a new one that supports multi-touch as a result my touchdown events aren't reported until I touchup.

I am using the touchscreen library (tslib), which works with the old screen.

I have run the tslib test function ts_print, with the new display, which reports both the touch down and touch up events when I touch up. I noticed in the new version of the library there is a new utility for multi-touch (ts_print_mt).

Overall, I am trying to maintain compatibility of the software with both screens where multi-touch is not required.

Thanks.

Upvotes: 0

Views: 697

Answers (1)

merge
merge

Reputation: 36

Does this problem still occur in tslib version 1.13? If so, it is a bug. Both ts_read() and ts_read_mt() should work with any touchscreen device, multitouch capable or not.

It's just that with ts_read() you'll only ever get single-touch functionality. ts_read_mt() should work with any single-touch device too, so should be fine with respect to staying compatible with old devices.

To have multitouch functionality, use the module_raw input (you probably do already) and use ts_read_mt(). Programs that use it are ts_print_mt or ts_test_mt (for testing), ts_uinput (for creating a new "filtered" input device) or xf86-input-tslib if you're using X11.

Upvotes: 1

Related Questions