Thursday, 31 March 2016

usb c - Connecting two "USB C" hosts, what happens?


Up until USB C all the USB connectors were carefully chosen so that two hosts could not be plugged into each other.


With USB C both the host and device have the same connector. With this setup it is now possible to plug two hosts into each other. USB C does use an active cable which I assume arbitrates connections preventing any electrical damage.


I assume one of three things could happens.




  1. Nothing at all

  2. An error "don't do this" or something like that

  3. A connection is established with one host submitting as a device to the other host. (seems unlikely)


What happens? Is it one of my propositions or something completely different?



Answer



The answer depends on whether the host ports are regular host ports, or "Dual-Role Ports" (DRP), at least one of them.


If both ports are regular host ports, nothing will happen, so (1) is true. (because both ports will have pull-ups on CC pin, and this will not trigger any host reaction, VBUS will not be asserted).


If one of the ports (like in some modern tablets/phones) is DRP, the DRP port will alternate its CC function trying to pretend as host, then as device, and so forth. Depending on the other port, right connection will be established. So the answer is (3).


If both ports are DRP, the (3) is still true, just the role of devices will be determined at random, depending on cable plug-in time relative to CC cycle.



These are SPECIFICATIONS for the Type-C connector.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...