Dies ist ein als exzellent ausgezeichneter Artikel.

Universal Serial Bus

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 22. Dezember 2014 um 01:20 Uhr durch Cvf-ps (Diskussion | Beiträge) (Änderungen von 2.164.194.199 (Diskussion) auf die letzte Version von Gustav von Aschenbach zurückgesetzt). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Zur Navigation springen Zur Suche springen

Der Universal Serial Bus (USB) [ˌjuːnɪˈvɜːsl ˈsɪɹiəl bʌs] ist ein serielles Bussystem zur Verbindung eines Computers mit externen Geräten. Mit USB ausgestattete Geräte oder Speichermedien (USB-Speichersticks) können im laufenden Betrieb miteinander verbunden (Hot Swapping) und angeschlossene Geräte sowie deren Eigenschaften automatisch erkannt werden. Vor der Einführung von USB gab es eine Vielzahl verschiedener Schnittstellentypen mit unterschiedlichsten Steckern zum Anschluss von Zubehör und Peripheriegeräten an Heim- und Personal Computer. Fast alle diese Schnittstellenvarianten wurden durch USB-Stecker ersetzt, was für die Anwender Vereinfachungen mit sich brachte, die jedoch durch die Vielzahl an USB-Steckern und -Buchsen relativiert wurde. Ursprünglich 1996 eingeführt, wurde im Jahr 2000 die heute noch meistverbreitete Version USB 2.0 spezifiziert, mit der deutlich höhere Datenübertragungsraten möglich wurden. Die aktuelle, 2008 definierte Version 3.0 bietet einen neuen „SuperSpeed“-Übertragungsmodus mit einer Datentransferrate von 5 Gbit/s.

USB-Symbol
Altes USB-Logo, das nicht mehr verwendet werden soll

Überblick

USB ist ein serieller Bus, d. h. die einzelnen Bits eines Datenpaketes werden nacheinander übertragen. Die Datenübertragung erfolgt symmetrisch über zwei verdrillte Leitungen, wobei durch die eine Leitung das Datensignal und durch die andere das dazu jeweils invertierte Signal übertragen wird. Der Signalempfänger bildet die Differenzspannung beider Signale; der Spannungsunterschied zwischen 1- und 0-Pegeln ist dadurch doppelt so groß, eingestrahlte Störungen werden weitgehend eliminiert. Das erhöht die Übertragungssicherheit und unterdrückt Gleichtaktstörungen. Zwei weitere Leitungen dienen zur Stromversorgung der angeschlossenen Geräte. Durch die Verwendung von nur vier Adern in einem Kabel kann dieses dünner und billiger ausgeführt werden als bei parallelen Schnittstellen. Eine hohe Datenübertragungsrate ist mit relativ geringem Aufwand zu erreichen, da nicht mehrere Signale mit identischem elektrischen und zeitlichen Verhalten übertragen werden müssen.

Die Bus-Spezifikation sieht einen zentralen Host-Controller (Master) vor, der die Koordination der angeschlossenen Peripherie-Geräte (den sog. Slave-Clients) übernimmt. Daran können theoretisch bis zu 127 verschiedene Geräte angeschlossen werden. An einem USB-Port kann immer nur ein USB-Gerät angeschlossen werden. Sollen an einem Host mehrere Geräte angeschlossen werden, muss deshalb ein Verteiler (Hub) für deren Kopplung sorgen. Durch den Einsatz von Hubs entstehen Baumstrukturen, die alle im Host-Controller enden.

Einsatzgebiete von USB

USB eignet sich für viele Geräte wie Massenspeicher (etwa Festplatte, Diskette, DVD-Laufwerk), Drucker, Scanner, Webcams, Maus, Tastatur, aktive Lautsprecher, aber auch Dongles und sogar Grafikkarten und Monitore.[1] Einige Geräte, zum Beispiel USB-Speichersticks, sind überhaupt erst mit USB entstanden. USB kann für Geräte mit geringem Stromverbrauch wie Mäuse, Telefone, Tastaturen, aber auch einige CIS-Scanner oder manche 2,5-Zoll-Festplatten und externe Soundkarten die Stromversorgung übernehmen.

Über USB können heute zahlreiche Gerätetypen angeschlossen werden, die vor der USB-Einführung über eine größere Zahl verschiedener Schnittstellentypen angebunden wurden. Zu den abgelösten älteren Typen gehören sowohl serielle (RS-232, PS/2-Schnittstelle für Tastatur und Maus, Apple Desktop Bus), parallele (Centronics-Schnittstelle) als auch analoge (Gameport) Schnittstellen. Die alten Schnittstellen werden auf manchen Rechner-Hauptplatinen und Notebooks teils noch immer angeboten, auch wenn entsprechende Geräte nicht mehr im Handel erhältlich sind. Alte Geräte mit solchen Anschlüssen, wie serielle 56k-Modems oder parallele Drucker sind aber vielerorts noch vorhanden. Im industriellen Bereich wird noch oft RS-232 über ältere PCs oder Adapterkarten eingesetzt, da entsprechende USB-Adapter nicht echtzeitfähig sind und Peripheriegeräte in diesem Umfeld wesentlich langlebiger sind. Mittlerweile hat USB auch externe SCSI-Schnittstellen weitgehend verdrängt.

Im Vergleich zu den früheren Lösungen bietet USB deutlich höhere Datenübertragungsraten. Die Daten werden jedoch in Paketen übertragen, für manche zeitkritische Anwendungen ist es deshalb weniger geeignet – etwa bei mit nur wenigen Bytes belegten Paketen, die die Übertragungsrate senken, oder wenn das Sammeln von Bytes zum Füllen eines Pakets die Übertragung verzögern würde.

Bereits seit der Einführung der USB-2.0-Spezifikation sind relativ hohe Datenübertragungsraten möglich, dadurch wurde USB für den Anschluss weiterer Gerätearten wie Festplatten, TV-Schnittstellen und Fotokameras geeignet. Bei externen Massenspeicherlösungen steht USB heute in Konkurrenz zu FireWire und eSATA und hat diese zumindest im Heimbereich fast vollständig verdrängt.

Geschichte und Entwicklung

USB-2.0-PCI-Erweiterungskarte

Der universelle serielle Bus (USB 1.0) wurde vom Hersteller Intel entwickelt und 1996 im Markt eingeführt. Einen wichtigen Beitrag hierzu leistete das Entwicklungsteam um Ajay Bhatt bei Intel. Er war zum Anschluss von Peripheriegeräten an PCs konzipiert und sollte die Nachfolge einer ganzen Reihe damals verwendeter PC-Schnittstellen antreten und diese vereinheitlichen. Deshalb war die USB-Spezifikation nicht auf Tastatur und Maus begrenzt, sondern schloss auch andere Peripheriegeräte wie Drucker und Scanner mit ein. Massenspeicher – wie etwa Festplatten – wurden zwar von USB 1.0 unterstützt, wegen der maximalen Datenrate von 12 Mbit/s waren sie dafür aber nur sehr eingeschränkt zu gebrauchen.

Als einer der ersten Chipsätze unterstützte 1996 der ursprünglich für den Pentium Pro entwickelte und später für den Pentium II verwendete 440FX das USB-Protokoll, was vor Einführung der ATX-Mainboards jedoch kaum bis gar nicht beworben wurde. Die Hauptursache dafür dürfte zum einen in der mangelhaften beziehungsweise fehlenden Unterstützung von USB durch die damals verbreiteten Betriebssysteme Windows 95 und Windows NT 4.0 gelegen haben, zum anderen waren in der Anfangszeit auch kaum USB-Geräte verfügbar.

Ende 1998 folgte die überarbeitete Spezifikation USB 1.1, die in erster Linie Fehler und Unklarheiten in der 1.0-Spezifikation behob und den Interrupt Out Transfer hinzufügte. Die Geschwindigkeit erhöhte sich nicht. USB 1.x war deshalb keine Konkurrenz zu Apples FireWire-Standard (IEEE 1394), der von Anfang an (1995) eine Datenrate von bis zu 400 Mbit/s hatte und im April 2003 auf bis zu 800 Mbit/s beschleunigt wurde. Dennoch setzte Apple die Schnittstelle in der Revision USB 1.1 mit der Entwicklung des iMac ein. Mit diesem beginnend ersetzte Apple damit den hauseigenen ADB.

Im Jahr 2000 wurde USB 2.0 spezifiziert, was vor allem eine weitere Datenrate von 480 Mbit/s hinzufügte und so den Anschluss von Festplatten oder Videogeräten ermöglichte. Produkte dafür erschienen jedoch erst ab 2002 am Markt.

2008 wurden die neuen Spezifikationen für USB 3.0 SuperSpeed vorgestellt, die mit einer Datenrate von 5 Gbit/s beworben wird, allerdings nur eine Brutto-Datentransferrate von 4 Gbit/s erlaubt. Die theoretisch maximal mögliche Netto-Datenrate liegt noch einmal etwas unter der Brutto-Datenrate. Mit dieser Spezifikation werden auch neue Stecker, Kabel und Buchsen eingeführt, die größtenteils mit den alten kompatibel sind.[2]

Die ersten Mainboards und Geräte mit USB 3.0 zogen 2011 in den Massenmarkt ein. Im selben Jahr veröffentlichte Intel zusammen mit Apple die Thunderbolt-Schnittstelle in direkter Konkurrenz. Thunderbolt ist dabei doppelt so schnell wie USB 3.0, Thunderbolt 2 sogar viermal so schnell (2× 10 Gbit/s) und bietet darüber hinaus ein mitgeschleiftes DisplayPort-Signal.

Spannungsversorgung

Neben dem Datenprotokoll spezifiziert der USB-Standard die bereitgestellte Spannung. Sie ist stabilisiert, liegt bei 5 V ±5 % und liefert eine Stromstärke von mindestens 100 mA. Auf diesem Standard basieren USB-Netzteile.

Erst nach Freigabe durch den Host-Controller darf ein Gerät mehr als die obigen 100 mA, aber nicht mehr als 500 mA (bis USB 2.0) bzw. 900 mA (USB 3.0[3]) Strom beziehen. Am Ausgang des USB-Host muss die Spannung zwischen 4,65 V und 5,25 V liegen, allerdings ist ein Spannungsabfall bis auf 4,40 V am Ende eines USB-Kabels zulässig, hinter einem passiven USB-Hub sind sogar 4,00 V erlaubt.[4]

Externe 2,5″-Festplatten haben Anlaufströme von 600 mA bis 1100 mA, im Betrieb begnügen sie sich mit 250 mA bis 400 mA (Stand: 2010). Die kurzzeitige Überlastung des USB-Ports wird von fast allen Geräten geduldet, nur wenige Geräte haben mit besonders stromhungrigen Festplatten Probleme. Die früher häufig zu findenden Doppel-USB-Anschlüsse (die laut USB-Spezifikation nicht zulässig sind) oder zusätzliche Betriebsspannungseingänge an 2,5"-Festplatten sind selten geworden (Stand: 2011). Externe 1,8″-Festplatten liegen mit Anlaufströmen um die 400 mA und Betriebsströmen um die 150 mA innerhalb der USB-Spezifikation und bereiten somit keine Probleme. Mit USB 3.0 wurde auch der maximale Strom auf 900 mA erhöht.[3] Damit ist die Stromversorgung vieler, aber nicht aller, im Handel erhältlicher externer 2,5″-Festplatten unter Einhaltung der USB-Spezifikationen gesichert. Im Gegensatz zu kleineren Festplattenformaten lassen sich externe 3,5″-Festplatten grundsätzlich nicht ohne separate Spannungsversorgung an einem USB-Anschluss betreiben. Zum einen, weil sie neben den 5 V auch 12 V als Betriebsspannung benötigen, und zum anderen, weil ihr Strombedarf über die spezifizierten 500 mA hinausgeht. Typisch liegt dieser bei 800 bis über 1000 mA.

