Raspberry Pi: USB - Universal Serial Bus

Abhängig vom Modell weist der Raspberry Pi einen bis vier USB-Ports auf. Der USB ist eine universelle externe Schnittstelle für alle möglichen Peripheriegeräte, die am Raspberry Pi betrieben werden sollen. Typischerweise Tastatur, Maus, USB-Sticks, WLAN-Adapter und ähnliches.

USB 2.0 hat eine Übertragungsgeschwindigkeit von bis zu 480 MBit/s. Das sind umgerechnet 60 MByte/s. Wobei es sich eher um einen theoretischen Wert handelt. In der Regel erreicht man an einem USB-2.0-Port kaum mehr als 30 MByte/s. Und das auch nur bei der Übertragung großer Dateien oder einen lange andauernden Datenstrom. Aber nicht bei der Übertragung einer Vielzahl kleiner Dateien, wie es typisch ist.

Der USB am Raspberry Pi

Der USB am Raspberry Pi

Anzeige aller USB-Geräte in der Baustruktur:

lsusb -t

Die USB-Geräte melden sich am Bus mit dem angezeigten Namen an. Bei manchen Geräten ist die Bezeichnung nicht eindeutig. Unter Umständen kommt man durch den Herstellernamen oder die Produktbezeichnung auf die Funktion des Geräts.

Die Architektur des Raspberry Pi weist einen kleinen Schönheitsfehler auf, der dazu führt, dass er nicht für alle Anwendungen gleichermaßen geeignet ist. Insbesondere, wo es auf schnelle I/O-Verbindungen ankommt.
Der System-on-Chip des Raspberry Pi hat nur einen einzigen internen USB-Port. An diesem USB-Port hängen alle externen USB-Ports und der Ethernet-Port dran. Das heißt in der Konsequenz, dass sich die Netzwerk-Schnittstelle und alle externen Geräte, die per USB mit dem Raspberry Pi verbunden sind, sich die Gesamtbandbreite von 480 MBit/s teilen müssen. Damit ist die I/O-Leistung des Raspberry Pi auf maximal 60 MByte/s, in der Praxis auf ca. 30 MByte/s beschränkt. Auch dann, wenn die angeschlossenen Geräte schneller arbeiten können.

Diese Einschränkung muss man immer dann berücksichtigen, wenn der Raspberry Pi zwischen zwei Schnittstellen vermitteln soll. Beispielsweise als Router, Gateway oder Bridge. Das bedeutet, man nutzt auf der einen Seite den Ethernet-Port und auf der anderen Seite einen weiteren Ethernet- oder WLAN-Adapter an einem USB-Port. Dann muss der Datenverkehr zweimal durch den internen USB-Port. Einmal hinein und ein zweites Mal hinaus. Das bedeutet, man reduziert die I/O-Leistung des internen USB-Ports um die Hälfte. Unabhängig davon wie viele USB-Ports der Raspberry Pi tatsächlich hat.

Einschränkungen

  • Beim Kopieren von einem USB-Datenträger auf ein Laufwerk im Netzwerk, erreicht der Raspberry Pi 2 knapp 11 MByte pro Sekunde. Beim Vorgänger sind es nur knapp 4 MByte pro Sekunde.
  • Das Betriebssystem von einem USB-Stick zu booten ist eine gute Idee, weil die SD-Karte viel besser angebunden ist, als der USB.

Stromversorgung über den USB

Bekanntlich werden USB-Geräte fast ohne Ausnahme über den USB gespeist, an deren Host sie angeschlossen sind. Bei der Stromentnahme sind diese Geräte teilweise recht schonungslos, was an USB-Ports an handelsüblichen PCs kein Problem darstellt. Obwohl es hier Grenzen gibt, geben sich die Motherboard-Hersteller nicht die Blöße, schwache USB-Ports einzubauen.

An einem Raspberry Pi ist das allerdings ein Problem, weil hier Maus und Tastatur und vielleicht auch noch der eine oder andere USB-Stick angeschlossen werden. Wenn man dann mit externen Festplatten oder stromhungrigen WLAN-Adaptern kommt, dann bricht die Stromversorgung des Raspberry Pi zusammen. Aus dem Grund wird generell empfohlen, dass USB-Geräte über einen aktiven USB-Hub angeschlossen werden.

Ab dem Raspberry Pi Modell B+ ist die Stromversorgung insbesondere über den USB für externe Geräte deutlich stabiler. Mit dem Modell B+ wurde auch ein Parameter eingeführt, der steuert, wie viel Strom USB-Geräte am USB-Anschluss entnehmen dürfen.
Standardmäßig ist der Strom auf 600 mA begrenzt. Insgesamt darf der Raspberry Pi 1,2 A (1.200 mA) an die USB-Geräte weitergeben. Das geht aber nur dann, wenn das Netzteil entsprechend leistungsfähig ist.

Um das Maximum von 1,2 A (1200 mA) aus einem USB-Port ziehen zu können, muss man das in der Datei "/boot/config.txt" mit der Zeile "safe_mode_gpio=4" (alte Firmware) bzw. "max_usb_current=1" (aktuelle Firmware) freischalten, um die maximale Stromentnahme von 600 mA aufzuheben. Diese Grenze gibt es, damit der Raspberry Pi bei einem stromhungrigen USB-Gerät nicht instabil wird und sich abschaltet.

USB-Troubleshooting

Gelegentlich kommt es vor, dass USB-Geräte am Raspberry Pi nicht richtig funktionieren. Hierzu zählt Architektur-bedingt auch der Ethernet-Port des Raspberry Pi. Der hängt am einzigen internen USB-Port. In der Regel sind USB-Probleme dann meist auch Netzwerk-Probleme.

USB-Probleme haben aber nichts mit dem Raspberry Pi zu tun, sondern mit einer schlechten Stromversorgung. Die Ursache ist in der Regel immer ein minderwertiges Netzteil oder Ladegerät, dass nicht genug Strom liefert und in der Folge die Versorgungsspannung einbricht.
Bewegt sich die Versorgungsspannung unter eine bestimmte Grenze, versucht ein Raspberry Pi den Absturz durch Abschalten interner Komponenten zu verhindern. Dadurch verringert er den Stromverbrauch. Stimmen die Spannungswerte wieder nimmt er die Komponenten wieder in Betrieb.
Wenn der interne USB aufgrund schlechter Stromversorgung abgeschaltet wird, dann gehen dabei auch die Netzwerk-Verbindungen über Ethernet und/oder einen USB-WLAN-Adapter verloren. Wenn der USB wieder in Betrieb genommen wird, dann bleibt dabei aber oft die Netzwerk-Verbindung weg. In der Regel muss der Raspberry Pi neu gestartet werden. Bedarfsweise könnte man auch die Netzwerk-Verbindungen manuell reinitialisieren.

In der Regel löst man das USB-Problem so, dass man stromhungrige USB-Geräte über einen aktiven USB-Hub betreibt oder gegen energieschonendere Geräte austauscht. Besser ist es man besorgt sich ein Netzteil, dass seinen Namen verdient und über ausreichend Power verfügt, bei kurzzeitig erhöhter Stromentnahme eine stabile Spannungsversorgung zu gewährleisten.

USB-Sticks und -Festplatten mounten/einhängen

Weitere Informationen zum USB

Weitere verwandte Themen:

Teilen:

Praxishandbuch Raspberry Pi

Das Raspberry Pi Praxishandbuch

  • Installation, Konfiguration und erste Schritte
  • Hardware, Software und Projekte
  • Schritt für Schritt zum Profiwissen

Mehr Informationen zum Praxishandbuch

Weitere Bücher zum Raspberry Pi