I connettori
USB posseggono un
verso di inserimento: nonostante le specifiche tendano a chiarire che il verso corretto è quello che mette in vista il logo USB (un tridente stampato in depressione sulla plastica esterna) durante l'accoppiamento, non tutti i produttori si sono adeguati, con il risultato che si ha il 50% di probabilità di indovinarlo al primo colpo (questione non risolta neanche con l'ultima versione uscita).
Il protocollo di trasmissione
USB divide i dati in
pacchetti da 8 bit, inviati a partire dal bit meno significativo. Il primo byte inviato corrisponde all'
identificatore del pacchetto (PID) di 4 bit seguito dal suo complemento binario per il controllo degli errori.
Si distinguono quattro diversi tipi di pacchetti: i
pacchetti di handshake, che contengono solo il PID e servono a rispondere all'invio di dati; i
pacchetti token, inviati sempre dall'host e costituiti dal PID e da 2 byte di
payload (con CRC a 5 bit), con funzioni di setup iniziale, sincronizzazione, richiesta di pronto; i
pacchetti dati, costituiti dal PID e da un massimo di 1023 byte di informazioni (con CRC a 16 bit); i
pacchetti PRE, presenti solo nei dispositivi a banda ridotta, che servono a richiedere all'hub velocità di invio adeguate alle capacità di ricezione.
La comunicazione avviene utilizzando
canali logici (o
pipe), che vengono attivati tra l'
host controller e l'
endpoint (elemento del dispositivo
Function che gestisce le comunicazioni con l'esterno). Ogni dispositivo
USB supporta fino a 32 pipe attive, con un limite di 16 per verso. Le pipe possono essere unidirezionali (utilizzate per la trasmissione di grandi quantità di dati, con o senza banda o latenza garantite) o bidirezionali (per l'invio di brevi comandi e altrettanto brevi risposte).
Le specifiche
USB definiscono
19 classi relative alle funzionalità fornite dai dispositivi collegati: audio, trasporto dati, interfacce uomo-macchina, immagini, stampa, memorizzazione, video, smart-card ecc. Un dispositivo può includere più di una classe: viene in questo caso detto
compound, cioè composto.