USB Device Sharing

multiplexerusbusb-host

I have a product (or concept of) based on a microcontroller acting as a USB host to control a given device. The device also needs to be controlled by another device (host). Assume that my device has say on which host is connected to the device. It knows when the other host is finished with the device and can relinquish control.

Given that…

  • Any potential issues with multiplexing the Vusb, D+ and D- signals to the device and switching between the two hosts?
  • Assuming the answer to the above is 'no', any recommendations or considerations on the actual IC that performs the switching? This would be a full speed implementation (12 Mbps).

EDIT:

Basically I have two existing devices (other host and other device). These things talk together quite well but other host doesn't make use of some of other device's features. Without modifying other host, I'd like to create my device. Both other host and other device plug into my host. My host will control other device until notified by the user that it would like to make use of the features provided by other host. When this happens, my host will throw a switch (multiplexer) which physically connects other host to other device. So, I am simply simulating the user removing the USB cable from my host and plugging it into the other host.

I know it would be ideal if my host could just implement everything that other host does and eliminate other host but there are reasons for doing it this way.

High Level Connections

Best Answer

Not sure if this is the proper thing to do but I have found the answer I am looking for in another question. It was answered to my satisfaction by @tcrosley here Designing A Simple Automatic USB Switch

This is precisely the part I need.