In der EU-Initiative für einheitliche Mobiltelefon-Lade/Netzgeräte,[5][6] welche sich im Wesentlichen an die 2009 in Version 1.1 erschienene USB „Battery Charging Specification“[7] anlehnt, ist auch ein USB-Lademodus mit einem Ladestrom zwischen 500 und 1500 mA spezifiziert; dieser Lademodus wird mittels Kennung in der Datenleitung aktiviert.

Übertragungstechnik/Spezifikation

Host-Controller

Die Kommunikation bei USB wird von einem Host-Controller gesteuert, der heute in der Regel auf dem Motherboard eines Computers verbaut ist. Nur dieser kann Daten von einem Gerät lesen oder zu einem Gerät senden (Ausnahme: siehe USB On-the-Go). Ein Gerät darf nur dann Daten zum Host-Controller senden, wenn es von diesem abgefragt wird. Bei zeitkritischen Datenströmen, wie etwa bei Mausbewegungen, muss der Hostcontroller von sich aus häufig genug beim Gerät anfragen (Polling), ob es Daten senden will, um ein Ruckeln zu verhindern.

Die USB-Controller-Chips in den PCs halten sich an einen von vier etablierten Standards. Diese unterscheiden sich in ihrer Leistungsfähigkeit und der Implementierung von bestimmten Funktionen. Für ein USB-Gerät sind die verwendeten Controller (fast) vollständig transparent, allerdings ist es für den Benutzer des PC mitunter wichtig, feststellen zu können, welche Art Chip der Rechner verwendet, um den korrekten Treiber auswählen zu können.

Universal Host Controller Interface
UHCI wurde im November 1995 von Intel spezifiziert. Die aktuelle Version des Dokuments trägt die Revisionsnummer 1.1. UHCI-Chips bieten Unterstützung für USB-Geräte mit 1,5 oder 12 Mbit/s Datenrate im Low- oder Full-Speed-Modus. Sie werden ausschließlich von den Herstellern Intel und VIA Technologies gebaut.
Open Host Controller Interface
OHCI ist eine Spezifikation, die gemeinsam von Compaq, Microsoft und National Semiconductor entwickelt wurde. Version 1.0 des Standards wurde im Dezember 1995 veröffentlicht, die aktuelle Fassung trägt die Versionsnummer 1.0a und stammt von September 1999. Ein OHCI-Controller hat prinzipiell die gleichen Fähigkeiten wie seine UHCI-Pendants, erledigt aber mehr Aufgaben in Hardware und ist dadurch marginal schneller als ein UHCI-Controller. Dieser Unterschied bewegt sich meist in Bereichen, die gerade noch messbar sind, daher kann man ihn in der Praxis vernachlässigen; Geräteentwickler müssen es jedoch berücksichtigen. Bei USB-Controllern auf Hauptplatinen mit Chipsätzen, die nicht von Intel oder VIA stammen, und auf USB-PCI-Steckkarten mit Nicht-VIA-Chipsätzen handelt es sich mit hoher Wahrscheinlichkeit um OHCI-Controller.
Enhanced Host Controller Interface
EHCI stellt USB-2.0-Funktionen bereit. Es wickelt dabei nur die Übertragungen im Hi-Speed-Modus (480 Mbit/s) ab. Wenn man USB-1.1-Geräte an einen Port mit EHCI-Chip steckt, reicht der EHCI-Controller den Datenverkehr an einen hinter ihm liegenden UHCI- oder OHCI-Controller weiter (alle Controller sind typischerweise auf demselben Chip). Wenn kein EHCI-Treiber verfügbar ist, werden Hi-Speed-Geräte ebenfalls an den USB-1.1-Controller durchgereicht und arbeiten dann soweit möglich mit langsamerer Geschwindigkeit.
Extensible Host Controller Interface
Die xHCI-Spezifikation 1.0 wurde im Mai 2010 von Intel veröffentlicht[8] und stellt zusätzlich zu den mit USB 2.0 verfügbaren Übertragungsgeschwindigkeiten den SuperSpeed-Modus mit 5 Gb/s bereit.

Einstellungen und Schnittstellen

Intern adressiert der USB-Controller die angeschlossenen Geräte mit einer sieben Bit langen Kennung, wodurch sich die 127 maximal anschließbaren Geräte ergeben. Wenn an einem Port neue Geräte detektiert werden, schaltet der Host-Controller diesen ein und sendet dem angeschlossenen Gerät einen Reset, indem er beide Datenleitungen für mindestens 10 ms auf Massepotential legt.[9] Dadurch belegt das Gerät zunächst die Adresse 0 und bekommt dann vom Host eine eindeutige Adresse zugeteilt. Da immer nur ein Port mit noch nicht konfiguriertem Gerät aktiviert wird, kommt es zu keinen Adresskollisionen.

Der Host-Controller fragt meist zuerst nach einem Device-Deskriptor, der unter anderem die Hersteller- und Produkt-ID enthält. Mit weiteren Deskriptoren teilt das Gerät mit, welche alternativen Konfigurationen es besitzt, in die es von seinem Gerätetreiber geschaltet werden kann. Bei einer Webcam könnten diese Alternativen etwa darin bestehen, ob die Kamera eingeschaltet ist oder ob nur das Mikrofon läuft. Für den Controller ist dabei relevant, dass die unterschiedlichen Konfigurationen auch einen unterschiedlichen Strombedarf mit sich bringen.

Innerhalb einer Konfiguration kann das Gerät verschiedene Schnittstellen definieren, die jeweils über einen oder mehrere Endpunkte verfügen. Unterschiedlicher Bedarf an reservierter Datenrate wird über sogenannte Alternate Settings signalisiert. Ein Beispiel dafür ist eine Kamera (etwa eine Webcam), die Bilder in zwei verschiedenen Auflösungen senden kann. Das Alternate Setting 0 wird aktiviert, wenn ein Gerät keine Daten übertragen möchte und somit pausiert.

Geräteklassen

Damit nicht für jedes Gerät ein eigener Treiber nötig ist, definiert der USB-Standard verschiedene Geräteklassen, die sich durch generische Treiber steuern lassen. Auf diese Weise sind USB-Tastaturen, -Mäuse, USB-Massenspeicher, Kommunikations- („Communications Device Class“, kurz: CDC) und andere Geräte mit ihren grundlegenden Funktionen sofort verwendbar, ohne dass zuvor die Installation eines spezifischen Treibers notwendig ist. Herstellerspezifische Erweiterungen (die dann einen eigenen Treiber erfordern) sind möglich. Die Information, zu welchen Geräteklassen sich ein Gerät zählt, kann im Device-Deskriptor (wenn das Gerät nur einer Klasse angehört) oder in einem Interface-Deskriptor (bei Geräten, die zu mehreren Klassen gehören) untergebracht werden.

USB-Geräteklassen[10]
Klasse Verwendung Beschreibung Beispiele
00h Gerät Composite Device Die Klasse wird auf Ebene der Interface-Deskriptoren definiert
01h Interface Audio Lautsprecher, Mikrofon, Soundkarte, MIDI
02h Beides Kommunikation und CDC-Steuerung Modem, Netzwerkkarte, Wi-Fi-Adapter
03h Interface Human Interface Device Tastatur, Maus, Joystick etc.
05h Interface Physical Interface Device Physikalisches Feedback, etwa für Force-Feedback-Joysticks
06h Interface Bilder Digitalkamera, Scanner
07h Interface Drucker Laserdrucker, Tintenstrahldrucker
08h Interface Massenspeicher USB-Stick, Festplatten, Speicherkarten-Lesegeräte, MP3-Player
09h Gerät USB-Hub Full Speed Hub, Hi-Speed Hub
0Ah Interface CDC-Daten diese Klasse wird zusammen mit Klasse 02h verwendet
0Bh Interface Chipkarte Chipkarten-Lesegerät
0Dh Interface Content Security Finger-Print-Reader
0Eh Interface Video Webcam
0Fh Interface Personal Healthcare Pulsuhr
10h Interface Audio/Video Devices AV-Streaming-Geräte
DCh Beides Diagnosegerät USB-Compliance-Testgerät
E0h Interface kabelloser Controller Bluetooth-Adapter, Microsoft RNDIS
EFh Beides Diverses ActiveSync-Gerät
FEh Interface softwarespezifisch IrDA-Brücke
FFh Beides herstellerspezifisch der Hersteller liefert einen Treiber mit

Übertragungsmodi

Der USB bietet den angeschlossenen Geräten verschiedene Übertragungsmodi an, die diese für jeden einzelnen Endpunkt festlegen können.

Endpunkte / Endpoint

USB-Geräte verfügen über eine Anzahl von durchnummerierten „Endpunkten“, gewissermaßen Unteradressen des Gerätes. Die Endpunkte sind in den Geräten hardwareseitig vorhanden und werden von der USB SIE (Serial Interface Engine) bedient. Über diese Endpunkte können voneinander unabhängige Datenströme laufen. Geräte mit mehreren getrennten Funktionen (Webcams, die Video und Audio übertragen) haben mehrere Endpunkte. Die Übertragungen von und zu den Endpunkten erfolgen meist unidirektional, für bidirektionale Übertragungen ist deshalb ein IN- und ein OUT-Endpunkt erforderlich (IN und OUT beziehen sich jeweils auf die Sicht des Hostcontrollers). Eine Ausnahme davon sind Endpunkte, die den sogenannten Control Transfer Mode verwenden.

In jedem USB-Gerät muss ein Endpunkt mit Adresse 0 vorhanden sein, über den die Erkennung und Konfiguration des Gerätes läuft, darüber hinaus kann er auch noch weitere Funktionen übernehmen. Endpunkt 0 verwendet immer den Control Transfer Mode. Ein USB-Gerät darf maximal 31 Endpunkte haben: Den Control-Endpunkt (der eigentlich zwei Endpunkte zusammenfasst) und je 15 In- und 15 Out-Endpunkte. Low Speed-Geräte sind auf Endpunkt 0 plus maximal zwei weitere Endpunkte im Interrupt Transfer Mode mit maximal 8 Bytes pro Transfer beschränkt.

Isochroner Transfer

Der isochrone Transfer ist für Daten geeignet, die eine garantierte Datenrate benötigen. Diese Transferart steht für Full-Speed- und Hi-Speed-Geräte zur Verfügung. Definiert das sogenannte Alternate Setting einen Endpunkt mit isochronem Transfer, so reserviert der Host-Controller-Treiber die erforderliche Datenrate. Steht diese Datenrate nicht zur Verfügung, so schlägt die Aktivierung des genannten Alternate Settings fehl, und es kann mit diesem Gerät keine isochrone Kommunikation aufgebaut werden.

