Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
Evdev touch with Qt 5.3 not working correctly
monkeyDancer last edited by
I cross-compile my Qt 5.3 applications and execute them on a raspberry pi (raspbian). This device is connected to an Elo-TouchSystem (ET1928) via usb. The touchscreen is working well till i start a Qt application (eglfs fullscreen).
The calibration is totally messed up. Moving the finger across the screen is moving the cursor but the distance the cursor moves is much farer. Also tipping the screen does not position the cursor correctly. The positioning seems to be relative to the old position - but not constant.
The problem is not related to well known problems concerning rotations.
I used evtest to calibrate the screen but this does not help (data is lost after restart).
I used xinput_calibrator to calibrate the screen but this does not help (data is lost after restart).
It seems that the xinput_calibrator is not writing any data to file - even by using "xinput_calibrator --output-type xorg.conf.d --precalib <minX> <maxX> <minY> <maxY>".
But xinput shows the caibration values after calibration till the next restart.
lsmod shows that evdev is used by 6 modules.
After i start the application lsmod shows that evdev is used by 9 modules (+3 is strange to me).
Ok the +3 is is cause by the three devices keyboard, mouse and touchscreen. Not as strange as i thought.
If i unplug the mouse while running the application the count is reduce to 6. So evdev is used by every device 3 times i guess.
The names of the modules are not listed.
xinput shows me that the touchscreen input is received at /dev/input/event1
Some of the vars i played with (the vars i remember):
First i used evdev 2.7.
I also compiled and installed evdev 2.9 but this did not solve the problem.
After all i tried tslib but the input has always received at the desktop behind the application (rly dangerous for the system :-)).
So i prefer evdev but i rly dont know where to go from here.