[英]Yocto / i.Mx.6: How to support touch on touchscreen monitor
我正在使用在Qt 5.6.2支持的Yocto 2.1上运行的Nitrogen6x板。 我开发了一个Qt应用程序,该应用程序应支持USB键盘,鼠标和触摸屏等输入选项,并应支持全高清分辨率的显示。
我已经使用HDMI到VGA转换器电缆将支持全高清分辨率的触摸屏显示器连接到了氮气板上,并且我的应用程序以正确的分辨率运行良好,并且支持即插即用的键盘和鼠标连接。
但是,Qt Framework未收到触摸屏显示器上的触摸响应,因此触摸界面无法按预期工作。
当我插入鼠标时,在氮气板控制台上会看到以下信息:
~ # usb 1-1.1: new low-speed USB device number 8 using ci_hdrc
input: HID 413c:3010 as /devices/soc0/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.1/1-1.1:1.0/0003:413C:3010.0006/input/input3
hid-generic 0003:413C:3010.0006: input: USB HID v1.00 Mouse [HID 413c:3010] on usb-ci_hdrc.1-1.1/input0
但是,当我插入触摸屏显示器时,只会看到以下内容:
~ # usb 1-1.1: new full-speed USB device number 7 using ci_hdrc
我期望触摸屏界面将被自动检测,并将作为输入插件传递给Qt应用程序。
我已经运行了make menuconfig
并启用了USB Touch screen
重建内核。 但是,内核启动时仍注意到以下错误消息:
Galcore version 5.0.11.41671
egalax_ts 2-0004: Failed to read firmware version
egalax_ts: probe of 2-0004 failed with error -5
ft5x06-ts 2-0038: reset fffffffe
ft5x06-ts 2-0038: Could not detect touch screen -19.
是否缺少一些配置正确的内核选项以检测触摸屏的方法。 在这方面的任何帮助都是可观的。 提前致谢。
我选择了以下选项: 设备驱动程序-> HID设备->特殊HID驱动程序-> HID Multitouch面板作为内核配置中的嵌入式驱动程序(*),然后通过添加触摸屏的供应商ID和设备来重建内核。 /产品ID到相关位置的文件hid-ids.h和hid-multitouch.c 。
我的触摸屏现在可以正常工作了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.