USB Bus und Device ID einer Schnittstelle zuordnen

vendredi 21 octobre 2016

Hallo,

anhand der von lsusb ausgegebenen Liste, würde ich gerne auf die entsprechende Schnittstelle zugreifen können. Umgekehrt bekomme ich es hin. Ich möchte aber nicht jedes Gerät einzeln abfragen.

Ich habe mehrere identische Geräte an einen Hub angeschlossen und will wissen über welches /dev/ttyUSBx ich sie ansprechen kann.

Hier mein Ansatz:
Code:

## Filter auf meine Geräte:
# lsusb | grep '1234:5678'

Bus 001 Device 024: ID 1234:5678 My Special Device
Bus 001 Device 023: ID 1234:5678 My Special Device
Bus 001 Device 022: ID 1234:5678 My Special Device

Schön wäre ein Skript, was mit Bus und DeviceId angesprochen wird und dann die entsprechende Ausgabe macht: (Aber wie soll diese Skript aussehen?)
Code:

# get-dev.sh 1 24
USBINFO:  Bus 001 Device 024: ID 1234:5678 My Special Device
DEV:  /dev/ttyUSB0
DEV:  /dev/ttyUSB1

# get-dev.sh 1 23
USBINFO:  Bus 001 Device 023: ID 1234:5678 My Special Device
DEV:  /dev/ttyUSB7
DEV:  /dev/ttyUSB8

# ....

Wie zu sehen ist, gehören immer 2 /dev/ttyUSB-Schnittstellen zu einem Gerät.

ein Versuch hatte ich schon hiermit unternommen:
Code:

# find /sys/bus/usb/devices/usb*/ -name dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.0/ttyUSB25/tty/ttyUSB25/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.1/ttyUSB26/tty/ttyUSB26/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.3/host24/target24:0:0/24:0:0:0/bsg/24:0:0:0/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.3/host24/target24:0:0/24:0:0:0/block/sr6/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.3/host24/target24:0:0/24:0:0:0/scsi_generic/sg14/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.4/host25/target25:0:0/25:0:0:0/bsg/25:0:0:0/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.4/host25/target25:0:0/25:0:0:0/block/sdh/dev
/sys/bus/usb/devices/usb1/1-1/1-1.2/1-1.2.4/1-1.2.4.3/1-1.2.4.3:1.4/host25/target25:0:0/25:0:0:0/scsi_generic/sg13/dev

Mein erster Gedanke war: /usb1/..../host24/target24 passt zu Bus 001 Device 024 und ttyUSB25 und ttyUSB26 wären die gesuchten Schnittstellen. Leider war die vermutung falsch :confused:

Hat jemand eine bessere Idee/Ansatz/Hinweis?

Gruß,
Tom


0 commentaires:

Enregistrer un commentaire

 

Lorem

Ipsum

Dolor