Tool/software: Linux
Hello,
I am workning on AM3352 based custom board.
I need to run touch screen on qt GUI application.
In that Qt application GUI on LCD is working fine without "weston", and with "-platform linuxfb".
But I am facing problem when i touch on the touch screen, I am getting X and Y coordinate, I checked with "evtest" utility.
In Matrix GUI application(running as -platform linuxfb) or any custom qt application touch is not working.
But "pinchzoom" example which is available in the filesyatem it is working.(Zoom in Zoom out working fine in pinchzoom).
Below is the log for referance.
/--------------------------------------------- Log ----------------------------------------------/
root@am335x-evm:~# evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: goodix-ts
/dev/input/event1: volume_keys@0
/dev/input/event2: ti-tsc
Select the device event number [0-2]: 0
Input driver version is 1.0.1
Input device ID: bus 0x18 vendor 0xdead product 0xbeef version 0x28bb
Input device name: "goodix-ts"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 330 (BTN_TOUCH)
Event type 3 (EV_ABS)
Event code 48 (ABS_MT_TOUCH_MAJOR)
Value 0
Min 0
Max 255
Event code 53 (ABS_MT_POSITION_X)
Value 0
Min 0
Max 480
Event code 54 (ABS_MT_POSITION_Y)
Value 0
Min 0
Max 272
Event code 57 (ABS_MT_TRACKING_ID)
Value 0
Min 0
Max 255
Event code 58 (ABS_MT_PRESSURE)
Value 0
Min 0
Max 255
Properties:
Property type 1 (INPUT_PROP_DIRECT)
Testing ... (interrupt to exit)
Event: time 1494428001.078759, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1494428001.078759, type 3 (EV_ABS), code 58 (ABS_MT_PRESSURE), value 15
Event: time 1494428001.078759, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 15
Event: time 1494428001.078759, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 0
Event: time 1494428001.078759, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 282
Event: time 1494428001.078759, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 151
Event: time 1494428001.078759, ++++++++++++++ SYN_MT_REPORT ++++++++++++
Event: time 1494428001.078759, -------------- SYN_REPORT ------------
Event: time 1494428001.107006, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1494428001.107006, ++++++++++++++ SYN_MT_REPORT ++++++++++++
Event: time 1494428001.107006, -------------- SYN_REPORT ------------
/---------------------------------------------------------------------------------------------------------------------------------------/
It's look like touch driver working properly but matrix GUI application not accepting the touch which is use "linuxfb" as a platform.
I also cross compiled "tslib" and try to run "ts_calibrate", but looks like calibration is not happening.
below is the log and env setup for your referance.
/---------------------------------------- Exported Variables --------------------------------------/
export QT_PLUGIN_PATH=/usr/lib/qt5/plugins/
export QT_QPA_FONTDIR=/usr/lib/fonts
export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/qt5/plugins/platforms/
export QT_QPA_PLATFORM=linuxfb
export QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS=/dev/input/event0
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/root/Tslib/Install/lib
export TSLIB_TSEVENTTYPE='INPUT'
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_CONFFILE=/home/root/Tslib/Install/etc/ts.conf
export TSLIB_PLUGINDIR=/home/root/Tslib/Install/lib/ts
export TSLIB_CONSOLEDEVICE='none'
/---------------------------------------------------------------------------------------------------------------/
/---------------------- Out put of ts_calibrate -------------------------/
root@am335x-evm:~/Tslib/Install/bin# ./ts_calibrate
xres = 480, yres = 272
/----------------------------------------------------------------------------/
Display is coming on screen calibration curser is also comming on screen.
But when I touch there is not calibration going to happen, at that time in "evtest" utility I can see the X and Y coordinate.
Please do the needful.
Regards,
-- Ronak