I recently found myself on a USB troubleshooting expedition and needed to be able to get a visual image of what device was connected to what USB hub number and port number. I started out by looking at the physical USB ports on the computer and following the cables to the connected device just to get a general overview. With that picture in mind, I was sure that Device Manager would help me pull it all together. Unfortunately, that wasn't the case.

I then remembered seeing USB port information in Windows 7's Devices and Printers tool. And while this tool does provide a great way to identify USB details for the devices connected to a PC and allowed me to specifically identify what device was connected to what port, I still wanted more detailed information about all the USB connections inside the PC.

Sign up for our Windows Desktop Report newsletter!

Better tool

I was sure there had to be a better tool out there and started looking into Microsoft's Windows Sysinternals site, but I didn't immediately see anything that specifically mentioned USB. However, while I was looking through the list of utilities on the Sysinternals site, I recalled a Windows 98 Resource Kit utility called USB Viewer and wondered if Microsoft had ever updated that tool. So I typed USB Viewer in the Bing box and clicked the Search button.

While I did find a link to an old document concerning the Windows 98 USB Viewer utility, I also found a mention of a newer version for Windows XP called USB View. Searching for USB View turned up a discussion in the Windows 7 Hardware Compatibility TechNet forum where someone suggested using Microsoft's USB View as a troubleshooting aid for USB problems in Windows 7. The post also provided a link to download USB View from the Future Technology Devices International Web site.

Now, I've never heard of that company before, and so I was a little leery. Further digging on Microsoft's Web site turned up a detailed description of USB View on MSDN, but it allowed me only to download the C++ code. With this verification that Microsoft had indeed developed a utility by that name, I threw caution to the wind and downloaded USB View utility from the Future Technology Devices International Web site. (It turns out that Future Technology Devices International specializes in USB device solutions and took the time to compile the C++ code and make the USB View executable available for download.) The utility works great in Windows 7 and along with the information from Device Manager and Devices and Printers I was able to compile all the pieces and pull together the picture I needed of my system's USB configuration.

Device Manager

When you access Device Manager and expand the Universal Serial Bus Controllers branch, you see the USB Host Controllers and the USB Root Hubs. I disconnected all the USB devices on my test system to get down to the basics. I then brought up the Properties of the USB Host Controllers and the USB Root Hubs and checked the Location. Figure A shows the Location details provided by Device Manager for the Standard Enhanced PCI to USB Host Controller, which is the driver for the USB 2.0 ports in my test system. The Standard OpenHCD USB Host Controller represents the USB 1.0 driver that Windows 7 makes available for backward compatibility.

Figure A

I disconnected all the USB devices on my test system to get down to the basics.

I reconnected the two external USB Hubs and all the other USB devices and returned to Device Manager. I then accessed the Properties of those devices and checked the Location, as shown in Figure B. However, I still couldn't get a direct correlation as to what was connected where.

Figure B

While Device Manager lists all the connected USB devices, it is still difficult to tell how the devices are connected to the system.

Devices and Printers

Devices and Printers is designed to allow you to easily see what devices are connected to your system. It will also allow you to see how devices are connected to your system. If you access a device's Properties and then select the Hardware tab you can find Location information, as shown in Figure C. While starting with an image of the actual device makes it a bit easier to tell what you are working with, the Location information is vague and I still couldn't get the connection picture that I was after.

Figure C

Devices and Printers can also provide Location information for USB devices.

USB View

When I finally tracked down USB View, I discovered that you can run it right away as there is no installation procedure. Keep in mind that you have to go through Open File Security Warning dialog box first. As soon as you do, the program scans your USB connections and populates its window with a tree view and all the connection details that I was looking for.

For example, looking at the USB View screen shown in Figure D, I can immediately tell that my example system is equipped with 8 USB ports. I also see that the Microsoft Keyboard is connected to Port 1 of a 4-port USB hub that is connected to Port 2 on the computer. I can also tell that the 4-port USB hub is a USB 1.0 device because it is showing up under the Standard OpenHCD USB Host Controller.

Figure D

Microsoft USB View makes it extremely easy to get a complete picture of the USB connections on your system.

I can tell that the Microsoft Mouse is connected to Port 3 of a 4 Port USB hub that is connected to Port 1 on the computer. I can also tell that this 4-port USB hub is a USB 2.0 device because it is showing up under the Standard Enhanced PCI to USB Host Controller. The tree also shows that the printer is connected to Port 3 on the computer and that the external hard drive is connected to Port 4 on the computer.

As you can see, USB View makes it extremely easy to get a complete picture of the USB connections on your system.

What your take?

Now that you know about USB View are you likely to download and use it? As always, if you have comments or information to share about this topic, please take a moment to drop by the TechRepublic Community Forums and let us hear from you.

About Greg Shultz

Greg Shultz is a freelance Technical Writer. Previously, he has worked as Documentation Specialist in the software industry, a Technical Support Specialist in educational industry, and a Technical Journalist in the computer publishing industry.

Full Bio

Greg Shultz is a freelance Technical Writer. Previously, he has worked as Documentation Specialist in the software industry, a Technical Support Specialist in educational industry, and a Technical Journalist in the computer publishing industry.