读取Linux上的USBinputstream

我目前正在一个embedded式Linux机器上工作。 我试图读取USB设备inputstream,但出于某种原因,我没有任何这样的事情在我的/ dev目录。 我会认为这将是像/ dev / ttyUSB01或/ dev / input / usb或类似的东西,但它不在那里。 dmesg返回以下内容

[ 195.863911] input: GIT GIT USB READER as /class/input/input2 [ 195.864259] generic-usb 0003:1234:5678.0001: input: USB HID v1.00 Keyboard [GIT GIT USB READER] on usb-0000:00:0f.4-1/input0 

我已经扫描了/ sys / class / input / input2,我不确定我在找什么。 也许有人能指出我正确的方向?

查看/dev/input/by-path并查找你的usb-0000:00:0f.4-1 。 在我的Ubuntu的盒子,这是一个符号链接到设备。

前几天有同样的问题,我们发现了这个解决方法。

您可以在终端执行以下命令:

 cat /proc/bus/input/devices 

这将列出你的设备连接,你的设备应该在列表中。 例如,有一个项目对我来说就是这样:

 I: Bus=0011 Vendor=0002 Product=000a Version=0000 N: Name="TPPS/2 IBM TrackPoint" P: Phys=synaptics-pt/serio0/input0 S: Sysfs=/devices/platform/i8042/serio4/serio5/input/input15 U: Uniq= H: Handlers=mouse1 event15 B: PROP=0 B: EV=7 B: KEY=70000 0 0 0 0 B: REL=3 

在处理程序下,您会注意到事件15显示。 你可以通过引用/ dev / input / event15来访问数据流。 你必须弄清楚你的情况是什么

你有没有尝试使用mdev? 它是udev的一个轻量级替代品,它填充/ dev。 如果未启用热插拔,则可能需要手动运行。

要扫描/ sys并创建设备,请尝试:

 mdev -s