Mapping Out USB Ports

In attempting to fix erratic mouse behavior on my production desktop, I discovered the need to visualize what USB devices were connected to which ports on my PC. I also wanted to make sure I had USB 2.0 devices connected to USB 2.0-capable ports and hubs, while I was looking into these matters.

To those ends, I tried to run down a reasonably capable but free USB inspection or reporting tool that could tell me what was what on my PC. Ultimately, I wound up with USBView, a simple but effective Microsoft-made utility.

One interesting thing about this task was how to search for what I wanted. “USB scanner” didn’t do it, nor did “USB mapper,” “USB diagnostics,” or “USB ports.” After flailing about for a while, I went to visit a familiar USB Website I turn to from time to time, EveryThingUSB. They recommended a tool called USBinfo, but all the links I could find to the program (especially the latest version, 2.0) were defunct (though I did find a working link to a Version 1.2 download). I also discovered a USB sniffing tool from HHD Software called USB Monitor Lite, for which a free trial download is available (it’s only good for 14 days, after which the buy-in is $40). I also found a nice-looking utility from Nirsoft called USBDeview but it wouldn’t work properly on my PC, and appeared to cause the very kind of erratic mouse behavior that had prompted me to search for such a tool in the first place!

But once I had some program names and looked at what they called themselves, and how they described themselves, my search terms became more relevant to the actual tools and utilities out there in cyberspace. In fact, a search on “USB utilities” proved most useful, and led me to the site where I discovered Microsoft USBView.

USBView lists the hierarchy of USB devices present on your PC. If you haven’t added a bus-attached USB controller to your system, it lists all of the USB Universal Host Controllers (UHCs) on your motherboard at the top of the hierarchy, followed by the USB root hubs attached to the host controllers. If you do have one or more additional USB controllers, you’ll see extra entires at the top two levels of the hierarchy. At the next level down, you’ll see either Port numbers or any secondary hubs that you may have attached to USB ports on your PC or notebook computer. At each level in the hierarchy, any device you highlight in USBView’s left pane displays its properties in the right pane for inspection. Clicking on any Port to which a “Device connected” notification attaches will usually permit you to identify that device by looking at its associated property values.

USBViewImage of USBView
The usual hierarchy is UHC => Root Hub => (Optional) Hub => Port => Device

For my SuperTalent Pico 8GB Flash drive, however, I had to identify it by process of elimination because USBView failed to resolve its vendor ID. All of the other devices were identifiable by type and by vendor in the properties information pane. As it happens, the Pico’s vendor ID resolves to the chip maker’s name for the Flash RAM it contains, rather than the device builder’s name anyway, as I discovered thanks to a handy unofficial list of USB vendor IDs. When in doubt, I also discovered, you can always remove or insert a device to change your configuration, or do both, to conclusively identify any particular USB device anyway.

For others who are incurably curious about what’s on and in their PC’s, or those who must deal with USB problems, some or all of the utilities mentioned here may come in handy. For me, USBView was just what I wanted, so it was the only one to remain resident on my machine.

[notice]Note: USBInfo 1.2  and 2.0 Incompatible with Vista[/notice]

Just for grins, I decided to install USBInfo version 1.2 on my Vista machine to see how it compared to Microsoft’s USBView. I’ll never know, because the program is incompatible with Vista. It uses several obsolete and deprecated DLLs, some of which are no longer available in Vista, and some of which provoke a “contact Microsoft for more information” warning when the program goes looking for them (most notably msvbm50.dll, which dates all the way back to the Visual Basic 5.0 era).Though there are sources for such things online, I decided to forgo this dubious privilege and immediately used Revo Uninstall to get the program back off my machine, with no apparent ill effects. I also found a download for version 2.0 at through mirror 6 or 7, but it too suffered from exactly the same problems. My advice: don’t bother with this software on a Vista system!


Leave a Reply

Your email address will not be published. Required fields are marked *