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

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.