Die erforderliche Datenrate ergibt sich aus dem Produkt des Abfrageintervalls und der Größe des Datenpuffers. Full-Speed-Geräte können jede Millisekunde bis zu 1023 Bytes je isochronem Endpunkt übertragen (1023 kbyte/s), Hi-Speed-Geräte können bis zu drei Übertragungen je Micro-Frame (125 µs) mit bis zu 1024 kbytes ausführen (24 Mbyte/s). Stehen in einem Gerät mehrere isochrone Endpunkte zur Verfügung, erhöht sich die Datenrate entsprechend. Die Übertragung ist mit einer Prüfsumme (CRC16) gesichert, wird aber bei einem Übertragungsfehler durch die Hardware nicht wiederholt. Der Empfänger kann erkennen, ob die Daten korrekt übertragen wurden. Isochrone Übertragungen werden zum Beispiel von der USB-Audio-Class benutzt, die bei externen USB-Soundkarten Verwendung findet.

Interrupt-Transfer

USB-Maus für Notebooks

Interrupt-Transfers dienen zur Übertragung von kleinen Datenmengen, die zu nicht genau bestimmbaren Zeitpunkten verfügbar sind. Im Endpoint Descriptor teilt das Gerät mit, in welchen maximalen Zeitabständen es nach neuen Daten gefragt werden möchte. Das kleinstmögliche Abfrageintervall beträgt bei Low Speed 10 ms, bei Full Speed 1 ms und bei Hi-Speed bis zu drei Abfragen in 125 µs. Bei Low Speed können pro Abfrage bis zu 8 Byte, bei Full Speed bis zu 64 Byte und bei Hi-Speed bis zu 1024 Byte übertragen werden. Daraus ergeben sich maximale Datenraten von 800 byte/s bei Low Speed, 64 kbyte/s bei Full Speed und bis zu 24 Mbyte/s bei Hi-Speed. Die Daten sind mit einer Prüfsumme (CRC16) gesichert und werden bei Übertragungsfehlern bis zu dreimal durch die Hardware wiederholt. Geräte der HID-Klasse (Human Interface Device), zum Beispiel Tastaturen, Mäuse und Joysticks, übertragen die Daten über den Interrupt-Transfer.

Bulk-Transfer

Bulk-Transfers sind für große und nicht zeitkritisch Datenmengen gedacht, wie beispielsweise das Lesen oder Schreiben von Dateien auf einer USB-Festplatte. Diese Transfers sind niedrig priorisiert und werden vom Controller durchgeführt, wenn alle isochronen und Interrupt-Transfers abgeschlossen sind und noch Datenrate übrig ist. Bulk-Transfers sind durch eine Prüfsumme (CRC16) gesichert und werden durch die Hardware bis zu dreimal wiederholt. Low Speed-Geräte können diese Transferart nicht benutzen. Full-Speed-Geräte benutzen Puffer-Größen von 8, 16, 32 oder 64 Bytes. Hi-Speed-Geräte verwenden immer einen 512 Byte großen Puffer.

Control-Transfer

Control-Transfers sind eine besondere Art von Datentransfers, die einen Endpunkt erfordern, der sowohl In- als auch Out-Operationen durchführen kann. Control-Transfers werden generell in beide Richtungen bestätigt, so dass Sender und Empfänger immer sicher sein können, dass die Daten auch angekommen sind. Daher wird der Endpunkt 0 im Control-Transfer-Modus verwendet. Control-Transfers sind zum Beispiel nach dem Detektieren des USB-Geräts und zum Austausch der ersten Kommunikation elementar wichtig.

Datenraten

Datei:USB-certified-Logo.svg
Logo für USB-Low-Speed- oder -Full-Speed-zertifizierte Geräte
Datei:USB-HighSpeed-certified-Logo.svg
Logo für USB-Hi-Speed-zertifizierte Geräte
Logo für USB-SuperSpeed-zertifizierte Geräte

USB erlaubt es einem Gerät, Daten mit 1,5 Mbit/s (Low Speed), 12 Mbit/s (Full Speed), 480 Mbit/s (Hi-Speed), 5 Gbit/s (SuperSpeed) oder 10 Gbit/s (Superspeed+) zu übertragen.

Diese Raten basieren auf dem Systemtakt der jeweiligen USB-Geschwindigkeit und stellen die physikalische Datenübertragungsrate dar. Die Toleranzen werden für USB-2.0-Geräte und für die älteren USB-1.0-/1.1-Geräte getrennt behandelt. Der tatsächliche Datendurchsatz liegt – durch Protokoll-Overhead – darunter. Im USB-Standard ist für USB 2.0 eine maximale theoretische Datenlast bei Hi-Speed unter idealen Bedingungen von 49.152.000 Byte/s (Isochronous Mode)[11] beziehungsweise 53.248.000 Byte/s (Bulk-Mode)[12] angegeben. Dazu kommt die Verwaltung der Geräte, so dass bei aktuellen Systemen für USB 2.0 eine nutzbare Datenrate in der Größenordnung von 320 Mbit/s (40 MB/s) und für USB 3.0 2400 Mbit/s (300 MB/s)[13] bleibt. Bei älteren Systemen wurde diese durch eine unzureichende Anbindung des USB-Chips an den Systembus zusätzlich reduziert.

Name  möglich ab  Brutto-Datenrate Toleranz
USB 1.0/1.1 USB 2.0 USB 3.0 USB 3.1
Low Speed USB 1.0     1,5 Mbit/s = 187,5 kByte/s ± 22,5 kbit/s ± 0,75 kbit/s n. a. n. a.
Full Speed USB 1.0   12 Mbit/s = 1,5 MByte/s ± 30 kbit/s ± 6 kbit/s n. a. n. a.
Hi-Speed USB 2.0 480 Mbit/s = 60 MByte/s [entfällt] ± 240 kbit/s n. a. n. a.
SuperSpeed USB 3.0      5 Gbit/s = 625 MByte/s [entfällt] [entfällt] n. a. n. a.
SuperSpeed + USB 3.1      10 Gbit/s = 1250 MByte/s [entfällt] [entfällt] [entfällt] n. a.
Bemerkungen
  • Die Schreibweise variiert: Low und Full Speed werden mit Leerzeichen getrennt, Hi-Speed mit Bindestrich (und High wird verkürzt zu Hi), SuperSpeed wird zusammengeschrieben.
  • SI-Präfixe sind dezimale Präfixe: 1 kBit = 103 Bit, 1 MBit = 106 Bit, 1 GBit = 109 Bit, gleiches für Byte und Hz.
  • USB 1.x und USB 2.0 wird mit der Bruttodatenrate beworben (1,5 MBit/s, 12 MBit/s, 480 MBit/s).
  • USB 3.0 überträgt mit der Bitrate 5 GBit/s, die effektive Datenrate nach 8b10b-Kodierung beträgt hier 4 Gbit/s (500 MByte/s). Die Bitrate hat allerdings keinerlei Auswirkungen außerhalb des physischen Übertragungslayers (OSI Layer 1). Bei vielen Kodierungen ist sie wesentlich größer als die effektive Datenrate und wird aus verkaufsfördernden Gründen an deren Stelle angegeben.
  • Die theoretisch erzielbare Nettodatenrate liegt um 11,3 Prozent (Bulk-Mode) und 18,1 Prozent (Isochron-Modus) unter der Bruttodatenrate.
  • Real erzielbare Nettodatenraten liegen um mindestens 30 Prozent, meist aber um die 45 Prozent unter der Bruttodatenrate (reale Messungen an USB-2.0-Systemen).

Wird die Schnittstelle eines Geräts mit „USB 2.0“ angegeben, heißt das nicht unbedingt, dass dieses Gerät auch die hohe Datenrate von 480 Mbit/s anbietet. Standpunkt der Anbieter ist dabei, dass ein USB-2.0-kompatibles Gerät grundsätzlich jede der drei Geschwindigkeiten benutzen kann und die 2.0-Kompatibilität in erster Linie bedeutet, dass die neueste Fassung der Spezifikation eingehalten wird. 480 Mbit/s dürfen also nur erwartet werden, wenn ein Gerät mit dem Logo „Certified USB Hi-Speed“ ausgezeichnet ist.

USB On-the-go

Logo für USB-OTG-Geräte
Logo für USB-Hi-Speed-OTG-Geräte

Eine direkte Kommunikation zwischen USB-Geräten, also ohne Beteiligung des zentralen Host-Controllers, war im USB-Standard ursprünglich nicht vorgesehen; diese wurde erst durch die Erweiterung USB On-the-go eingeschränkt ermöglicht.

Durch USB On-the-go (OTG) können entsprechend ausgerüstete Geräte kommunizieren, indem eines der beiden eine eingeschränkte Host-Funktionalität übernimmt. Typische Einsatzgebiete von USB OTG sind die Verbindung von Digitalkamera und Drucker oder der Austausch von Musikdateien zwischen zwei MP3-Spielern.

Auch bei USB OTG ist die Kommunikation zentral von einem Host gesteuert. Im Gegensatz dazu bieten andere Kommunikationsmechanismen, etwa der FireWire-Standard, der für ähnliche Einsatzzwecke wie USB geschaffen wurde und mit diesem in Konkurrenz steht, die Möglichkeit einer Peer-to-Peer-Kommunikation zwischen Geräten ohne Beteiligung eines zentralen Hosts. Dies bietet etwa die Möglichkeit, ein Netzwerk aufzubauen.

Gekennzeichnet werden USB-OTG-Produkte durch das USB-Logo mit zusätzlichem grünem Pfeil auf der Unterseite und weißem „On-The-Go“-Schriftzug. Die USB-OTG-Spezifikation wurde am 18. Dezember 2001 verabschiedet. OTG-Geräte sind zum Beispiel die seit November 2007 erhältlichen Nokia-Telefone 6500c, N8, C7, N810, 808 PureView, das Samsung Galaxy S II[14] und andere Android-Smartphones, sowie einige externe Festplatten zum direkten Anschluss an Digitalkameras.

Wireless USB

Logo für die zertifizierten Geräte aus dem Intel-Wireless-USB-Projekt

Momentan besetzen zwei Initiativen den Begriff „Wireless USB“. Die ältere der beiden wurde von dem Unternehmen Cypress initiiert, mittlerweile ist Atmel als zweiter Chiphersteller auf den Zug aufgesprungen. Das „Cypress-WirelessUSB“-System ist eigentlich kein drahtloses USB, sondern eine Technik, um drahtlose Endgeräte zu bauen, die dann über einen am USB angeschlossenen Empfänger/Sender (Transceiver) mit dem Computer verbunden sind. Dazu wird eine Übertragungstechnik im lizenzfreien 2,4-GHz-Band benutzt, die Datenrate beträgt bis zu 62,5 kbit/s (neuere Chips von Cypress erreichen 1 Mbit/s) und ist damit für Eingabegeräte völlig ausreichend, für andere Anwendungen aber oft zu knapp bemessen.

