问题标签 [evdev]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
480 浏览

c - 使用 libevdev 读取多点触控

我正在尝试从我的触摸板读取原始多点触控数据,但我没有得到我期望的结果。

我首先确定我的设备 ID 是什么,使用lsinput

由于我看不到此处列出的任何设备,因此我决定选择/dev/input/event6( SynPS/2 Synaptics TouchPad),这似乎与我正在寻找的最接近。

现在,我编写了一个非常简单的代码来尝试从中获取最大数量的 MT 点:

我可以使用它编译它gcc -levdev myfile.c并正确运行它,但我只得到2.

这是否意味着我的触摸板只能处理两个点?这很奇怪,因为它可以(至少)在 Windows 上处理 4 个。

你对此有什么想法吗?

小更新:使用libinput-debug-events,我得到以下输出

使用 1 根手指时:

使用 2 个手指时:

使用 3 个手指时:

使用 4 个手指时:

因此,我的系统上似乎确实有一些东西能够检测和读取至少四个手指......但由于某种原因,我无法使用 libevdev 获得它们......

0 投票
1 回答
350 浏览

python - 如何在 python 中使用 evdev 从隐藏设备(条形码扫描仪)获取有效的可理解字符串

我一直在尝试通过在 python 中使用带有 evdev 的条形码扫描仪来获取字符串输出。这是我的剧本...

当我在此之后扫描时,我得到这个输出:

我什么都不明白,因为我是 python 新手,但我认为在这种情况下不会有太大的不同。我已经检查了其他相关问题,但我无法使它们的答案起作用。请帮帮我。

我如何过滤掉上升并保持下降。

0 投票
1 回答
16 浏览

python - 在线程之前打开 BoxLayout 并保持线程监听

我想要一个 Box 布局,我将在其中放置一个文本,当我单击不同的键盘键时,该文本应该更改,Ritgth 现在我试图在线程运行的同时显示 BoxLayout,但它没有显示这是我的代码:

0 投票
2 回答
1246 浏览

c++ - 在 C++ 中使用 libevdev 的设备输入事件

我正在尝试从 Raspberry Pi 触摸屏获取触摸事件。我使用 python 中的 FT5406 驱动程序和 C 中的 evtest 使它工作。但是,我想用 C++ 编写代码。我注意到libevdev在 C 中非常有用,但是当我在 C++ 中调用它时,比如

它总会给我

我手动安装 libevdev 并将其保存在我的代码路径下并提供该库的完整路径,但同样的事情发生了。

我也尝试了link的方法,问题依旧。

我已经安装了相应的包:

有没有人可以帮帮我???

0 投票
1 回答
1335 浏览

keyboard - eglfs:键盘没有被抓住

Raspbian 运行在 RPi3B+、Qt5.9.2 交叉编译、QWidget 应用程序上。键盘输入转到后面的外壳而不是我的应用程序。在本文档之后,我设置了以下环境变量:

并尝试在本地(即坐在目标前面)或通过 SSH 运行应用程序。行为是相同的。

相反,鼠标工作正常。

在那份文件中有什么我不明白的地方吗?

0 投票
1 回答
609 浏览

python - Xbox One 使用 Analogue Stick withevdev 无线控制伺服

我正在使用 Evdev 读取 A、B、X、Y 的 XBOX ONE 输入并取得了巨大成功。然而,我正在努力拿起模拟棒输入。任何人都可以帮助我使用 Python 代码吗?

我正在尝试控制伺服。

到目前为止,这是我的代码,它“完美”地工作。我需要知道如何读取(xbox)操纵杆的输出,这样我就可以为伺服系统使用“GPIO.PWM”。

0 投票
1 回答
1411 浏览

hid - HID 扫描码如何映射到 evdev 码?

要发送字母“a”,HID 设备会发送以下扫描码:00 00 04 00 00 00 00 00.

对应于字符“a”的值是<AC01>(在 中找到/usr/share/X11/xkb/symbols/us)。根据/usr/share/X11/xkb/keycodes/evdev<AC01>通过按钮代码映射到38(这是我们必须从设备中获取的)。

evtest /dev/input/event#显示代码30。为什么?

0 投票
0 回答
59 浏览

flask - 来自 evdev 事件的烧瓶页面导航

当用户按下屏幕上的 href 链接时,我目前可以使用 html a href 导航到下一页。

索引.html:

但是,我有一个条形码扫描仪(使用 evdev),它会在扫描条形码时触发一个事件。如何,我可以使用此事件导航到下一页吗?

0 投票
2 回答
1769 浏览

python - python-evdev:同时读取游戏手柄的 X 轴和 Y 轴

手头有一个小项目,我认为这将是学习 python 的一个很好的借口。使用我这里的游戏手柄(Logitech F310),操纵杆的 X 轴和 Y 轴的值在 0-255 之间变化,当它们在中心“空闲”时为 127 或 128。

使用此代码(来自http://www.lafavre.us/robotics/IoT_LogitechF310.pdf

我能够获得上、下、右、左的位置;到目前为止我未能完成的是,当操纵杆位于 X 轴和 Y 轴之间时,如何检索 X 和 Y 的值,这是狭窄的间隔(准确地说是 4)。

0 投票
2 回答
1639 浏览

linux - 在嵌入式 qt 项目上校准和配置 evdevtouch

我有一个 Qt 项目在带有 linux 的 icoremx6solo 上运行。我已经设置了图形并运行了代码,但我无法处理触摸输入。启用输入日志记录

导出 QT_LOGGING_RULES="qt.qpa.input=true"

我发现没有设置坐标,我认为这是主要问题:

但我找不到校准 evdevtouch 的方法。

在执行 ts_calibrate 命令后,我尝试使用 -plugin tslib 属性运行可执行文件,但输出是相同的。

那么,我该如何解决正在运行的触摸屏?