0
\$\begingroup\$

I would like to connect two USB hosts together and was wondering if a USB bridge is the correct tool for this.

Specifically, one device is a video games console that uses USB 1.1 for controller input. Some similar consoles had devices developed for them (custom PCBs or micro controllers) that plug in to the controller port and pretend they are a controller, forwarding or translating input (such as connecting a different type of controller or enabling wireless gamepads).

I am trying to connect the USB controller input on the console to a PC where I would write software to handshake & forward commands but I'm not sure the correct way to physically connect the devices.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ This is not possible for PC hardware, and there's no such thing as a generic bridge. You could make an applications-specific bridge with an MCU having dual USB ports, or you could use a low-end Raspberry Pi that has a device-capable SOC and no hub between the chip and port, such as a Model A or Zero instead of a PC. But questions seeking things to buy are off topic here. \$\endgroup\$ Jan 10, 2021 at 16:16

2 Answers 2

2
\$\begingroup\$

USB does not allow two hosts to be physically connected together.

So it is not possible, unless you can figure out a mechanism to make your PC USB port to switch from host mode to device mode. And that may not be possible, if the configuration is done in hardware.

\$\endgroup\$
2
  • \$\begingroup\$ yeah, that's impossible on any PC hardware I'm aware of (there's an exception for a couple of debugging modes, but that's totally useless for OP's purpose) \$\endgroup\$ Jan 10, 2021 at 16:09
  • \$\begingroup\$ That is definitely something PC USB ports cannot do. Only some SoC's like the pi's, and only in configurations where there's no hub between the device and the port (eg, the lowest end pi's) can do that. \$\endgroup\$ Jan 10, 2021 at 16:15
0
\$\begingroup\$

Every laptop that charges from USB-C must have a dual role capable controller, that means it can act as host or device. USB-PD requires this. This is proven by plugging in a laptop to another "host" computer as if the other computer is a charger. The host computer will list the laptop as a USB device, again it must if the laptop is going to get more than a fraction of a watt from a USB port and still comply with USB specs. No bridge chip needed. A bridge chip would mean the other connected computer cannot emulate any other USB device than what the bridge chip allows, usually a serial or ethernet device. That might allow emulation of a serial mouse or something.

One thing is that USB-PD is something that "sits on top" of USB 2.0 and so the charging laptop in my example would appear as a USB 2.0 device, not USB 1.1. Maybe these USB controllers allow for a USB 1.1 mode, and USB 1.1 supports USB-PD negotiation. If an $8 mouse works on these ports then they must at least support hosting USB 1.1 devices, if they can turn that around and pretend to be a USB 1.1 device to another host is something I have not investigated.

There are PCIe cards with USB-B ports on them out there, that might be something to investigate. I don't recall where to get them but just knowing that they exist should be a help to you. Last time I saw them the place that sold them made it quite clear they offered no support for them, that had to come from the people that made the chip on the board.

There's two places to look to get you started, look for computers or PCIe cards with USB-C ports and investigate their dual role capability, or seek out a USB-B PCIe card. A USB bridge chip might work if the controllers are actually serial devices, then you might be able to coerce the bridge chip to emulate the same serial signals as a game controller. More likely the controllers are HID devices and this is not possible.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.