У меня есть устройство USB RFID, которое появляется на/dev/hidraw для моих серийных устройств, которые они появляются на/dev/ttyUSB * Я использовал pyserial, и он работает как шарм, но для этого i не мог читать из него с помощью cat /dev/hidraw0
нужны привилегии суперпользователя плюс мне нужно прочитать одну строку, а не продолжать слушатьpython: Чтение с USB-устройства HID
Я использовал evdev библиотеку, но мое устройство не появляется вообще:
import evdev
devices = [evdev.InputDevice(fn) for fn in evdev.list_devices()]
for device in devices:
print(device.fn, device.name, device.phys)
Так есть ли правильный способ читать с устройства программно?
Ваш вопрос трудно читать. Посмотрите на pyusb (конечно, вам все еще нужны права доступа к устройству). – handle
Если 'cat/dev/hidraw0' не может его видеть, это звучит не очень хорошо: у вас может быть неисправное устройство. Он появляется, когда вы используете 'lsusb' в терминале? Также проверьте 'dmesg | tail "после того, как вы подключите его. Обратите внимание, что даже если lsusb может это увидеть, это не обязательно означает, что вы действительно можете сделать что-нибудь полезное с устройством. Но если lsusb не видит этого, он, вероятно, мертв. –
Я могу читать с функцией cat, но для этого требуется разрешение root, есть ли способ читать как обычный пользователь? – safouman