Чтение входного потока USB в Linux

Я работаю на встроенной Linux-машине и пытаюсь прочитать входной поток USB-устройств, но по какой-то причине у меня нет такой вещи в моем каталоге / 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 и не совсем уверен, что ищу. Может быть, кто-то может указать мне в правильном направлении?


person Dalton Conley    schedule 17.09.2010    source источник


Ответы (3)


Проверьте /dev/input/by-path и найдите свой usb-0000:00:0f.4-1. В моем поле Ubuntu это символическая ссылка на устройство.

person Karl Bielefeldt    schedule 17.09.2010
comment
У меня нет ничего связанного с этим. Единственное, что есть в моем каталоге /dev/input — это мыши. - person Dalton Conley; 17.09.2010

Была такая же проблема несколько дней назад, и мы обнаружили этот обходной путь.

Вы можете выполнить следующую команду в терминале:

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 в моем случае. Вы должны выяснить, что это в вашем случае

person Lee Torres    schedule 27.05.2013

Вы пробовали использовать mdev? Это облегченная альтернатива udev, которая заполняет /dev. Если горячее подключение не включено, вам может потребоваться запустить его вручную.

Чтобы просканировать /sys и создать устройства, попробуйте:

mdev -s
person Bjorn    schedule 20.05.2011