Das zweite Wireless-USB-Projekt wird von der USB-IF vorangetrieben und ist wesentlich anspruchsvoller, neben Intel ist auch NEC dabei, entsprechende Chips zu entwickeln. Ziel ist es, eine Technik zu schaffen, mit der die vollen 480 Mbit/s des Hi-Speed-Übertragungsmodus drahtlos übertragen werden können. Dabei ist eine kurze Reichweite unter 10 m vorgesehen; die Übertragung soll auf einer Ultrabreitband-Technik basieren.

Am 16. Januar 2008 gab in Deutschland die Bundesnetzagentur für die Ultrabreitband-Technik Frequenzbereiche frei.[15] Der dabei für USB vorgesehene Bereich von 6 bis 8,5 GHz ist jedoch nicht so breit wie von USB-IF spezifiziert, so dass Geräte aus anderen Ländern eventuell in Deutschland nicht verwendet werden dürfen.[16]

USB 3.0

Im November 2008 stellte das USB Implementers Forum, dem unter anderem die Unternehmen Hewlett-Packard, Microsoft und Intel angehören, die Spezifikation für USB 3.0 vor. Im SuperSpeed-Modus wird eine Bitrate von exakt 5 Gbit/s verwendet, was aufgrund der verwendeten ANSI-8b10b-Kodierung eine Nettodatenrate von 500 MByte/s ergibt.[17][18] Die höheren Datenraten werden im Wesentlichen durch höhere Frequenzen (ca. achtfach) auf den Datenleitungen möglich. Die Bruttodatenrate steigt dadurch von 60 MByte/s auf 625 MByte/s. Das stellt allerdings erheblich höhere Anforderungen an die Kabel. Weitere Gewinne sind durch das verbesserte USB-Protokoll sowie durch die verwendete Vollduplex-Übertragung möglich.

Die verwendeten Kabel enthalten neben den bisherigen Signal-Adernpaar (D+ und D−) und der Stromversorgung (GND, VBUS) zwei weitere Signal-Adernpaare (SSTX+ und SSTX−, SSRX+ und SSRX−) sowie eine zusätzliche Masseverbindung (GND). Deshalb sind für USB 3.0 sowohl neue Stecker am Host und an den angeschlossenen Geräten als auch neue Kabel notwendig. Die Kabel sind auf Grund der gestiegenen Aderanzahl und der notwendigen besseren HF-Übertragungseigenschaften (ähnlich wie eSATA- oder CAT-5e-/6-Kabel) dicker und weniger flexibel.

zusätzliche Pins bei USB 3.0
Name Beschreibung
SSTX+ Datenübertragung vom Host zum Gerät
SSTX− mit SSTX+ verdrillt
GND Masse
SSRX+ Datenübertragung vom Gerät zum Host
SSRX− mit SSRX+ verdrillt

Die Kompatibilität besteht in folgendem Sinne:

  • USB-3.0-Kabel können auf Grund der Anbauten nicht mit USB-2.0-Endgeräten benutzt werden – USB 3.0-Typ-B-Stecker sind nicht abwärtskompatibel.
  • USB-3.0-Kabel können an USB-2.0-Hosts benutzt werden, erfordern dann aber USB-3.0-Endgeräte.
  • USB-2.0-Kabel können an USB-3.0-Hosts benutzt werden.
  • USB-3.0-Endgeräte können an USB-2.0-Hosts angeschlossen werden. Ggf. gibt es Probleme, wenn diese mehr als 500 mA Strom aufnehmen (USB 3.0 erlaubt bis zu 900 mA, USB 2.0 nur bis 500 mA).
  • USB-2.0-Endgeräte können an USB-3.0-Hosts angeschlossen werden.

USB-3.0-Übertragungen finden aber nur statt, wenn alle drei Komponenten (Host, Kabel, Endgerät) USB-3.0-tauglich sind. Ansonsten wird auf USB 2.0 heruntergeschaltet.

Host Kabel Endgerät Geschwindigkeit Hinweise
3 3 3 3 SuperSpeed möglich
3 2 2 oder 3 2 maximal Hi-Speed möglich
2 oder 3 2 2 2 maximal Hi-Speed möglich
2 2 oder 3 3 2 maximal Hi-Speed möglich; Stromaufnahme beachten!
egal 3 2 nicht anschließbar

Mit dem Linux-Kernel ab Version 2.6.31 waren Linux-Distributionen die ersten Betriebssysteme, die USB 3.0 unterstützten.[19]

Weitere Besonderheiten:

  • Die bei den bisherigen USB-Standards übliche Reihumabfrage der Geräte (Polling) ist nicht mehr notwendig. Durch das (mögliche) Entfallen dieses dauernden Pollings und durch neue Befehle können Geräte in die Energiesparmodi U0 bis U3 geschaltet werden.
  • Am USB-3.0-Port stehen mindestens 150 mA Strom (statt 100 mA wie bei USB 2.0) pro Gerät zur Verfügung. Auf Anforderung können bis 900 mA bereitgestellt werden (USB 2.0 Low Power: 100 mA, USB 2.0 High Power: 500 mA).
  • Ältere Treiber sollen weiterverwendbar bleiben. Neuere Versionen sind aber unter Umständen vorteilhaft, etwa um die neuen Stromsparmodi zu nutzen.
  • USB-3.0-Hubs nutzen keinen Transaction Translators wie USB-2.0-Hubs (Hi-Speed). Daher hat man keinen Gewinn, wenn man mehrere USB-2.0-Geräte über einen USB-3.0-Hub an einen PC anschließt.
  • Zu Hubs siehe USB 3.0 und Hubs

Für einen späteren Zeitpunkt ist auch eine Erweiterung des Standards mit Lichtwellenleitern geplant. Anders als noch bei USB 2.0 dürfen sich Geräte nur dann „USB-3.0-kompatibel“ nennen, wenn sie tatsächlich die schnellstmögliche Geschwindigkeit (hier SuperSpeed-Modus) anbieten.[13]

USB 3.1

Im Januar 2013 kündigte die USB Promoters Group eine Geschwindigkeitsverdopplung gegenüber USB 3.0 an. Damit sollen 10 Gbit/s brutto erreicht werden, wobei vorhandene USB 3.0-Kabel weiterverwendet werden können.[20] Ebenfalls wurde bekanntgegeben, dass sich zum ersten mal seit 17 Jahren ein neuer Anschluss namens Typ C in der Entwicklung befindet. Dieser wird nicht mehr abwärtskompatibel sein, aber erstmals das Einstecken in jeder Richtung und jeder Orientierung ermöglichen. Der USB-Stecker vom Typ C soll Teil des bisherigen Standards für USB 3.1 werden und auch viele bisher darin vorgesehene, aber kaum genutzte Funktionen, wie das Aufladen mit hohen Stromstärken, unterstützen. Dieses Power Delivery genannte Feature wird in sechs Profilen (0–5) jeweils 10, 18, 36, 60 und 100 Watt leisten können.[21] Seine Größe wird laut einer Mitteilung des USB-Implementers Forum in etwa beim bisherigen Micro-USB 2.0 liegen, die Stecker sollen besonders flach sein. Damit passen die neuen Ports besser an portable Geräte wie Smartphones und Tablets. Auch durch die nicht ideale Mechanik sind die Micro-USB-Buchsen in Typ 3.0 dort bisher nur selten zu finden.[22][23] Mittlerweile wurde die Spezifikation 1.0 zum neuen Typ, welche die nötigen Stecker, Kabel und Buchsen definiert, vom Konsortium veröffentlicht. Diese sollen langfristig alle anderen USB-Verbindungen ersetzen und sind für eine Haltbarkeit von 10.000 Ansteckvorgängen konzipiert. Der Standard sieht ausdrücklich passive Kabel ohne integrierte Elektronik vor. Außerdem wird die Abwärtskompatibilität zu Typ A mit der von USB 3.0 maximalen Übertragungsgeschwindigkeit von 5 GBit/s garantiert. Anfangs sind Adapter für die älteren Buchsen vorgesehen.[24] Laut Video Electronics Standards Association (VESA) soll der neue USB 3.1-Anschluss auch die Displayport-Technologie unterstützen. Damit könnten Displays mit 4K / Ultra HD-Auflösung (3.840 x 2.160 Pixel) mit einer Bildwiederholungsrate von 60 Hz angeschlossenen werden. Verzichtet man auf die USB 3.1-Funktionalitäten und nutzt alle Daten-Lanes für die Übertragung des Videosignals, ist sogar 5K-Auflösung (5.120 x 2.880 Pixel) möglich. [25]

Hardware

USB-Stecker und -Buchsen

Die Stecker eines USB-Kabels sind verpolungs- und vertauschungssicher gestaltet.

In Richtung des Hostcontrollers (Upstream) werden flache Stecker (Typ A „DIN IEC 61076-3-107“) verwendet. Zum angeschlossenen Gerät hin (Downstream) werden die Kabel entweder fix montiert oder über annähernd quadratische Steckverbinder (Typ B „DIN IEC 61076-3-108“) angeschlossen (vereinzelt und nicht standardkonform auch mit Typ-A-Steckverbindern). Entsprechend den USB-1.0–2.0-Standards besitzen USB-Typ-A- und Typ-B-Verbinder vier Leitungen plus Schirm. Beide Steckverbinder sollen in einer der drei Farben grau, „natur“ (elfenbeinfarben/weiß) oder schwarz ausgeführt werden. Mit USB 3.0 kommen neue Varianten der Typ-A- und Typ-B-Verbinder auf den Markt (siehe unten).

Seit einiger Zeit sind auch Stecker und Buchsen vom Typ A und B mit Rändelschrauben erhältlich, die ein Herausrutschen verhindern. Allerdings muss das empfangende Gerät das auch unterstützen. Verschiedene Hersteller brachten mechanisch inkompatible Ausführungen von USB-Verbindern heraus, die sich jedoch elektrisch nicht von USB 1.x oder 2.0 unterscheiden. So waren einige IBM Thinkpads mit einem sogenannten „UltraPort“ ausgestattet, APC führt USB an ihren USVs über 10-polige Modular-Buchsen (10P10C/RJ50), die Microsoft Xbox benutzt ebenfalls proprietäre USB-Verbinder, und Apple führt USB beim iPod Shuffle über einen Klinkenstecker, der gleichzeitig als Audioverbinder dient. Diese nicht standardisierten Varianten sind jedoch nicht sehr verbreitet.

