Python Skript: Liste der USB/UART Adapter unter Linux

OP #4593451
Lesenswert?

Hallo,

anbei ein kleines Python Skript, das alle angeschlossenen USB/Serial 
Adapter unter Linux auflistet. Nachdem es bei mir immer wieder vorkommt, 
dass ich nicht weiss, welcher dev/ttyUSBx denn jetzt gerade an welchem 
Board hängt und die Nummern sich leider hin und wieder (aus welchen 
Gründen auch immer) ändern, hab ich mir dieses Skript gebaut. Ausgabe 
ist dann z.B.:


$ ./ttyusb.py
  ttyUSB0 -> 3-1.5:1.1 (Bus:Dev=003:005, DRIVER=qcserial)
  ttyUSB1 -> 3-1.5:1.2 (Bus:Dev=003:005, DRIVER=qcserial)
  ttyUSB2 -> 3-1.5:1.3 (Bus:Dev=003:005, DRIVER=qcserial)
  ttyUSB3 -> 1-1.1.3:1.0 (Bus:Dev=001:006, DRIVER=cp210x)
  ttyUSB4 -> 1-1.1.5:1.0 (Bus:Dev=001:007, DRIVER=ftdi_sio)


Viel Spass damit, konstruktive Kritik und Anregungen sind immer 
willkommen.

Axel
Angehängte Dateien:
#4593547
Lesenswert?

Gustl B. schrieb:
> Wenn Du eine feste Zuordnung haben willst, dann kannst du Links
> verwenden. Die über stehen auch einen Neustart. Ich glaube das war ln -s
> und da verwendet man wirklich die eindeutigen Namen, also
> /dev/serial/by-path glaube ich.

Der vielversprechenste Weg für statische Namen basierend auf vid, pid, 
seriennummer, etc. wäre es wahrscheinlich dafür udev Regeln anzulegen 
wie unter folgender URL besprochen: 
http://unix.stackexchange.com/questions/66901/how-to-bind-usb-device-under-a-static-name
OP #4595375
Lesenswert?

Gustl B. schrieb:
> Wenn Du eine feste Zuordnung haben willst, dann kannst du Links
> verwenden. Die über stehen auch einen Neustart. Ich glaube das war ln -s
> und da verwendet man wirklich die eindeutigen Namen, also
> /dev/serial/by-path glaube ich.

Das mit dem Link zu dem "USB-Pfad" unter /dev/serial/by-path ist eine 
gute Lösung, insbes. wenn die Geräte fix angeschlossen sind. Gleiches 
für die VID, PID, S/N Lösung.
Bei mir war das Problem, dass ich ein paar Hub fürs Basteln habe. Ist 
praktisch, weil immer irgendwo ein Port frei ist, wenn man einen braucht 
- auch mit genug phys. Abstand zu den anderen Ports. Aber leider wird 
das dann auch manchmal unübersichtlich. Da ist das Skript einfach 
praktisch um mal zu schauen, was jetzt wo ist. Neben "lsusb" sozusagen 
ein spezielles "lsttyusb" Kommando.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren