USB-Ports unter Linux und Windows

  • Mal eine Frage, vielleicht weiß jemand was:

    Unter Linux habe ich seit Jahren keine Probleme mit USB, außer dass sich an manchen Stellen immer noch Inkompatibilitäten zwischen USB2 und USB3 befinden. Darum geht es aber nicht.

    Nur die USB2-Ports betrachtet:

    Unter Linux ist es eher egal, welchen Port ich am Hub benutze. Kannte ich bisher jedenfalls nicht anders. Spielt es in irgend einer Form eine Rolle, ob ich für bestimmte Geräte bestimmte Ports benutze?

    Ich weiß, dass Windows sich da sehr zickig anstellen kann, wenn man ein Gerät einfach an einen anderen Port anschließt. Dann wird ein neues Gerät erkannt und wieder "Treiber" geladen, eine neue Kennung erstellt und weiterer Quatsch, der einem das Leben schwer macht.

    Hat da jemand Infos, dass bestimmte Ports nicht einfach getauscht werden können? Gibts Linux Distributionen, die sich da besonders verhalten?

    And still, we will be here, standing like statues.

    Schinder und Knarren, statt Kinder und Narren...

    Alles ist so unsagbar schnell geworden.
    (EROC, Let's Gläntz)

    Vertrauen muss verdient werden. Man verschenkt es nicht.

    Ich stelle keine dummen Fragen. Du musst Dich mit Deinen Antworten schon ein bisschen anstrengen.

  • Beim WLAN-Stick musste ich beim Umstecken von vorn nach hinten nur den Rechner neustarten. Die Treiber musste ich nicht anfassen. Ich denke die Netzwerkdienste neustarten hätte es auch getan.

    Beim Bluetooth-Dongle für meine Hifi-Anlage muss ich nicht mal neustarten. Ich benutze Manjaro.

  • dass Windows sich da sehr zickig anstellen kann, wenn man ein Gerät einfach an einen anderen Port anschließt.

    Bei Druckern war das oft ein großes Problem so das man lieber genau notierte an welchem USB der Drucker steckte.

    Unter Linux habe ich bei COM-Port zu USB Adaptern beobachtet das eventuell ein anderes TTY Device eingerichtet wird.

    Und Netzwerk-Adapter erstellen unter Windows und Linux eventuell neue Schnittstellen mit neuen Namen was dann bei Scripten zu Fehlfunktionen führt.

    PC: AMD Ryzen 7 5700X | AMD RX6600 | 32GB RAM | Debian 12 Xfce
    Notebook: AMD Ryzen 5 5300U | Vega Graphic | 16GB RAM | Debian 12 Xfce

  • Hm, ok. Hängt also teilweise von den Geräten ab, die man anschließt. Das könnte was erklären. Wird auf jeden Fall getestet.

    And still, we will be here, standing like statues.

    Schinder und Knarren, statt Kinder und Narren...

    Alles ist so unsagbar schnell geworden.
    (EROC, Let's Gläntz)

    Vertrauen muss verdient werden. Man verschenkt es nicht.

    Ich stelle keine dummen Fragen. Du musst Dich mit Deinen Antworten schon ein bisschen anstrengen.

  • Es kann sogar Unterschiede machen, ob du vorne oder hinten einsteckst. Das liegt aber an extrem billigen Kabeln und ist nicht dem OS anzulasten. Wobei hier wohl hauptsächlich Geschwindigkeitsprobleme auftreten, denke ich.

    💾 AMD EPYC 7452 (8 Cores) 40GB | 💾 Unraid Homeserver i5-4570 16GB

    💻 Ryzen 9 7900X RX7800XT 32GB | 💻 MacBook Pro M2Pro 32GB

    EndeavourOS <3

  • Es kann sogar Unterschiede machen, ob du vorne oder hinten einsteckst. Das liegt aber an extrem billigen Kabeln und ist nicht dem OS anzulasten. Wobei hier wohl hauptsächlich Geschwindigkeitsprobleme auftreten, denke ich.

    Oder auch an welchem Controller "vorn und hinten" hängen. Das ist nicht immer gleich.
    Außerdem hat jede USB Buchse eine eigene "Adresse" und eine definierte Stromhöhe.

    PC: AMD Ryzen 7 5700X | AMD RX6600 | 32GB RAM | Debian 12 Xfce
    Notebook: AMD Ryzen 5 5300U | Vega Graphic | 16GB RAM | Debian 12 Xfce

  • So weit, so gut. Wie sieht es aus, wenn es nur um die USB-Ports an einem HUB geht, die untereinander getauscht werden? Unter Umständen sind auch mehrere Controller in einem HUB verbaut, wenn er mehr als 4 Ports hat.

    And still, we will be here, standing like statues.

    Schinder und Knarren, statt Kinder und Narren...

    Alles ist so unsagbar schnell geworden.
    (EROC, Let's Gläntz)

    Vertrauen muss verdient werden. Man verschenkt es nicht.

    Ich stelle keine dummen Fragen. Du musst Dich mit Deinen Antworten schon ein bisschen anstrengen.

  • Hatte auf dem Server das Problem, dass je nach Reihenfolge des Einsteckens mal die Sticks ttyUSB0 oder ttyUSB1 hießen.

    Abhilfe schafft hier eine udev-Regel, die ihr unter /etc/udev/rules.d/ hinterlegen könnt. Damit ist dann sichergestellt, dass der Stick immer unter dem gleichen Namen angesprochen werden kann.

    In diesem Beispiel habe ich die Namen "ttyUSBdeconz" und "ttyUSBoscam" vergeben. Vendor- und Produkt-ID lassen sich mit lsusb abfragen.

    Code
    SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", SYMLINK+="ttyUSBdeconz"
    SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="ttyUSBoscam"
    Code
    [rules.d]$ lsusb
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 001 Device 003: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC
    Bus 001 Device 002: ID 0403:6015 Future Technology Devices International, Ltd Bridge(I2C/SPI/UART/FIFO)
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

    Einmal editiert, zuletzt von Sojan (29. Oktober 2022 um 16:19)

  • Hatte auf dem Server das Problem, dass je nach Reihenfolge des Einsteckens mal die Sticks ttyUSB0 oder ttyUSB1 hießen.

    Das ist das andere Verhalten, abhängig von der zeitlichen Abfolge des Einsteckens.

    Mir geht es eher darum, dass verschiedene Geräte immer richtig zugeordnet werden sollen, egal, in welchem Port und wann sie eingesteckt werden. Wenn da udev-Regeln vorhanden sind, die sich an den IDs orientieren, sollte der Port keine Rolle spielen, z.B. wenn ein Port defekt ist (Stecker verdreckt oder beschädigt), nimmt man halt einen anderen.

    And still, we will be here, standing like statues.

    Schinder und Knarren, statt Kinder und Narren...

    Alles ist so unsagbar schnell geworden.
    (EROC, Let's Gläntz)

    Vertrauen muss verdient werden. Man verschenkt es nicht.

    Ich stelle keine dummen Fragen. Du musst Dich mit Deinen Antworten schon ein bisschen anstrengen.

  • Wenn ich das Verhalten von USB-Sticks beobachten möchte, dann rufe ich dmesg -W auf. Ist wie tail für Textdateien.

    Dann den Stick an verschiedenen Ports einstecken und auf mögliche Unterschiede achten.

    Zitat von Manpages dmesg

    -W, --follow-new

    wartet und gibt nur neue Meldungen aus.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!