Für den industriellen Einsatz gibt es mehrere nicht vom USB-Konsortium standardisierte USB-5-V(olt)-, USB-12-V-, USB-19-V- und USB-24-V-Varianten mit deutlich höheren Strombelastbarkeiten von bis zu 6 A (3 A pro Kontakt) über insgesamt vier zusätzliche Leitungen, die um 1999 im Rahmen der PoweredUSB- und PlusPower-Spezifikationen von Firmen wie IBM, Microsoft, NCR und Berg/FCI definiert wurden und zum Teil lizenzpflichtig sind. Diese Varianten werden insbesondere bei POS-Anwendungen, etwa in Kassensystemen, von verschiedenen Herstellern eingesetzt. Die Steckverbinder führen dabei neben dem USB-Typ-A-Stecker eine unabhängige hochstromfähige vierpolige Spannungsversorgung. Diese Stecker sind nicht rechteckig, sondern mehr quadratisch (wie zwei Stecker in einem gemeinsamen Gehäuse, der USB-Teil selbst entspricht mechanisch und elektrisch unverändert USB Typ A). Mittels einer mechanischen Kodierung wird verhindert, dass zum Beispiel USB-12-V-Stecker versehentlich in USB-24-V-Buchsen gesteckt werden können. Eine mechanische Arretierung der Stecker in den Buchsen ist ebenfalls vorgesehen. Zusätzlich wird für diese Stecker eine Farbkodierung empfohlen, naturfarben (teilweise auch gelb) für 5 V (30 W), blaugrün (Pantone Teal 3262C) für 12 V (72 W), rot (Pantone Red 032C) für 24/25 V (144 W) und seltener violett für 19 V. Kommt keine Farbkodierung zum Einsatz, sollen die Stecker für alle Spannungen größer 5 V schwarz ausgeführt werden, wohingegen grau als alternative Farbe für 5 V in Frage kommt. Für die B-Seite ist kein spezieller Stecker definiert, es gibt jedoch verschiedene Empfehlungen, teilweise mit unterschiedlichen HotPlug-Fähigkeiten. Die Bezeichnung für diese industriellen USB-Varianten lautet Retail USB, PoweredUSB, USB PlusPower oder USB +Power.[26]

Micro- und Mini-USB

Insbesondere für Geräte mit geringerem Platzangebot (digitale Kameras, Mobiltelefone, MP3-Player und andere mobile Geräte) existieren auch verschiedene kompaktere USB-Steckverbinder. Im USB-2.0-Standard verankert sind dabei lediglich fünfpolige Mini- und Micro-Varianten (plus Schirm), die gegenüber den normalen USB-Steckverbindern über einen zusätzlichen ID-Pin verfügen.

Zunächst wurde im Jahr 2000 ein trapezförmiger Mini-B-Steckverbinder für die Downstream-Seite definiert, der in der Farbe Schwarz ausgeführt werden sollte. Bei zukünftigen Geräten sollen Gerätehersteller jedoch auf die Micro-USB-Verbinder (siehe unten) ausweichen.[27] Auch Mini-A- (in weißer Farbe) und Mini-AB-Steckverbinder (in Grau) waren für eine gewisse Zeit Teil des Standards und sollten insbesondere in Verbindung mit USB On-the-Go (OTG) eine Rolle spielen, wurden jedoch im Mai 2007 offiziell zurückgezogen.[28]

Im Januar 2007 wurden mit der Standarderweiterung Micro-USB für USB 2.0 noch kleinere Steckverbinder vorgestellt, die eine besonders kompakte Bauform der Geräte ermöglichen. Die Micro-USB-Spezifikation kann USB On-the-Go (OTG) unterstützen, was Verkabelung und Kommunikation auch ohne PC als Host ermöglicht.[29] Micro-USB-Steckverbinder sollen bei neueren Geräten in naher Zukunft den Mini-Verbinder komplett ersetzen, lediglich der relativ weitverbreitete Mini-B-Verbinder wird derzeit noch geduldet. Die Micro-USB-Verbinder sind elektrisch gleichwertig, mechanisch allerdings nicht steckkompatibel, dafür jedoch dank der im Standard geforderten Edelstahlkrampe deutlich stabiler ausgeführt. Gemäß USB-2.0-Standard gibt es drei Varianten, die genau wie bei Mini-USB allesamt fünfpolig ausgeführt sind: Micro-A (rechteckige Bauform, für die Host-Seite, Farbe Weiß), Micro-AB (rechteckige Bauform, für USB-On-the-Go-Geräte, Farbe Grau) und Micro-B (Trapez-Bauform, für die Geräteseite, Farbe Schwarz). Die Open Mobile Terminal Platform OMTP hat Micro-USB 2007 als Standardverbinder für den Datentransfer und die Energieversorgung von Mobilfunkgeräten übernommen, in China müssen Mobiltelefone seitdem mit dieser Schnittstelle ausgestattet werden, um eine Zulassung zu bekommen.[30] Mit USB 3.0 kommen neue Varianten der Micro-A-, AB- und -B-Steckverbinder auf den Markt (siehe unten).

Daneben gibt es noch eine ganze Reihe proprietärer, das heißt geräteherstellerspezifische Miniaturbauformen der Steckverbinder (siehe auch Bild), die zwar in der Regel elektrisch mit USB 2.0 kompatibel sind, jedoch nur über teilweise schwer erhältliche Adapterkabel mit USB-Komponenten gemäß dem USB-Standard verbunden werden können. Fälschlicherweise werden jedoch auch diese Steckverbinder häufig als „Mini“-USB bezeichnet, was immer wieder zu Missverständnissen führt und vermieden werden sollte. Verbreitet sind unterschiedlichste Ausführungen mit vier Pins (insbesondere Varianten von Mitsumi, Aiptek, Hirose), eine große Zahl von Varianten mit acht Pins (darunter mehrere inkompatible Varianten, die sich bei Digitalkameras in begrenztem Rahmen auch über Herstellergrenzen hinweg verbreitet haben), elf Pins (ExtUSB für HTC-Mobiltelefone; kompatibel zu Mini-USB), zwölf Pins (für verschiedene Olympus-Digitalkameras) und 14 Pins (zwei Varianten für verschiedene Fuji-Finepix-Digitalkameras und als Nokias Pop-Port für manche Mobiltelefone), die auch noch andere, nicht-USB-spezifische Signale (bei Digitalkameras z.B. Analog-Video und -Audio) im gleichen Konnektor vereinen.[31] Zur Eindämmung dieser Vielfalt ist seit 2011 bei Netzteilen für die Geräteklasse der Smartphones der Micro-USB-Stecker europaweit genormt (EN 62684:2010, „Micro-USB-Standard“).

Im Rahmen des im Jahr 2008 verabschiedeten USB-3.0-Standards wurden weitere sechs Steckverbindertypen mit zusätzlichen Kontakten definiert:

Diese unterteilen sich in je drei Steckverbinder, die als weitestgehend rückwärtskompatible Erweiterungen der bisherigen Typ A- und Typ B-Steckverbinder angesehen werden können (genannt: USB 3.0 Standard-A, USB 3.0 Standard-B und USB 3.0 Powered-B) sowie drei kleinere Verbinder, die sich an die bisherigen Micro-USB-Verbinder anlehnen (genannt: USB 3.0 Micro-A, USB 3.0 Micro-AB und USB 3.0 Micro-B). Zur eindeutigen Kennzeichnung werden die bisherigen Steckverbinder nun als USB 2.0 Standard-A, USB 2.0 Standard-B, USB 2.0 Micro-A, USB 2.0 Micro-AB und USB 2.0 Micro-B bezeichnet. Zur besseren Unterscheidung sollen die USB-3.0-Standard-A-Verbinder in der Farbe Blau (Pantone 300C) ausgeführt und gegebenenfalls mit einem doppelten S-Symbol gekennzeichnet werden.

USB Typ C

Im August 2014 wurde die Spezifikation für eine neue, zur bisherigen Hardware inkompatible Typ C-Steckverbindung verabschiedet.[32] Die neue Steckverbindung hat keine definierte Ober- und Unterseite mehr und kann somit in beliebiger Richtung eingesteckt werden. Zudem vereint sie alle bisherigen Übertragungsspezifikationen inklusive USB 3.1. und USB Power Delivery.

Spezifikationen

Mögliche Steckkombinationen (mechanisch unterstützt)
Aufnahmetyp Steckertyp
USB 3.0 Standard-A USB 3.0 Standard-A, USB 2.0 Standard-A
USB 2.0 Standard-A USB 2.0 Standard-A, USB 3.0 Standard-A
USB 3.0 Powered-B USB 3.0 Powered-B, USB 3.0 Standard-B, USB 2.0 Standard-B
USB 3.0 Standard-B USB 3.0 Standard-B, USB 2.0 Standard-B
USB 2.0 Standard-B USB 2.0 Standard-B
(USB 2.0 Mini-AB) (USB 2.0 Mini-A, USB 2.0 Mini-B)
USB 2.0 Mini-B USB 2.0 Mini-B
USB 3.0 Micro-AB USB 3.0 Micro-A, USB 3.0 Micro-B, USB 2.0 Micro-A, USB 2.0 Micro-B
USB 2.0 Micro-AB USB 2.0 Micro-A, USB 2.0 Micro-B
USB 3.0 Micro-B USB 3.0 Micro-B, USB 2.0 Micro-B
USB 2.0 Micro-B USB 2.0 Micro-B
Geforderte Anzahl an Steckzyklen
Anschlusstyp Standard Mindestanzahl der Steckzyklen
USB USB 1.0–2.0 500×, später 1500×
USB USB 3.0 Standard Class: 1500×, High Durability Class: 5000×
Mini-USB USB 2.0 5000×
Micro-USB USB 2.0–3.0 10000×
Zum Vergleich:
eSATA 5000×
Firewire/IEEE 1394 1500×
Abmessungen (in mm) und Kombinationsmöglichkeiten
Stecker Steckerabmessungen passende
Buchsen
erlaubte
Kabeltypen
A Typ A A → Stecker B
→ Stecker Mini-B
→ Stecker Micro-B
B Typ B B → Stecker A
USB 3.0 B USB 3.0 Typ B USB 3.0 B → Stecker USB 3.0 A
→ Stecker A
Mini-B Typ Mini-B Mini-B → Stecker A
Micro-A Typ Micro-A Micro-AB → Stecker Micro-B
→ Buchse A (als Adapter)
Micro-B Typ Micro-B Micro-B
Micro-AB
USB 3.0 Micro-B
→ Stecker A
→ Stecker Micro-A
USB 3.0 Micro-B Typ USB 3.0 Micro-B USB 3.0 Micro-B → Stecker USB 3.0 A
→ Stecker USB 3.0 Micro-A[33]

Verbreitet haben sich weiterhin 1×4-, 1×5- und 2×2-polige Varianten von Stiftleisten im Rastermaß 2,54 Millimeter auf PC-Mainboards, ebenso wie Doppel-USB-Verbinder mit 2×4 oder 2×5 Polen im Rastermaß 2,54 mm. Gab es zunächst mehrere zueinander inkompatible Belegungsvarianten, hat sich im Zuge neuerer Mainboard-Spezifikationen von Intel inzwischen eine bestimmte 2×5-polige Belegung etabliert, die auch mit uDOC-Flashmodulen kompatibel ist.

USB-Kabel

USB-Verlängerungskabel (nicht in der USB-Spezifikation)
USB-3.0-Kabel und Kontaktbelegung

In einem USB-Kabel werden vier Adern benötigt. Zwei Adern übertragen dabei die Daten, die anderen beiden versorgen das angeschlossene Gerät mit einer Spannung von 5 V. Der USB-Spezifikation entsprechende Geräte dürfen bis zu 100 mA oder 500 mA aus dem Bus beziehen, abhängig davon, wie viel der Port liefern kann, an den sie angeschlossen werden. Geräte mit einer Leistung bis zu 2,5 W können also über den Bus versorgt werden. Je nach Kabellänge muss der Querschnitt der beiden Stromversorgungsadern angepasst sein, um den zulässigen Spannungsabfall einzuhalten; auch daher sind Verlängerungsleitungen nicht standardgemäß.

