Até USB C, todos os conectores USB eram cuidadosamente escolhidos para que dois hosts não pudessem ser conectados um ao outro.
Com o USB C, o host e o dispositivo têm o mesmo conector. Com essa configuração, agora é possível conectar dois hosts um ao outro. O USB C usa um cabo ativo que, presumo, arbitra as conexões, evitando danos elétricos.
Presumo que uma das três coisas possa acontecer.
- Nada mesmo
- Um erro "não faça isso" ou algo parecido
- Uma conexão é estabelecida com um host enviando como um dispositivo para o outro host. (parece improvável)
O que acontece? É uma das minhas proposições ou algo completamente diferente?
Respostas:
A resposta depende se as portas do host são portas de host regulares ou "Portas de função dupla" (DRP), pelo menos uma delas.
Se ambas as portas forem portas de host regulares, nada acontecerá, então (1) é verdadeiro. (porque ambas as portas terão pull-ups no pino CC, e isso não acionará nenhuma reação do host, o VBUS não será afirmado).
Se uma das portas (como em alguns tablets / telefones modernos) for DRP, a porta DRP alternará sua função CC tentando fingir como host, depois como dispositivo e assim por diante. Dependendo da outra porta, a conexão correta será estabelecida. Então a resposta é (3).
Se ambas as portas forem DRP, o (3) ainda é verdadeiro, apenas a função dos dispositivos será determinada aleatoriamente, dependendo do tempo de plug-in do cabo em relação ao ciclo CC.
Estas são ESPECIFICAÇÕES para o conector Tipo-C.
fonte
De acordo com aqui , nada de ruim acontecerá desde que ambas as portas USB tipo C funcionem conforme a especificação. Então, opção (1) da sua lista.
Para resumir a postagem do blog, caso o link acabe, ele explica basicamente a seção 2.3.1 da especificação Tipo-C:
Imagem da postagem do blog vinculado.
O que isso diz é que, diferentemente das portas USB anteriores, a especificação USB Tipo C exige que a energia não seja aplicada à porta até que a detecção de pinos CC esteja concluída. Existem basicamente dois pinos no cabo USB Tipo C que podem ser usados para detectar passivamente se um dispositivo é um host ou um escravo usando resistores sem ativar a fonte VBus.
Somente quando um host (DFP) detectar que um escravo (UFP) foi anexado, ele começará a enumeração e ativará o fornecimento do VBus.
Como resultado, quando você conecta dois hosts compatíveis, nada acontece, pois nem um escravo é detectado na outra extremidade; portanto, a energia não é aplicada (impedindo o curto-circuito dos suprimentos) e nenhuma sinalização é executada (impedindo a contenção do barramento). Esta seria a opção (2) da sua lista.
Se, no entanto, o dispositivo for um clone (barato) de algo que não é compatível com a especificação, quem sabe o que acontecerá. Se, por exemplo, você adquirir um carregador de telefone USB tipo C e ele não for projetado para especificações, ele sempre poderá ativar a tensão do barramento, o que pode causar danos. Isso é apenas especulação.
fonte