python:从USB HID设备读取

时间:2016-06-26 11:37:20

标签: python linux usb device hid

我的/ dev / hidraw上有一个USB RFID设备 对于我的串口设备,它们出现在/ dev / ttyUSB *我使用了pyserial,它就像魅力一样,但对于这个我无法使用import evdev devices = [evdev.InputDevice(fn) for fn in evdev.list_devices()] for device in devices: print(device.fn, device.name, device.phys) 需要root权限读取它 加上我需要阅读一行而不是继续聆听

我使用了evdev库,但我的设备根本没有出现:

nav

那么有一种以编程方式从设备读取的正确方法吗?

1 个答案:

答案 0 :(得分:3)

通过default evdev.list_devices()只查看/ dev / input

您需要拥有与设备配合使用的权限。您可以将您的用户添加到拥有您设备的组(请参阅$ ls -l / dev / hidraw0)

然后你需要循环收听你的设备

#!/usr/bin/python3
import evdev

devices = [evdev.InputDevice(fn) for fn in evdev.list_devices()]
for device in devices:
  print(device.fn, device.name, device.phys)

device = evdev.InputDevice("/dev/input/event4")
print(device)
for event in device.read_loop(): 
  print(event)