Die Kabel müssen je nach Geschwindigkeit unterschiedlich abgeschirmt werden. Kabel, die lediglich der Spezifikation Low Speed entsprechen, dürfen über keinen B-Stecker verfügen, sondern müssen fix am Gerät montiert sein oder einen herstellerspezifischen Stecker verwenden. Sie sind weniger stark abgeschirmt, kommen ohne verdrillte Adern aus und sind dadurch flexibler als Full-/Hi-Speed-Kabel. Sie sind daher gut für zum Beispiel Mäuse und Tastaturen geeignet. Die geringe Abschirmung des Kabels würde zu Problemen bei Geräten mit höheren Geschwindigkeiten führen.

Die Längen von Full-/Hi-Speed- und Low Speed-Kabeln vom Hub zum Gerät sind auf fünf beziehungsweise drei Meter begrenzt. Längere Strecken kann man überwinden, indem USB-Hubs zwischengeschaltet werden. Sogenannte USB-Repeaterkabel entsprechen in ihren Funktionen einem Bus-Powered Hub (s. u.) mit einem einzigen Downstream-Port und einem fest angeschlossenen Kabel am Upstream-Port. Da die elektrischen Auswirkungen dieser Kabel im USB-Bus denen eines Bus-Powered-USB-Hubs mit fünf Meter Kabel entsprechen, sollten bei ihrer Verwendung zusätzlich die Beschränkungen beim Kaskadieren von USB-Hubs beachtet werden.

USB arbeitet mit einem Wellenwiderstand von 90 Ω, direkte Verbindungskabel sollten daher auch in diesem Wellenwiderstandswert ausgeführt sein. Für die Überbrückung von Längen über 30 Metern werden USB-Line-Extender angeboten. Diese bestehen aus zwei Komponenten: Einem Base-Modul, das an den Computer angeschlossen wird, und einem Remote-Modul für den Anschluss des USB-Gerätes. Zur Distanzüberbrückung zwischen diesen beiden Komponenten werden meist Ethernetkabel oder Lichtleiter eingesetzt. Da sich diese Line-Extender jedoch immer auf bestimmte, nicht vom Standard vorgeschriebene Verhaltensdetails der angeschlossenen Geräte verlassen und zudem bei langen Kabelstrecken die Signallaufzeit zu Protokollverletzungen führt, ist der Einsatz dieser Geräte oft mit Problemen verbunden.

Eine andere Möglichkeit, USB-Geräte weiter entfernt vom Rechner anzuschließen, sind Lösungen, die einen „remote host“ verwenden, also einen USB-Hostcontroller, der außerhalb des PCs liegt. Dabei geschieht die Kommunikation zwischen PC und Hostcontroller zum Beispiel über Ethernet. Das Ethernet ersetzt dabei den lokalen Bus, an dem sonst der Hostcontroller angeschlossen wäre. Auf dem PC muss also nur ein entsprechender Treiber installiert werden, der die Kommunikation mit dem Hostcontroller übernimmt. Treiber für die USB-Geräte erkennen dann keinen Unterschied zu einem lokal angeschlossenen Gerät. Beispiele für ein solches Gerät sind der USB-Server von Keyspan und die USB-Fernanschlussfunktion einer FRITZ!Box.

Farbkodierung und Pinouts

USB-Standardstecker Typ A und B. Nicht maßstabsgetreu, mit Pinnummern
USB-Ministecker Typ A und B. Nicht maßstabsgetreu, mit Pinnummern, Draufsicht. Es gibt noch Mini-AB-Buchsen, die sich automatisch umschalten. Mini-AB-Buchsen und Mini-A-Stecker sind aus der Spezifikation entfernt worden.
Kabelbelegung eines normalen USB-Kabels

Der USB-Standard legt neben der Belegung der Schnittstelle auch die Namen der einzelnen Stecker-Pins fest, für die Aderfarbe werden nur typische Angaben gemacht. Tatsächlich variieren die verwendeten Aderfarben von Hersteller zu Hersteller. Die Nummer eines Stecker-Pins kann in den oben angeführten Schemazeichnungen abgelesen werden.

Standardstecker
Pin Name Farbe Beschreibung
1 VBUS Rot +5 V
2 D- Weiß Data −
3 D+ Grün Data +
4 GND Schwarz Masse
Ministecker/Microstecker
Pin Name Farbe Beschreibung
1 VBUS Rot +5 V
2 D- Weiß Data −
3 D+ Grün Data +
4 ID keine erlaubt Unterscheidung von

Micro-A- und Micro-B-Stecker

Typ A: Masse (OTG-Gerät arbeitet als Host)

Typ B: nicht verbunden (OTG-Gerät arbeitet als Peripherie)

5 GND Schwarz Masse

USB-Hubs

Allgemeines

4-Port-USB-Hub mit eigener Stromversorgung (self powered, Netzteilbuchse rechts)
4-Port-USB-Hub mit Stromversorgung aus dem Bus (bus powered)

Ein USB-Hub ist ein USB-Gerät, welches das USB-Signal an mehrere Ports verteilt. Handelsüblich sind USB-Hubs mit bis zu sieben Downstream-Ports, vereinzelt sind aber inzwischen auch Hubs mit bis zu 28 Ports zu finden.[34]

Hubs können ihren Strom aus dem Bus selbst beziehen (als Bus-Powered oder passiver Hub bezeichnet) oder über eine eigene Stromversorgung verfügen (als Self-Powered oder aktiver Hub bezeichnet). Die meisten Self-Powered-Hubs werden über ein Steckernetzteil mit Strom versorgt. Manche Monitore haben auch einen USB-Hub eingebaut, der über die Stromversorgung des Monitors mitgespeist wird. Self-Powered-Hubs haben den Vorteil, dass jedes an sie angeschlossene Gerät bis zu 500 mA Strom beziehen kann. Bei Bus-Powered-Hubs dürfen der Hub und alle an ihn angeschlossenen Geräte gemeinsam maximal 500 mA beziehen. Hybride Self- und Bus-Powered-Hubs sind möglich – der Hub ist dann Self-Powered, wenn ein Netzteil an ihn angeschlossen ist, ansonsten Bus-Powered.

Bei der Verschachtelung von Hubs werden die Grenzen durch die maximal 127 möglichen USB-Geräte pro root-hub und durch die Signallaufzeit festgelegt – jeder Hub erhöht die Laufzeit, die Verschachtelungstiefe ist auf maximal fünf (Hub-)Ebenen unterhalb des Hostcontrollers beziehungsweise des Root-Hub begrenzt. Die maximale Distanz zwischen zwei mit USB verbundenen Geräten liegt wegen der Beschränkung von 5 m pro USB-Kabel bei 30 m – sechs Kabel mit je fünf Metern Länge und dazwischen fünf Hubs.

Bei integrierten Bausteinen für USB-Hubs dominiert die Ausstattung mit vier Ports (das gilt insbesondere für Bausteine in eher preisgünstigen Hubs). Wird eine größere Anzahl von USB-Anschlüssen benötigt, können mehrere Bausteine kaskadiert werden. Infolgedessen belegt ein solcher Hub mehrere USB-Adressen und ist gleichbedeutend mit mindestens zwei hintereinander geschalteten Hubs.

USB 2.0 und Hubs

Low-, Full- und Hi-Speed-Geräte lassen sich an einem USB-2.0-Host fast beliebig mischen, ohne dass Geschwindigkeitsnachteile entstehen. Hubs nach dem USB-1.x-Standard können an USB-2.0-Hosts verwendet werden. Geräte, die direkt oder indirekt an einen solchen Hub angeschlossen werden, können allerdings lediglich die Geschwindigkeit Full Speed erreichen, also 12 Mbit/s. Ein USB-2.0-Host und ein USB-2.0-Hub kommunizieren immer mit Hi-Speed, selbst wenn an dem Hub Low- oder Full-Speed-Geräte angeschlossen sind. Es ist Aufgabe des Hubs, die Daten dieser Geräte in das Hi-Speed-Protokoll zu verpacken, dazu hat er einen oder mehrere sogenannte „Transaction Translators“ eingebaut. Die Anzahl der Transaction Translators bestimmt, wie viele langsame Geräte an einen USB-2.0-Hub angeschlossen werden können, ohne sich gegenseitig auszubremsen. Wird diese Zahl überschritten, so bricht die Datenrate aller an diesen Host angeschlossenen Low Speed- und Full-Speed-Geräte auf Geschwindigkeiten deutlich unter denen eines USB-1.1-Hosts ein; der Durchsatz von Hi-Speed-Geräten am selben Hub bleibt jedoch unbeeinflusst. An der Spezifikation des Stromverbrauchs hat sich bei USB 2.0 im Vergleich zu USB 1.1 nichts geändert.

USB 3.0 und Hubs

Unter USB 3.0 gibt es ein neues Hub-Konzept. Hubs bestehen aus zwei Unter-Hubs. Der eine ist speziell für den neuen SuperSpeed-Modus zuständig, der andere für die bisherigen Geschwindigkeitsmodi (Low Speed, Full Speed, Hi-Speed). Erst an den Ports werden beide Teile zusammengeführt. Im Dezember 2009 hat das Unternehmen VIA die ersten Chips für USB-3.0-Hubs vorgestellt. Der VL810 genannte Chip ist mit allen Geschwindigkeitsmodi kompatibel.[35]

USB-Card-Bus

USB-2.0-CardBus-Controller

Der Cardbus-Standard[36] (PC Card Standard 5.0) wurde ursprünglich für PCMCIA-Karten als Datenspeichermedium entwickelt, unterscheidet sich aber vom eigentlichen PCMCIA-Standard durch eine völlig andere Architektur. Es sind auch Steckkarten mit CardBus-Controller am Markt erhältlich, die USB in CardBus umsetzen, so dass USB-Stecker beispielsweise auch an Mobilgeräten ohne integrierte USB-Schnittstelle verwendet werden können – sie sind aber auf den 32 Bit breiten CardBus beschränkt. Ein Nachrüsten bei Computern mit 16-Bit-Bus ist daher nicht möglich.[37] CardBus wurde vom neueren und leistungsfähigeren ExpressCard-Standard abgelöst.

Software-Architektur

Alle USB-Transaktionen werden durch die USB-Software auf dem Host-Computer realisiert. Das geschieht durch den jeweiligen USB-Gerätetreiber, der mit seinem Gerät kommunizieren will. Der USB-Bustreiber ist die Schnittstelle zwischen dem USB-Gerätetreiber und dem USB-Host-Controller.

USB-Bustreiber

Der USB-Bustreiber (USB-Driver) kennt die spezifischen Kommunikationseigenschaften der einzelnen USB-Geräte, zum Beispiel die Datenmenge pro Frame oder Abstände zwischen den periodischen Zugriffen. Er erkennt diese Eigenschaften beim Analysieren der Geräte-Deskriptoren während der Konfigurationsphase. Wenn der USB-Bustreiber ein IRP von einem USB-Gerätetreiber erhält, erzeugt er entsprechend diesem Request einzelne Transaktionen, die innerhalb des Übertragungsrahmens (Frame) von einer Millisekunde ausführbar sind.

