Not enough USB controller resources

Split from this thread.

On a Surface Pro 2 running latest Microsoft USB 3.0 xHCI Host Controller driver (6.3.9600.13031, 2/21/2014) I'm seeing this USB controller resources error with three different USB hubs.  I'm running a mix of USB gamepads and USB Audio speakers, 500mA USB 1.0 and 1.1 devices respectively.

1) Using Plugable USB2-HUB-AG7 connected directly to Surface Pro 2

I get the error when I attach (4) gamepads and (3) speakers, but not when I attach (5) gamepads and (2) speakers.  I also get the error when I attach (0) gamepads and (4) speakers, but not when I attach  (0) gamepads and (3) speakers.


2) Using D-Link DUB-H7 connected directly to the Surface Pro 2

I get the error when I attach (4) gamepads and (3) speakers, but not when I attach (5) gamepads and (2) speakers.  I also found this 7-port hub presents itself as two chained 4-port hubs internally, and I am able to get (4) speakers attached to the hub if I put (3) of them on the ports associated with the parent hub.

When I daisy chain the USB2-HUB-AG7 off the DUB-H7, I can only get one USB speaker to run on the USB2-HUB-AG7 child hub.  Adding the 2nd speaker causes "Not enough USB controller resources".

3) Using Plugable USB3-HUB7A, the results were identical to the D-Link DUB-H7.  This 7-port hub also presents itself as two chained 4-port hubs. 

Seems to be a USB 2.0 resource limit with the xHCI or root hub driver.  Most PCs have separate USB2 ports with a more "mature" USB 2.0 controller.  Not the Surface Pro 2 which only exposes a port on the Intel USB 3.0 controller.


USB Enumeration on Surface Pro 2 with (4) external USB speakers on Plugable USB2-HUB-AG7

Controller DeviceCount: 11
Power:  USB2-HUB-AG7 self-powered
Problems:  No sound from speaker (1-1-4), Not enough USB controller resources.


1 USB Root Hub (xHCI) - Intel USB 3.0 xHCI (Microsoft)  6.3.9600.17031 2014-02-22
 1-1 Generic USB Hub (Plugable USB2-HUB-AG7)
  1-1-1 USB Composite Device - HID, Audio (500mA Logitech USB speakers)
  1-1-2 USB Composite Device - Audio, HID (500mA Logitech USB speakers)
  1-1-3 USB Composite Device - HID, Audio (500mA Logitech USB speakers)
  1-1-4 USB Composite Device - HID, Audio (500mA Logitech USB speakers)
 1-2 USB Composite Device - Marvell AVASTAR (WiFi/Bluetooth)
 1-3 USB Composite Device - HID, HID, HID  (touch cover, keyboard, mouse, pen, sensors, buttons)
 1-4 USB Composite Device - HID, HID (touch screen)
 1-5 USB Composite Device - Image (front camera)
 1-6 USB Composite Device - Image (rear camera)

NOTE:  Devices 1-2 thru 1-6 are built in to the Surface Pro 2.   Device 1-1 is connected to the external USB port.

 

Question Info


Last updated October 4, 2018 Views 4,059 Applies to:

* Please try a lower page number.

* Please enter only numbers.

* Please try a lower page number.

* Please enter only numbers.

Hello,

This is Josh at Plugable Technologies. We've been working with Microsoft behind the scenes and rest assured they are aware an issue exists. That being said, when and if we will see a solution is hard to say. We don't have any direct involvement in driver development, but we've been reporting our findings to Microsoft and hopefully they will be able to analyze the data and come up with a solution.

We're involved mainly because our primary product line is comprised of USB docking stations and hubs and we have run into this issue. (It also helps that we're basically next door neighbors as we're both located in Bellevue, WA).

At first we suspected it might have been an issue with the firmware on our hub chipsets but after many different test cases we have narrowed this down to what we believe is a driver issue. This issue does not appear to happen on Windows 7 but can eventually be reproduced on the same computer with Windows 8 equipped with an Intel USB 3.0 controller. You just need enough USB devices to make it happen.

My main workstation is a 128GB Surface Pro 2 and I too have run into this issue many times. I have to be very selective about what devices I have attached. I believe the reason us Surface users see the issue is because almost every device in the Surface Pro 2 is attached through USB. I've also had this issue happen on an older Sony Vaio but far less frequently (less built in USB devices).

  1. Bluetooth
  2. WiFi
  3. Audio
  4. Touch sensor
  5. Gyro sensor
  6. Ambient light sensor
  7. Micro SD reader
  8. Front webcam
  9. Rear webcam

I'm sure I'm forgetting some other possibilities...


I currently have the following connected to my Surface:

  • Plugable UD-3900 universal docking station
  • Plugable USB3-HUB4AC1 4 port USB 3.0 hub
  • Plugable PSS-SDH1 hard drive dock with integrated 4 port USB 3.0 hub
  • Two flash drives, keyboard, mouse
  • USB 2.0 external touch screen DisplayLink monitor

