我们有一个在工业 PC 上运行 Linux 的系统。它基于 Yocto Poky 2.5。内核是 4.15.30。
最近,制造商更改了触摸屏控制器(基于 USB)。新产品(egalax)具有多点触控功能和更高的分辨率,而我们的应用程序不需要这些。不幸的是,它发送的某些事件与旧的不同,例如,BTN_TOUCH
它们BTN_LEFT
会破坏我们的应用程序。短期内无法更改应用程序或其部分内容。因此,我试图设计一种方法,使 Xorg 处理来自触摸的信息,就好像它来自鼠标一样。
在 中/dev/input
,除了event*
条目之外,还有一些mouse*
和mice
一个,它们以某种方式由触摸屏提供(此鼠标文件中的一只猫显示了鼠标和触摸的活动)。
因此,我希望获得有关如何配置 Xorg 和/或 xinput 以从鼠标事件获取事件的一些指导。
FWIW我们正在使用libinput。
附加信息:我们必须对内核 hid 驱动程序应用一个小补丁,以便新面板能够被 Linux 识别。
我还做了一个快速实验,交叉编译并安装了内核5.8.16。现在报告了两个设备xinput
,其中一个在设备标识字符串后附加了“鼠标”,根据xinput --list-props
,它看起来像鼠标,甚至有该BTN_LEFT
事件。但 Xorg 使用触摸屏事件。
因此,我希望得到一些指导,如果可能的话,配置示例将允许我指导 Xorg 将触摸作为鼠标来处理。或者,以5.8内核为例,如何使其使用触摸屏的Mouse事件源。
在此先感谢您的帮助。