Conectando dos hosts “USB C”, ¿qué sucede?

8

Hasta que USB C, todos los conectores USB se eligieron cuidadosamente para que dos hosts no pudieran conectarse entre sí.

Con USB C, tanto el host como el dispositivo tienen el mismo conector. Con esta configuración ahora es posible conectar dos hosts entre sí. El USB C usa un cable activo que asumo que arbitra las conexiones y evita daños eléctricos.

Supongo que una de las tres cosas podrían suceder.

  1. Nada en absoluto
  2. Un error "no hagas esto" o algo por el estilo
  3. Se establece una conexión con un host que se envía como un dispositivo al otro host. (parece poco probable)

¿Qué pasa? ¿Es una de mis proposiciones o algo completamente diferente?

    
pregunta vini_i

2 respuestas

9

La respuesta depende de si los puertos de host son puertos de host normales o "Puertos de doble función" (DRP), al menos uno de ellos.

Si ambos puertos son puertos de host normales, no ocurrirá nada, por lo que (1) es verdadero. (debido a que ambos puertos tendrán pull-ups en el pin CC, y esto no activará ninguna reacción del host, no se confirmará VBUS).

Si uno de los puertos (como en algunas tabletas / teléfonos modernos) es DRP, el puerto DRP alternará su función CC y tratará de hacerse pasar por host, luego como dispositivo, y así sucesivamente. Dependiendo del otro puerto, se establecerá la conexión correcta. Así que la respuesta es (3).

Si ambos puertos son DRP, el (3) sigue siendo cierto, solo la función de los dispositivos se determinará al azar, según el tiempo de conexión del cable en relación con el ciclo CC.

Estas son ESPECIFICACIONES para el conector Tipo-C.

    
respondido por el Ale..chenski
2

Según aquí , no ocurrirá nada malo mientras ambos puertos USB de tipo C funcionen en la especificación. Así que la opción (1) de tu lista.

Para resumir la publicación del blog en caso de que el enlace muera, él explica la sección 2.3.1 de la especificación de Tipo C:

Imagen de la publicación de blog vinculada

Lo que esto dice es que, a diferencia de los puertos USB anteriores, la especificación USB Tipo-C obliga a que la alimentación no se aplique al puerto hasta que se complete la detección del pin CC. Básicamente, hay dos pines en el cable USB tipo C que se pueden usar para detectar de forma pasiva si un dispositivo es un host o un esclavo que usa resistencias sin habilitar la fuente VBus.

Solo una vez que un host (DFP) detecte que se ha adjuntado un esclavo (UFP), iniciará la enumeración y habilitará el suministro de VBus.

Como resultado, cuando se conectan dos hosts compatibles, nada ocurrirá, ya que ninguno de los dos detecta un esclavo en el otro extremo, por lo que no se aplica alimentación (evitando el cortocircuito de los suministros) y no se realiza ninguna señalización (evitando la contención del bus) ). Esta sería la opción (2) de tu lista.

Sin embargo, si el dispositivo es un clon (barato) de algo que no cumple con la especificación, quién sabe qué sucederá. Si, por ejemplo, obtiene un cargador de teléfono USB tipo C y no está diseñado para especificaciones, siempre puede habilitar el voltaje del bus, lo que podría causar daños. Eso es solo una especulación.

    
respondido por el Tom Carpenter

Lea otras preguntas en las etiquetas