I seem to have a weird problem between TSLIB and Qt embedded. I've built Qt for an ARM platform with TSLIB support. I used ts_calibrate to calibrate the touch panel and generate /etc/pointercal. The correct environment variables are set (TSLIB_*). Running ts_print shows me (x,y,pressure) data as I press and move a finger on the touch panel, so I know tslib works and is reading data from the panel continuously.
The pressure data is always 255 whether you press hard or lightly. Not sure if this matters.
However when I use Qt, (examples/qws/mousecalibration) no data is read by the program when I touch the panel. Calibration::mouseReleaseEvent() is never called. I can't calibrate the screen.
Other programs work, I can use touch / touch and hold but not flick gestures (demos/embedded/flickable).
The kicker is that this exact same hardware and Qt bundle used to work, flick gestures and all, with a slightly different Linux kernel from our vendor that had some LCD driver options missing.
It looks like Qt is mis-processing or ignoring some data from TSLIB. Any suggestions? I really need to implement flick / drag events but it looks troublesome with stock widgets.
Bookmarks