banner
Casa / Blog / Tutto sull'USB
Blog

Tutto sull'USB

Jun 17, 2023Jun 17, 2023

Cerchiamo di essere chiari: non è sufficiente disporre di cavi da USB-C a USB-C. Ci sono molti cavi che potremmo voler acquistare per il nostro uso quotidiano, magari per un periodo di transizione mentre possediamo ancora un certo numero di dispositivi non dotati di connettore USB-C. Tuttavia, le specifiche USB-C rappresentano solo un numero limitato di tipi di cavi, escludendo esplicitamente o implicitamente una gamma di cavi che potresti voler acquistare o realizzare.

Sono fermamente convinto che, come hacker, dovresti essere in grado di acquistare qualsiasi dispositivo USB-C di cui potresti aver bisogno. Gli hacker non hanno bisogno di restrizioni dettate dal marketing: hanno bisogno di capire come un pezzo di tecnologia può o non può essere utilizzato, in base a come funziona internamente. Vorrei che fornissi tale comprensione, in modo che tu possa prendere decisioni informate.

D'altro canto, l'USB-C è progettato per essere utilizzato da persone poco esperte, anche se spesso fallisce in questo. (Etichettatura dei cavi, qualcuno?) Definizioni chiare di ciò che è conforme a uno standard possono aiutare a farlo rispettare. Ecco la famigerata storia di un cavo USB-C che ha ucciso un Chromebook e ha lanciato una carriera di spiegazione online delle specifiche USB-C per [Benson Leung]. Ci sono molte storie di fallimenti del genere, in effetti. Oggi esamineremo gli aggeggi USB-C che potrebbero o meno deluderti, a seconda di come li usi.

I cavi di prolunga USB-C non sono conformi alle specifiche USB-C. Oppure lo sono? Costituiscono un problema nella pratica, anche se non sono conformi? Diamo un'occhiata a un cattivo esempio. Diciamo che vuoi estendere la porta di alimentazione su un Raspberry Pi 4.

Ecco un cavo di prolunga di tipo C che inoltra le linee dati VBUS e USB 2.0, ma non i pin CC. Se utilizzi questa estensione con un Raspberry Pi 4, le resistenze da 5,1 kΩ sulla porta Raspberry Pi non saranno più accessibili sull'estremità femmina dell'estensione e un alimentatore di tipo C non potrà più alimentare il Raspberry Pi interessato. Bene, a meno che non si tratti dell'alimentatore ufficiale Raspberry Pi "Type-C", che non ha modo di rilevare la presenza di resistori - ovviamente, violando le specifiche Type-C, ma funzionando come un cavo da USB-A a USB-C a tutti gli effetti e scopi, il che rende la violazione non così significativa.

Cosa succederebbe se l'estensione dovesse inoltrare un pin CC con un filo separato all'interno del cavo? Potrebbe, infatti; alcune estensioni lo fanno. Purtroppo, questo significa che funzionano solo con una rotazione e ogni volta che colleghi un cavo a tale estensione, potresti doverlo capovolgere prima che funzioni. Doppiamente valido per gli accoppiatori FF: lì dovrai ruotare il cavo il 50% delle volte se vuoi che l'accoppiamento funzioni

Che ne dici di inoltrare entrambi i pin CC, ciascuno con un filo separato? Funzionerebbe davvero e anche questi sono venduti online. In effetti, è così che funzionano le schede di espansione USB-C sul laptop Framework: poiché il connettore della scheda di espansione sul laptop è USB-C, quelle schede sono solo un'estensione USB-C davvero breve che inoltra i pin uno a uno. È diverso da una prolunga? SÌ.

Qual è il problema con le estensioni? Prima di tutto, c'è un enigma in cui tali cavi non sono conformi alle specifiche e i produttori più rinomati non li producono perché non vogliono perdere il favore del gruppo di standard USB, il che significa che spesso devi fare affidamento su i produttori poco affidabili, con un controllo di qualità scadente. Considerato tutto ciò per cui utilizziamo USB-C, ciò può andare storto un po' rapidamente. Ora, perché non dovrebbe essere legale?

Supponiamo che tu abbia un'estensione USB-C "passa ogni pin", che può gestire solo 3 A internamente. Se mai provassi a caricare il tuo dispositivo da 100 W con un alimentatore da 5 A e un cavo da 5 A con tale estensione in serie, l'alimentatore fornirebbe 5 A, non essendone il più saggio, ma potresti ritrovarti in una situazione pericolosa situazione in cui l'isolamento del cavo inizia a sciogliersi. D'altra parte, da quanto mi risulta, un Raspberry Pi 4 non consumerà mai più di 3 A, quindi in quel caso d'uso probabilmente puoi farla franca, ma dipende da te.

Quando si tratta di segnali ad alta velocità, ci sono più insidie. I cavi USB-C devono già essere costruiti secondo un determinato standard per funzionare con velocità dati di 40 Gbps, invece di essere limitati a 20 Gbps. Se utilizzi un'estensione che inoltra i cavi ad alta velocità per connettere una periferica ad alta velocità, potresti scoprire che il tuo dispositivo diventa più difettoso e si riconnette di tanto in tanto.