USB-Host-Controller-Treiber

Der Universal-Serial-Bus-Host-Controller-Treiber (host controller driver) organisiert die zeitliche Abfolge der einzelnen Transaktionen (Scheduling). Dazu baut er eine Folge von Transaktionslisten auf. Jede dieser Listen besteht aus den noch nicht abgearbeiteten Transaktionen in Richtung eines Gerätes, das am Bus angeschlossen ist. Sie definiert die Reihenfolge der Transaktionen innerhalb des 1-ms-Zeitrahmens. Der USB-Bustreiber kann eine einzelne Anfrage für einen Datentransfer in mehrere Transaktionen zerlegen. Das Scheduling hängt von einer Reihe von Einflussfaktoren wie Transferart, Geräteeigenschaften und Busbelastung ab. Der USB-Host-Controller-Treiber löst die Transaktionen dann über den Root-Hub aus. Dieser setzt der Reihe nach alle Transaktionen um, die in der aktuellen Liste enthalten sind.

Unterstützung in Betriebssystemen

  • Amiga OS4.x unterstützt seit Version 4.0 USB1.1. Seit dem AmigaOS4.1 Update3 unterstützt es auch USB2.0.
  • Amiga OS3.x unterstützt standardmäßig kein USB. Lediglich mit Hard- und Software anderer Anbieter (Poseidon, Sirion, Anaiis) ist eine Anbindung von USB-1.1- und USB-2.0-Geräten möglich (mit breiter Unterstützung verschiedenster Geräteklassen bei Poseidon). Bei Poseidon kann in Zusammenarbeit mit einer Flash-Rom-Karte sogar von USB-Massenspeichern gebootet werden. Ab Amiga OS4 wird – je nach Hardware – USB 1.1 und 2.0 unterstützt (kein USB 2.0 Hi-Speed, da der EHCI-Treiber noch fehlt). Unter AmigaOS 4 Classic kann jedoch alternativ auch Poseidon eingesetzt werden.
  • AROS enthält seit August 2009 eine quelloffene Portierung von Poseidon, der die alte Implementierung ersetzt. Es unterstützt OHCI/UHCI (USB 1.1) und EHCI (USB 2.0 Hi-Speed) sowie die meisten der in Poseidon für AmigaOS vorhandenen Gerätetreiber. Der Stack liegt (teilweise) im Kernel und es kann damit von USB-Massenspeichern gebootet werden.
  • Atari MiNT unterstützt standardmäßig kein USB, es sind jedoch für MiNT verschiedene Treiber in Entwicklung, die Add-on-Karten (wie EtherNAT, eine Kombination aus USB- und Ethernet Erweiterung für den Atari Falcon) unterstützen.
  • eComStation als Nachfolger von OS/2 bringt ebenfalls Unterstützung für USB 2.0 mit.
  • Der Linux-Kernel unterstützt seit Version 2.2 USB-Controller. Seit der Kernelversion 2.4 sind Treiber für UHCI-, OHCI- und EHCI-Controller sowie Unterstützung für gängige USB-Endgeräte integriert. Die Unterstützung für EHCI-Controller in der Kernelversion 2.4 gilt jedoch als fehleranfällig und läuft erst seit Version 2.6 stabil. Weiterhin existieren sogenannte Gadget-Treiber, damit kann ein Linux-basiertes System, das an einem USB-Host angeschlossen wird, selbst als USB-Gerät erscheinen, zum Beispiel als Massenspeicher, Netzwerkkarte oder serielle Schnittstelle. Seit der Version 2.6.31 wird auch USB 3.0 vom Linux-Kernel unterstützt.[38]
  • Mac OS unterstützt USB 1.1 ab Mac OS 8.1. Mit der Zeit wurde der Umfang an Geräten, die mit Klassentreibern unterstützt werden, deutlich erweitert; seit Mac OS 8.5 werden die meisten üblichen Geräteklassen unterstützt.
  • Mac OS X unterstützt in allen Versionen USB 1.1 und ab Version 10.2.8 auch USB 2.0. Die aktuelle Version unterstützt auch USB 3.0.
  • Microsoft DOS und kompatible unterstützen USB standardmäßig nicht. USB-Tastaturen und USB-Massenspeicher sind über die Legacy-Emulation vieler moderner PC-BIOSe dennoch verwendbar, aber meist nicht Hotplug-fähig. Auch USB-Mäuse funktionieren meist mit für PS/2-Mäuse vorgesehenen Treibern, wenn der Legacy-Mode aktiviert ist. Für Free-DOS gibt es den „motto hairu“-Treiber, der USB 2.0 zur Verfügung stellt. Andere Hersteller bieten Spezialtreiber an, die aber viel konventionellen Speicher belegen und deshalb mit vielen DOS-Programmen nicht kompatibel sind.
  • Microsoft Windows 95 hat ab OEM Service Release 2.1 eine rudimentäre Unterstützung von USB 1.0, die jedoch als so fehlerhaft gilt, dass eine Verwendung meist nicht möglich ist.
  • Microsoft Windows 98 unterstützt USB 1.0, ab Windows 98 SE auch USB 1.1. USB 2.0 ist nur mit Treibern von Chipsatzherstellern möglich.
  • Microsoft Windows Me unterstützt USB 1.1. und verfügt als einziges System der 9x-Serie über einen generischen Gerätetreiber für Massenspeicher. USB 2.0 ist nur mit Treibern von Chipsatzherstellern möglich. Im Gegensatz zu Windows 98 und 95 ist nach der Installation gerätespezifischer USB-Treiber kein Neustart erforderlich.
  • Microsoft Windows NT 4.0 hat keinerlei USB-Unterstützung, von anderen Herstellern sind jedoch Systemerweiterungen dafür erhältlich. Gerätehersteller testen ihre Produkte selten mit derartigen Erweiterungen, deshalb gelten diese Systemerweiterungen nur für Spezialfälle als tauglich.
  • Microsoft Windows 2000 (SP4), Microsoft Windows XP (ab SP1), Microsoft Windows Server 2003, Microsoft Windows Vista, Microsoft Windows Server 2008, Microsoft Windows 7 und Microsoft Windows Server 2008 R2 unterstützen USB 1.1 und USB 2.0. und unterstützen generisch von Anfang an Massenspeicher. Weil der USB-Hostcontroller allerdings manchmal fehlerhaft erkannt wird, raten die meisten Hersteller dazu, die Treiber des Chipsatzherstellers zu installieren.
  • Microsoft Windows 8 unterstützt USB 1.0, 1.1, 2.0, 3.0.
  • MorphOS wird mit dem Poseidon-USB-Stack ausgeliefert mit voller Unterstützung von UHCI, OHCI und EHCI (nicht alle Treiber unterstützen isochronen Transfer).
  • NetBSD, FreeBSD und OpenBSD unterstützen UHCI, OHCI und EHCI sowie gängige Endgeräte. NetBSD war 1998 das erste freie Betriebssystem mit USB-Unterstützung.
  • OS/2 Warp4 unterstützt erst über den Aufrüstpack Warp 4.51 Convenience Pack 1 (vom Dezember 2000) USB 1.1. Dieser ist kostenpflichtig. Treiber-Aktualisierungen auf USB 2.0 sind ebenfalls verfügbar.
  • Palm OS unterstützt ab Version 3.2 USB als Kommunikationsplattform für HotSync, ab Palm OS 5 können (teilweise mit Zusatzprogrammen) auch Modemfunktionen über USB genutzt werden. Bestimmte PDAs (so bei Sony Clié) können mit der USB-Schnittstelle einen Massenspeicher emulieren.
  • QNX unterstützt ab der Version 6 UHCI, OHCI und EHCI, mit separat erhältlichen Treibern ist USB-Support auch in QNX4 nachrüstbar. Die mitgelieferten Treiber beschränken sich auf den HID-Bootmode, einige RS232- und Ethernet-Adapter sowie Massenspeicher.

Bei Betriebssystemen ohne USB-Unterstützung kann das BIOS nach Aktivieren von „USB Legacy Support“ (engl. etwa „USB-Unterstützung für Altlasten“) in seinen Einstellungen Abhilfe schaffen, dadurch erscheinen USB-Eingabegeräte wie Mäuse und Tastaturen dem Betriebssystem gegenüber als PS/2-Geräte. Je nach BIOS wird meist genau ein USB-Laufwerk (wie USB-Stick, USB-Kartenleser, USB-Festplatte, USB-Floppy) eingebunden. USB-CD/DVD-Laufwerke werden nur dann eingebunden, wenn von ihnen gebootet wird.

Sicherheitsproblematik

Auf der Black Hat 2014 wies Karsten Nohl zusammen mit Jakob Lell auf die Sicherheitsrisiken von USB-Geräten hin.[39][40][41][42] Das Verfahren basiert auf der Umprogrammierung von USB-Controller-Chips, welche eine weite Verbreitung haben und zum Beispiel in USB-Sticks zum Einsatz kommen.[41] Ein wirksamer Schutz vor einer Neubeschreibung besteht nicht, so dass sich ein harmloses USB-Gerät in vieler Hinsicht als schädliches Gerät missbrauchen lässt.[41]Mögliche Szenarien sind:

  • Ein Gerät kann eine Tastatur und Befehle im Namen des angemeldeten Benutzers emulieren und Malware installieren, welche angeschlossene USB-Geräte ebenfalls infiziert.[41]
  • Ein Gerät kann sich als Netzwerkkarte ausgeben, die DNS-Einstellung des Computers ändern und Datenverkehr umleiten.[41]
  • Ein modifizierter USB-Stick oder eine USB-Festplatte können beim Bootvorgang einen kleinen Virus laden, welcher das Betriebssystem vor dem Booten infiziert.[41]

Eine Abwehr solcher Angriffe ist bisher nicht möglich, da Malware-Scanner keinen Zugriff auf die Firmware Version von USB-Geräten haben und eine Verhaltenserkennung schwierig ist.[41] USB-Firewalls, welche nur bestimmte Geräteklassen blocken können, existieren (noch) nicht.[41] Die sonst übliche Routine zur Beseitigung von Malware — eine Neuinstallation des Betriebssystem — schlägt hier fehl, da der USB-Stick, von dem installiert wird, bereits infiziert sein kann, ebenso wie beispielsweise eine eingebaute Webcam oder andere USB-Geräte.[41]

Im Oktober 2014 rekonstruierten die Sicherheitsforscher Adam Caudill und Brandon Wilson auf der Konferenz DerbyCon die Sicherheitslücke und stellten eine modifizierte Firmware, sowie Werkzeuge zur Verfügung.[43]

Kurioses

USB-Spielzeug-Raketenwerfer, der auf Befehl kleine Schaumstoffraketen abfeuert

