Collegamento di due host "USB C", cosa succede?


12

Fino a USB C tutti i connettori USB sono stati scelti con cura in modo che due host non potessero essere collegati tra loro.

Con USB C sia l'host che il dispositivo hanno lo stesso connettore. Con questa configurazione è ora possibile collegare due host l'uno nell'altro. USB C utilizza un cavo attivo che presumo arbitraria connessioni che impedisce danni elettrici.

Suppongo che una delle tre cose possa succedere.

  1. Niente di niente
  2. Un errore "non farlo" o qualcosa del genere
  3. Viene stabilita una connessione con un host che invia come dispositivo all'altro host. (sembra improbabile)

Che succede? È una delle mie proposte o qualcosa di completamente diverso?


Domanda interessante, purtroppo non ho tempo di scoprirlo. Tuttavia solleva un'altra domanda; ci sono dispositivi che sono solo host USB-C?
Puffafish

Risposte:


14

La risposta dipende dal fatto che le porte host siano porte host regolari o "Porte a doppio ruolo" (DRP), almeno una di esse.

Se entrambe le porte sono porte host regolari, non accadrà nulla, quindi (1) è vero. (poiché entrambe le porte avranno pull-up sul pin CC e questo non attiverà alcuna reazione dell'host, VBUS non verrà affermato).

Se una delle porte (come in alcuni moderni tablet / telefoni) è DRP, la porta DRP alternerà la sua funzione CC cercando di fingere come host, quindi come dispositivo e così via. A seconda dell'altra porta, verrà stabilita la corretta connessione. Quindi la risposta è (3).

Se entrambe le porte sono DRP, il (3) è ancora vero, solo il ruolo dei dispositivi sarà determinato in modo casuale, a seconda del tempo di inserimento del cavo rispetto al ciclo CC.

Queste sono SPECIFICHE per il connettore di tipo C.


Un emendamento a questo: la maggior parte dei DRP sono configurati come Try.Source o Try.Sink. Solo quando sono uguali è casuale, se uno ha una preferenza sorgente e uno ha una preferenza sink, si sistemeranno sempre in quel modo.
crlanglois,

1
@crlanglois, ci sono due tipi di "ruoli" nel framework di tipo C, uno è il ruolo "host-device" e un altro è "" provider-consumer "o" source-sink ". Stavo parlando di" host- "doppio cambio di ruolo del dispositivo. Apparentemente intendi ruoli di potere e ovviamente possono avere priorità / preferenze diverse.
Ale..chenski,

2

Secondo qui , non succederà nulla di male fintanto che entrambe le porte USB di tipo C funzioneranno secondo le specifiche. Quindi l'opzione (1) del tuo elenco.

Per riassumere quel post del blog nel caso in cui il collegamento dovesse mai scomparire, egli spiega essenzialmente la sezione 2.3.1 della specifica di tipo C:

Sezione 2.3.1 delle specifiche USB di tipo C Immagine dal post sul blog collegato.

Ciò dice che, diversamente dalle precedenti porte USB, la specifica USB di tipo C impone che l'alimentazione non venga applicata alla porta fino al completamento del rilevamento del pin CC. Esistono sostanzialmente due pin nel cavo USB di tipo C che possono essere utilizzati per rilevare passivamente se un dispositivo è un host o uno slave che utilizza resistori senza abilitare l'alimentazione VBus.

Solo una volta che un host (DFP) rileva che è stato collegato uno slave (UFP), avvia l'enumerazione e abilita la fornitura VBus.

Di conseguenza, quando si collegano due host conformi, non accadrà nulla poiché nessuno rileva uno slave sull'altra estremità, quindi l'alimentazione non viene applicata (impedendo il cortocircuito delle forniture) e non viene eseguita alcuna segnalazione (impedendo la contesa del bus). Questa sarebbe l'opzione (2) dal tuo elenco.


Se tuttavia il dispositivo è un clone (economico) di qualcosa che non è conforme alle specifiche, chissà cosa accadrà. Se ad esempio ottieni un caricabatterie USB di tipo C e non è progettato per le specifiche, potrebbe sempre abilitare la tensione del bus, che potrebbe causare danni. Questa è solo una speculazione però.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.