Pages

Selasa, 01 Mei 2012

More troubleshooting with Microsoft USB View and other USB utilities

Takeaway: Greg Shultz takes a closer look at USB troubleshooting and answers questions raised by readers.

Very soon after my recent blog post, “Map and Troubleshoot Your USB Ports with Microsoft USB View,” was published, the associated discussion took off with all sorts of comments, concerns, questions, and suggestions for additional USB utilities, as well as a couple of wiseacre remarks. While I posted answers and suggestions in the discussion area, I found myself wanting to write more than just a brief comment. I thought that with so much interest in the topic, I would write a follow-up article and expand on my answers, share additional information, and clear up any potential confusion.
Oh, and before I get started, I’m not joking. ;-)

Automatically sign up for our Windows Desktop Report newsletter!

USB View 64-bit support

Some of you expressed concern about Microsoft USB View working in the 64-bit versions of Windows 7. I know that a lot of utilities, such as Nirsoft USBDeview, come in both 32-bit and 64-bit versions. However, there is only one version of the USB View utility, and it runs fine on both 32-bit and 64-bit versions of Windows 7. (I no longer have a 64-bit version of Windows XP, so I can’t vouch for that, but it runs fine in 32-bit Windows XP.)
In fact, the system on which I ran USB View for my tests and screen captures is running Windows 7 Ultimate 64-bit on an AMD 64-bit Dual Core Processor, and I had no problems whatsoever. USB View is a standalone executable file that doesn’t patch into the operating system in any functional way other than to reveal the details of the system’s USB hardware. As such, I wouldn’t think that there would be any problems specifically related the bit version of the operating system.
In fact, according to Microsoft’s 32-bit and 64-bit Windows: frequently asked questions:
The terms 32-bit and 64-bit refer to the way a computer’s processor (also called a CPU) handles information. The 64-bit version of Windows handles large amounts of random access memory (RAM) more effectively than a 32-bit system.
And
Most programs designed for the 32-bit version of Windows will work on the 64-bit version of Windows. Notable exceptions are many antivirus programs.

Device Manager

Someone noted that Device Manager’s Devices by Connection view has some of the functionality of Microsoft USB View utility. And, I must admit that to a great degree it does. To be fair, I really should have shown the Devices by Connection view in the original article. However, for my troubleshooting expedition, I really wanted to be able to see connections by port number, and as you can see in Figure A, while Device Manager’s tree view is much prettier, you don’t get as much connection detail as you do with the USB View utility.

Figure A

When you compare Device Manager’s Devices by Connection view alongside USB View, you can immediately see the difference in the level of detail.
For instance, in both you can see that two generic USB Hubs are present, but in USB View you can see that each are 4-port hub and you can see what port on each hub has a device connected to it.

NirSoft USBDeview

If you have read some of my previous posts about the NirSoft utilities (ShellMenuView and ShellExView, OpenWithView, and ShellMenuNew) you know that I highly recommend tools from NirSoft. However, in the case of my troubleshooting expedition, NirSoft’s USBDeview wasn’t useful because it really doesn’t show any sort of connection detail, as you can see in Figure B. Now don’t get me wrong, USBDeview is an awesome tool, but it just doesn’t show you the connection map like USB View does.

Figure B

NirSoft’s USBDeview doesn’t show any sort of connection detail.

USB 1.x vs. USB 2.x

Several folks wondered about identifying devices by USB version numbers, and while I touched on it in last week’s blog post, it may not have been clear to all who read it. Device Manager and USB View both show two main branches in the tree:
  • Standard Enhanced PCI to USB Host Controller, and
  • Standard OpenHCD USB Host Controller
These main branches indicate the USB drivers that Windows 7 installs rather than actual hardware ports. The Standard Enhanced PCI to USB Host Controller branch represents the driver for the USB 2.0 devices, and the Standard OpenHCD USB Host Controller branch represents the driver for the USB 1.x devices.
If you have any USB 1.x devices connected directly to your system, you will see them appear under the Standard OpenHCD USB Host Controller branch. If you don’t have any USB 1.x devices connected directly to your system, the Standard OpenHCD USB Host Controller branch will be empty. Any USB 2.0 devices that are connected to your system will appear under the Standard Enhanced PCI to USB Host Controller branch.
However, there are some caveats to this, and they revolve around external Hubs. If you have a USB 1.x Hub and then connect a USB 2.0 device to it, both will show up under the Standard OpenHCD USB Host Controller branch. If you have a USB 2.0 Hub and then connect a USB 1.x device to it, both will show up under the Standard Enhanced PCI to USB Host Controller branch.
The best way to identify devices by USB version numbers is with NirSoft’s USBDeview. See I told you that it was an awesome tool!
Once you have USBDeview up and running (you can run it right away as there is no installation procedure), just locate the device you are interested in and double-click. When you do, you’ll see a detailed Properties dialog box, like the one shown in Figure C, and will be able to tell what USB version the device is.

Figure C

USBDeview will allow you to identify the USB version of your devices.

USB 3.0

If your system has USB 3.0 ports in it, you will see a branch in Device Manager/USB View that is titled Extensible Host Controller Interface (xHCI). If you have any USB 3.0 devices connected directly to your system, you will see them appear under the Extensible Host Controller Interface (xHCI) branch. Again, USBDeview will easily identify what USB version a device is.