1

I have a laptop which has one USB 2.0 host controller and one USB 3.0 host controller. I have many USB 2.0 devices connected (both to USB 2.0 and 3.0 ports) and I am experiencing bandwidth issues.

So here is my question: is it possible, either via hardware or software, to convert one of the USB 2.0 signal to a true USB 3.0 signal, that would be directed to the USB 3.0 host controller ? I do not see a fundamental reason why it should not be possible but I have been unable to find a solution on the internet.

Note that I am aware that USB 3.0 ports split 2.0 and 3.0 signals, and that this answer to a related question does not answer my question.

More details

The current layout is:

camera + other devices (all USB 2.0) -> USB 3.0 hub -> laptop USB 3.0 port

The layout I am thinking about (I would like to separate the camera because it uses the most bandwidth):

USB 2.0 camera -> translate to USB 3.0 --
                                        |
                       USB 2.0 devices ---> USB 3.0 hub -> laptop USB 3.0 port

The laptop is a Dell XPS 13. The hub is a 7-ports USB 3.0 Exsys EX-1188HMS.

A screenshot of the PCI bus section of the Device Manager:

bummi
  • 1,725
  • 4
  • 16
  • 28

2 Answers2

2

The answer is pretty simple and straight-forward. No, this cannot be done. USB Ports are wired directly into the USB Controller. You would need to remove the internal cable to the USB Controller, so the USB Port itself is not attached to anything, then also do the same for the USB 3.0 port. Then attach a USB 3.0 2 port hub to the USB controller of the USB 3.0 port, and connect both USB ports to that hub.

You will obviously not have the space inside the device to do this, so you will automatically come to the next best thing. Use a 3.0 USB hub outside of the device, but that does not answer your question, so that's why I have started with: no, this cannot be done.

I guess, if you could actually remove the USB 2.0 controller and replace it with a USB 3.0 controller, it could work, but the USB3.0 controller may be bigger than the 2.0 controller. Do note, this will stop you from being able to connect usb 1.1 devices, because 2.0 devices are usually backwards compatible to 1.1, and possibly 1.0 devices, but 3.0 devices are usually only backwards compatible to 2.0.

LPChip
  • 66,193
1

No, there is no simple way to convert or translate USB 2.0 devices unto the USB 3.0 bus. For this to work would require considerable manipulations of the hardware and new drivers written to translate the USB 3.0 signals into their USB 2.0 counterparts.

Perhaps the best way to start describing the problem is to point out that a USB 3.0 port is three busses or protocols on one cable. Four, if one considers the USB 1.1 separate still from USB 2.0. There's the original USB 1.1 which was extended to USB 2.0. This bus uses the D+/D- pins. There's the DC power bus that can use the USB 2.0 bus to negotiate power, or it can modulate a 24MHz FSK BMC on the 5 volt bus for power negotiation. Then there's the USB 3.0 buss which can actually operate entirely independently from the USB 2.0 bus.

For a device like a hard drive these four busses integrate quite well since these are often designed to work across different computers which may or may not talk USB 3.x. The drivers are written to negotiate which busses are available and at which speeds. To make this work means all the wires are there to the USB bus controllers on the host and on the drive. It's one controller in the drive talking to one controller in the host.

For a USB 2.0 device there's only the USB 2.0 data lines, and maybe for some higher power devices there is an ability to negotiate power usage on the +5 volt line. To get devices like these to talk on the higher speed USB 3.0 bus would require a dock of some kind that would have a USB 2.0 controller on that USB 3.0 bus. This controller in the dock is now managing power and data on behalf of the host. The data from perhaps a mouse and keyboard is now coming to the host on the USB 3.0 bus, not on the USB 2.0 buss like the drivers expect. This would require new drivers for these devices. Or, at least some kind of "unwrapping" of the USB 2.0 data that was wrapped into packets on the USB 3.0 bus.

The dock is then a kind of bridge chip, sort of like a PCI bridge, for managing USB 2.0 devices. Which is actually how Thunderbolt 1 and 2 docks have USB 2.0 and 3.0 devices on them. Thunderbolt 3 may work this way as well. The difference is that Thunderbolt is a PCIe variant and so the drivers for this already exist. The USB controllers are common-off-the-shelf PCI chips and so pack all the USB 2.0 and 3.0 data on the Thunderbolt bus and the drivers on the PC see them like any other USB devices.

If I understand how USB4 is going to work they may have docks and hubs work like I described, with USB 2.0 data packets wrapped up into a USB4 packet, and then unwrapped on the host so that legacy USB 2.0 drivers can still work for them. This is because the legacy USB 2.0 lines will be gone and replaced with an additional pair of "superspeed" lines.

None of this helps people with a USB 3.0 controller because I am not aware of any such project to wrap USB 2.0 data into USB 3.0 packets. This only exists for Thunderbolt and USB4. The only way to get more USB 2.0 bandwidth is with some kind of expansion slot, which are quite rare on laptops today. Maybe there's an SD slot that can take a conversion card to USB 2.0?

MacGuffin
  • 1,655
  • 8
  • 14