Running VR, a 3D Printer, funky Corsair keyboard and other gadgets on my workhorse PC, I was seeing a number of problems with devices disconnecting, or Windows errors popping up saying "not enough controller resources".
My system was struggling for USB resources. Not ports, of those I have plenty, but resources that the motherboard can manage. It's confusing at first - if the computer has a USB port, surely it has the resources to cope with plugging something into it ?
Not so - there is the physical port, but then each USB device has a number of "end points" and the USB controllers on the motherboard can only manage a limited amount. Think of it as taps in your house. You can add as many extra taps as you want, but if they are all running at the same time the pressure drops and you end up with problems.
VR and USB Resources
In particular, the HTC Vive uses only one USB port, but 7 end points - it's classed as a camera, a sound device, a VR controller, a wireless communications device. So even though outwardly it's physical connection is fine, the motherboard was giving me problems with managing everything.
The solution ? A USB Hub, surely ? A powered one that will keep everything running nice and smooth.
A USB hub just gives you more physical ports. It doesn't do anything about the resource problem. The Vive is still classed as 7 end points all competing for resources.
Installing an Inateck PCI-E USB card
The actual answer was to add a new USB controller that plugs into my motherboard and has a fresh set of resources. So straight onto Amazon and I ordered a Inateck Superspeed PCI-E USB card.
And here is where the story begins. The story that gave rise to the title of this blogpost.
PCI-E cards are easy to install. Power the machine down, insert the card into a spare PCI-E slot, add a power cable, put everything back together and power back up. Surely nothing could go wrong ?
Switch the machine on, and it instantly went into my BIOS screen. Weird, but no errors, so OK, press Exit and everything should be fine. Straight back to BIOS. Reboot. BIOS. Power off and on. BIOS.
What-the-serious-eff ? How can a USB card be making it go to BIOS ? Remove the card, reboot. BIOS....
OK, my PC is now seemingly bricked. Has this new card killed my motherboard ? Heart palpatations start... When did I last back it up ? What do I do next ?
Luckily my years of PC building, troubleshooting, technical support, and general bloody mindedness kicked in. A quick look through the BIOS was showing there was no Windows boot device. Had I killed my hard drive ? It turns out not.
During the install, I had to add a power connector to the USB card. In pulling the spare cable, I had inadvertently dislodged the power cable that was running to my removable hard drives, therefore making BIOS not see a boot drive, therefore making it automatically jump to BIOS each time.
Kicking myself, everything put back together. The PC booted, I plugged in my Webcam, the Vive and my flashy keyboard to the new card and everything worked flawlessly.
Since then I have not had one device disconnect, or Windows resource error. At least it turned out well in the end.
Now to run a quick backup...