By my count here is the total number of actual devices (including hub chipsets) attached:

  1. DisplayLink DL-3900 chipset - integrated dual video outputs, gigabit Ethernet, & audio controller (UD-3900 dock)
  2. VIA 811+ 4 port USB 3.0 hub (UD-3900 dock)
  3. Terminus 4 port USB 2.0 hub (UD-3900 dock)
  4. VIA 812 B2 USB 3.0 hub (USB3-HUB4AC1 hub)
  5. VIA 812 USB 3.0 hub (PSS-SDH1 dock/hub combo)
  6. ASMedia ASM1051e SATA to USB (PSS-SDH1 dock/hub combo)
  7. Sandisk Extreme 16GB USB 3.0 flash drive
  8. Plugable USB2-OTGTF Micro SD card reader
  9. Keyboard
  10. Mouse
  11. DisplayLink DL-125 chipset (for the additional touch screen display)
  12. Touch screen HID device (for the additional touch screen display)

Excluding hub chipsets, I only have 8 devices attached externally. If I try to attach just one more device, I get the resources error. It doesn't seem to matter if I attach a USB 2.0 or 3.0 device. It appears to be a total device limit.

I'm not sure what we've learned here, this is just a lunchtime ramble.

Joshua Henry
Technical Support Analyst & Engineer
Plugable Technologies

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

Sorry to bump a bit old of a thread, but I'm pretty sure this still applies as being a serious problem that now the surface pro 3 has too.

http://answers.microsoft.com/en-us/surface/forum/surfpro3-surfdevice/usb-hub-powered-not-enough-resources/790d124e-dceb-45cf-8340-3cfa3f02e57e

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

Using the USB 3.0 xHCI drivers actually routes the ports to a different controller.

To show how a USB port is switched to either the Intel EHCI or xHCI controller, compare the following USBTreeView topologies.

A Windows 7 PC without USB 3.0 drivers has USB devices connected to the Intel 8 Series USB 2.0 EHCI controller.

Windows 7 Before USB 3.0 Drivers Windows 7 with USB 3.0 Drivers



After installing Intel USB 3.0 drivers for Windows 7, the USB devices are switched to the Intel USB 3.0 xHCI controller.  The devices now connect to a different USB controller even though they are remain connected to the same physical ports on the PC:

Since Windows 8 has a bundled Microsoft USB 3.0 driver, the ports are always routed to the xHCI controller.   Interestingly, the EHCI controller still appears in USBTreeView on the Surface Pro 2, but I know of no way to connect a device to it. 

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

It's impossible to say without having one.

My guess is that if they designed it similar to the Pro 2 with most of the internal devices being connected over USB, then the issue will still remain.

Joshua Henry
Technical Support Analyst & Engineer
Plugable Technologies

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

I'd like to see if we can make a conclusive list of how many devices are internally attached via USB in the Surface Pro 2, and how many external devices users are able to use before hitting the resource error.


Surface Pro 2 256GB i5-4200U with Touch Cover 2
USB Driver:  Intel(R) USB 3.0 eXtensible Host Controller - 0100 (Microsoft)
                  Version: 6.3.9600.17031  Date: 2014-02-22

Working with USB Composite Audio devices, I am only able to attach (3) USB audio devices on (1) external USB hub before running into problems.  Playing sound to a 4th USB audio device while simultaneously playing sound through the other (3) USB audio devices triggers the "Not enough USB controller resources" error.  


The USB controller DeviceCount is only (11) total devices consisting of

    (1) root hub

    (1) external USB 2.0 hub

    (4) external USB Composite Audio devices (one of which is nonfunctional)

    (5) internal Surface Pro 2 devices

The error occurs only when playing sound, not when the USB audio device is first attached.  Running a test tone from sound properties fails.


I also found if I stop playing sound on one of the (3) USB audio devices, I am then able to play sound to the 4th USB audio device.  In fact I have no trouble connecting (7) USB audio devices to a single hub, but I can never play sound to more than (3) concurrently.

The USB audio devices that are actively playing sound have two Open Pipes, while those not playing have only one Open Pipe.  So it appears whatever USB resource issue exists is preventing the additional pipe from being opened when attempting to play sound to the device.


Strangely, this resource issue is USB topology dependent.  Chaining a 2nd external USB hub allowed me to play sound through (3) additional USB audio devices, but playing sound to a 4th audio device on either hub would still fail.


A 3rd hub can be added to get the 7th USB audio device working.


These results indicate that in some cases adding a USB hub and distributing devices across the hubs may be a workaround to the "Not enough USB controller resources" issue.  However, the new hub itself increases the DeviceCount on the USB controller, which can quickly hit the (25) max DeviceCount limitation we saw in my last post.

For comparison, I attached all (7) USB audio devices to a single hub and connected to it to my 2011 vintage Windows 7 laptop with USB 2.0 EHCI controller.

    USB Driver: Intel(R) 6 Series/C200 Series Chipset Family USB Enhanced Host Controller - 1C26
    Version: 6.1.7601.18328  Date: 2013-11-26
I found no problems playing sound through all (7) devices concurrently.  This demonstrates there are no problems inherent to these USB devices or the USB hub.  

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

Thank you for your reply. It helps to know it is not a one off problem. Iwish MS would just admit these problems instead of stonewalling. I don't think any reasonable person expects a flawless product, but at least this type of information helps with figuring out workarounds.

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

* Please try a lower page number.

* Please enter only numbers.

* Please try a lower page number.

* Please enter only numbers.