A USB hub will not function when it's connected more than 5 hubs away from the root port
I am trying to utilize my monitor's ability to switch video input and USB source (much like a KVM switch) with a USB hub. Previously I had all of the devices plugged directly into USB ports on the monitor. I could switch video input on the monitor to the Surface via its dock or the desktop (both machines are running Windows 10) and USB switched along with the video.
Since introducing the USB hub the Surface dock no longer works with USB, but the desktop does. If I bypass the dock and plug a USB cable directly into the Surface it too works. When connected through the Surface dock I receive the error:
Too many USB hubs are connected together. A USB hub will not function when it's connected more than 5 hubs away from the root port.
The desktop is a generic PC but since the Surface is having issues I've specifically called it out in the list of devices in my configuration:
- Microsoft Surface Book
- Microsoft Surface Dock
- Dell UltraSharp 34 Curved Ultrawide Monitor - U3415W
- AmazonBasics 10 Port USB 3.0 Hub
- Mice, keyboards and other USB peripherals
If I read the error explicitly I can only count 4 USB hubs: Surface Book, Surface Dock, Monitor, and USB hub. To explain how I have things hooked up I've put together this diagram:
Until this error I was under the impression that powered USB allowed for 127 devices to be daisy chained. Is this impression incorrect or is something wrong with my configuration?
Additional info based on responses:
My USB Hub chain as viewed with USB Tree Viewer when connected to my Surface Book via the Surface Dock:
From this I definitely see that there are more than 5 hubs from the root port to the devices at the end. It seems that a "single layer" hub at the end would solve the issue. According to Ali Chen's comment "finding this information in marketing documents" would be unlikely.
When counting hubs, you assume that every individual box/device has only one hub. This assumption is likely untrue.
To begin, the 10-port "amazon hub" definitely has at least two hubs in chain, because single hubs are not manufactured with 10 ports, 7-port maximum [see this explanation].
Then the Dell monitor has also some special design - it has TWO UPSTREAM ports. What is its internal architecture, who knows.
The "surface dock" is also a suspect for having more than one USB hub in the chain. And I don't know if the "surface" uses extra internal hub for whatever reason.
To get the actual idea how many hubs are there in the chain and what/how all things are connected, use USBTreeView.exe on the Surface side. I am sure the Surface got the chain right, and you do have more than 5 hubs in the chain.
Addition: USB standard allows for 127 devices per one root controller, it doesn't mean that they are "daisy chained", just total of 127. In fact, if we discount hubs as functional USB devices, the total number of useful devices comes down to 102, since you would need 17 7-port hubs to accommodate the devices, in three-tier configuration, and each hub will take one address out of available space.
Your 10 port USB hub (and other devices) may actually contain multiple USB hubs in series internally.
USB hub - Wikipedia
USB hubs are often built into equipment such as computers, keyboards, monitors, or printers. When such a device has many USB ports, they all usually stem from one or two internal USB hubs rather than each port having independent USB circuitry.
As stated, the USB spec allows 127 devices to be connected through a single port. However, the USB spec only allows hubs five levels deep, or seven if including both the end device and the root device (the onboard controller itself).
A Technical Introduction to USB 2.0 - USB.org (PDF)
A newly attached hub will be assigned its unique address, and hubs may be cascaded up to five levels deep.
Interoperability Testing with USB Type C - USB.org (PDF)
"Contains devices behind 5 levels of nested hubs – the maximum allowed"
To add some experimental data to the other answers, your problem is specifically with Surface Book exactly because Surface Dock has two USB hubs. I, too, have a Surface Dock with a Surface Book and that's what I see in the Device Manager when I connect a mouse to the dock:
The highlighted hubs belong to the Surface Dock, I verified it by connecting the mouse directly to one of the ports in the Surface Base.
Thus you have:
- Surface Dock - 2 hubs
- Monitor - at least 1 hub
- 10-port USB Hub - at least 2 hubs, since, as mentioned in other answers, one hub can have maximum 7 ports
So at the very minimum you have 5 hubs. Probably the monitor has more than one hub, and that's why you are getting the error.