Managing USB bandwidth with USBView
USB is mostly plug and play - you get your device, put it into a port and you're done (with perhaps a driver install at the end). While this is fine for most devices, once you start using higher bandwidth devices like webcams, capture cards, microphones or headsets, managing your USB bandwidth becomes important. Each USB port on your PC is attached to a particular USB controller. The controller has limited bandwidth, so if you put a lot of high bandwidth devices on a single controller, you can experience various bandwidth related issues.
Thankfully it's very easy to fix USB bandwidth issues - simply move your devices to different ports. Microsoft have created a program called USBView which I've modified and posted below which lets you view all your USB controllers and see which devices are connected to which controller. It auto refreshes when a device is added or removed, so you can see exactly which ports on your PC correspond to which USB controller.
Symptoms of USB bandwidth overload
Video frame drops / corrupted video / low FPS
Audio static / crackling / dropouts
Synchronization / timing issues (eg video desyncing from audio)
Unresponsive input devices
PC freezes / crashes / blue screen
- USB devices disconnecting / reconnecting
Download USBView (145 KB) and run it. You should see something like the above. You can see that this system has four USB controllers, two from Renesas and two from Intel and that almost all of the devices are connected to a single Intel controller. If a webcam was added, this system would likely experience issues with all the USB devices being on the same controller. It turns out that the empty Intel controller belongs to the front panel USB ports, so by connecting the webcam there it would not cause any issues.
Some motherboards may come with USB pins that aren't physically connected to anything. If you have a large amount of USB devices, you could buy additional back panel brackets to make use of these additional headers, for example this USB 3 bracket or this USB 2 bracket.
What to move
Look to move these kinds of devices to their own controller, listed in terms of bandwidth (highest to lowest):
Video capture cards
Microphones / headphones / headsets
- Mice / keyboards / other input devices
Not all controllers are created equal
Most motherboards will come with a variety of USB 2 (black) and USB 3 (blue) ports. It's important to know whether the ports are directly controlled by your motherboard chipset (native USB) or provided by a 3rd party add-on chip (eg ASMedia, VIA, NEC, Renesas, etc). Native USB ports will generally give you the best experience with fewer driver issues or other problems. Native ports can be identified by their name - if you have an Intel chipset, look for Intel USB controllers for example. Try to avoid putting high bandwidth devices on 3rd party ports for the best results.
For USB 3 devices, it's especially important that you have up to date USB drivers. Look on your chipset manufacturer's website (eg Intel) for the latest USB drivers for your particular chipset.