Inzwischen sind auch ausgefallene Geräte auf den Markt gekommen, wie beispielsweise USB-Heizplatten, mit denen etwa eine Kaffeetasse über die USB-Schnittstelle warmgehalten werden kann. Daneben gibt es auch Hardware, wie USB-Lampen für Notebooks, um die Tastatur zu beleuchten, USB-Tastatur-Staubsauger, USB-Ventilatoren, Rotoren mit LED-Lichteffekten, USB-Weihnachtsbäume oder beheizbare USB-Handschuhe und USB-Pantoffeln.

Des Weiteren wird USB teilweise als standardisierte Spannungsquelle eingesetzt. So haben sich im Jahr 2009 namhafte Mobiltelefonhersteller auf Druck der EU-Kommission darauf geeinigt, Micro-USB als Standard-Gerätebuchse für den Ladekontakt einzusetzen.[44] Vereinzelt sind Hersteller anderer elektronischer Kleingeräte wie kompakten Digitalkameras nachgezogen – im Bereich der portablen Media Player (insbesondere bei den MP3-Playern) war ein Aufladen via USB-Schnittstelle schon zuvor verbreitet.

Der USB-Standard sieht vor, dass Geräte zunächst im Low Power-Mode (100 mA oder 150 mA) starten und bei höherem Strombedarf diesen erst vom Host anfordern, bevor sie den normalen Modus schalten. Das können bei USB 2.0 bis zu weiteren 4x 100 mA, bei USB 3.0 bis zu weiteren 5 × 150 mA sein. Schlägt diese Anforderung fehl, muss sich das Gerät abschalten. Die meisten der vorgenannten Spielzeuge verwenden den USB-Anschluss jedoch ungefragt nur als Spannungsquelle und verstoßen gegen den USB-Standard, indem sie ohne Erlaubnis des Hosts mehr als 100 mA Strom beziehen. Das könnte im Extremfall den USB-Anschluss des Host beschädigen oder das Energiemanagement des Rechners durcheinanderbringen, was zu instabilem Verhalten führen kann. Sparsame 2,5"-Notebook-Festplatten können meist mit 2,5 W (500 mA) an einem 2.0-USB-Port mit Adapter betrieben werden, größere 3,5"-Festplatten jedoch nicht. Weiterhin gibt es sparsame Notebook-CD/DVD/Bluray-Brenner, die am USB-Port betrieben werden können. Deren Stromaufnahme liegt jedoch insbesondere beim Brennen mit höheren Geschwindigkeiten mit teilweise permanent über 1000 mA weit außerhalb der USB-Spezifikation.

Mittlerweile gibt es Netzteile, die an einer USB-A-Buchse oder einem Kabel mit Micro-USB-B-Stecker 5 V zur Verfügung stellen. Der verfügbare Strom liegt meist bei 1000 mA (allgemein zwischen 500 und 2000 mA). Einfache Geräte stellen einfach eine Spannungsquelle dar, bessere Geräte sind so gebaut, dass sie vom zu ladenden Gerät als solch ein Netzteil erkannt werden. Dabei gilt die USB-Battery Charging Specification als Referenz (dies ist nicht mit dem Powermanagement zu verwechseln, das beim Enumeration-Prozess, beim Anschließen an einen USB-Host, stattfindet). Wenn ein Gerät nicht an einem dafür gebauten Netzteil, sondern an einem USB-Host (z. B. PC/Notebook) geladen wird, werden Befehle bzgl. des Powermanagements während der Enumeration ausgetauscht. Letzteres ist notwendig, wenn das zu ladende Gerät sich exakt an den USB-Standard hält und nur den Strom entnimmt, der ihm genehmigt wurde. Ein bekannter Vertreter ist das iPhone: Es erkennt, dass es an einem Netzteil geladen wird, wenn bestimmte Spannungspegel an den Datenleitungen anliegen. An einem Rechner wird stattdessen über das Powermanagement verhandelt, wie viel Strom das Gerät entnehmen darf.

Ajay Bhatt wurde aus der Gruppe der Entwickler des USB-Standards besonders hervorgehoben, als er in dem Werbespot Ajay Bhatt – The Real USB Rock Star! des Unternehmens Intel als Rockstar porträtiert wurde.[45][46]

Literatur

  • Hans-Joachim Kelm: USB 2.0. Franzis, Poing 2006, ISBN 3-7723-7965-6.
  • Jan Axelson: USB Complete. Everything You Need to Develop Custom USB Peripherals. 4. Auflage. Lakeview Research, Madison 2009, ISBN 978-1-931448-08-6. (deutsch: USB 2.0. Handbuch für Entwickler. 3. Auflage. mitp, Heidelberg 2007, ISBN 978-3-8266-1690-7.)
  • Bernhard Redemann: Steuern und Messen mit USB, Hard- und Softwareentwicklung mit dem FT232, 245 und 2232. Eigenverlag, Berlin 2006, ISBN 3-00-017884-8.

Weblinks

Wiktionary: USB – Bedeutungserklärungen, Wortherkunft, Synonyme, Übersetzungen
Commons: USB – Sammlung von Bildern

Einzelnachweise

  1. DVI-Ausgang per USB nachrüsten. Im: heise online. 5. Juni 2007.
  2. Sven Hesse: USB 3.0 kommt 2009 mit 4,8 Gbit/s angerast. In: Allround-PC.com. 21. November 2008.
  3. a b Oliver Ehm: Stromversorgung für den USB-Anschluss. Com-Magazin.de, 22. Februar 2012.
  4. USB Voltage Drop and Droop Measurement (PDF; 184kb). Intel Corporation, 18. November 1996.
  5. Industrie stellt einheitliches Handyladegerät vor http://derstandard.at/1296696631540/Universell-Industrie-stellt-einheitliches-Handyladegeraet-vor derstandard.at Abgerufen am 8. Februar 2011
  6. Stecker rein! – Ein Ladegerät für alle.
  7. Approved Class Specification Documents Battery Charging http://www.usb.org/developers/devclass_docs Engl.
  8. Extensible Host Controller Interface (xHCI) Specification for USB 3.0. Intel Corporation, abgerufen am 26. April 2012 (englisch).
    eXtensible Host Controller Interface for Universal Serial Bus (xHCI). (pdf) Revision 1.0. Intel Corporation, 21. Mai 2010, S. 468, abgerufen am 26. April 2012 (englisch).
  9. USB-Spezifikation 2.0 Seite 153
  10. USB Class Codes. usb.org. 17. November 2009 (englisch).
  11. USB-Spezifikation 2.0 Seite 46
  12. USB Spezifikation 2.0 Seite 55
  13. a b Benjamin Benz: Pfeilschnell – Die dritte USB-Generation liefert Transferraten von 300 MByte/s. In: c’t. Nr. 22, 2008, S. 212.
  14. Samsung Galaxy S II bei samsungmobile.com
  15. Bundesnetzagentur (Hrsg.): Allgemeinzuteilung von Frequenzen für die Nutzung durch Anwendungen geringer Leistung der Ultra-Wideband-(UWB)-Technologie. (PDF; 94 kB) 2010.
  16. Matthias Kremp: Kappt die Kabel – lieber noch nicht. In: Spiegel Online. 18. Januar 2008.
  17. Von USB 1.0 bis USB 3.0: Der Siegeszug des Universal Serial Bus. In: player.de. 25. September 2009.
  18. USB 3.0 ist fertig. In: PC Professionell. 18. November 2008.
  19. Anika Kehrer: Linux unterstützt USB 3.0. In: Linux Community. 8. Juni 2009.
  20. USB 3.1: Startschuss für Entwickler auf: heise.de. 1. August 2013
  21. Nico Ernst: Stromzufuhr per Superspeed. Golem.de, 4. Dezember 2013, abgerufen am 6. Januar 2014.
  22. Typ C - USB bekommt neuen verdrehsicheren Stecker. usb.org, 20. Februar 2014, abgerufen am 15. März 2014 (englisch).
  23. Nico Ernst: Typ C - USB bekommt neuen verdrehsicheren Stecker. Golem.de, 4. Dezember 2013, abgerufen am 6. Dezember 2013.
  24. Nico Ernst: Der neue USB-Stecker ist fertig und geht in Produktion. Golem.de, 12. August 2014, S. 2, abgerufen am 12. August 2014.
  25. Dominic Jahn: Neuer USB Type-C Anschluss versorgt euren 4K Monitor mit Videosignalen. 4kfilme.de, 23. September 2014, S. 1, abgerufen am 11. Oktober 2014 (deutsch).
  26. PowerdUSB.org (englisch)
  27. Mobile phones to adopt new, smaller USB connector. In: USB Implementers Forum. 4. Januar 2007 (englisch, PDF; 128 kB).
  28. Mini-A und Mini-AB-Verbinder zurückgezogen. Mai 2007 (Presseerklärung des USB-IF), PDF.
  29. Kleinere USB-Steckverbindung für Mobilgeräte. In: heise online. 5. Januar 2007.
  30. OMTP Local Connectivity Recommendations. Common Charging and Local Data Connectivity. In: omtp.org. 8. Juni 2010.
  31. Übersicht über verschiedene Nicht-Standard-Miniatur-USB-Steckverbinder (englisch, Informationsseite eines Adapterkabelherstellers)
  32. Der neue USB-Stecker ist fertig und geht in Produktion auf Golem.de
  33. USB 3.0 Specification. (zip/pdf (32,4 MB)) 5.2.2 Compliant Cable Assemblies. USB Implementers Forum, Inc., 1. Mai 2011, S. 79, abgerufen am 8. November 2013 (englisch).
  34. http://www.thinkgeek.com/product/eecf/?srp=3 abgerufen am 1. Juli 2013(englisch)
  35. Andreas Link: USB 3.0: Alle Infos zum neuen Technologie-Standard. In: PC Games Hardware. 25. Januar 2010.
  36. Christoph Windeck: PC-Card und USB (Praxis/Hotline). In: c’t. Nr. 14, 2003, S. 204.
  37. Alexander von Obert: Kann ich eine USB-Schnittstelle nachrüsten? In: USB-Memory-Stick (USB-Speichermodul) FAQ – Teil 1: Hardware. 21. Dezember 2007, abgerufen am 27. März 2008.
  38. Linux-Kernel 2.6.31 unterstützt USB 3.0. In: golem.de. 10. September 2009.
  39. BadUSB – On Accessories that Turn Evil by Karsten Nohl + Jakob Lell. Black Hat, 11. August 2014, abgerufen am 15. September 2014.
  40. Black Hat USA 2014. Abgerufen am 15. September 2014.
  41. a b c d e f g h i Turning USB peripherals into BadUSB. Security Research Labs, abgerufen am 15. Juli 2014.
  42. Patrick Beuth: Jedes USB-Gerät kann zur Waffe werden. Die Zeit, 31. Juli 2014, abgerufen am 15. September 2014.
  43. Ronald Eikenberg: BadUSB-Tools kursieren im Netz, Angriffs-Stick im Eigenbau. 3. Oktober 2014, abgerufen am 16. Oktober 2014.
  44. Kommission begrüßt Einigung der Industrie auf ein universelles Ladegerät für Mobiltelefone. Presseveröffentlichung der Europäischen Union, 29. Juni 2009.
  45. Ajay Bhatt – The Real USB Rock Star!
  46. Mike Magee: Intel turns USB man into rock star. In: TG Daily. 7. Mai 2009.