Verifying USB connection speed (USB 3 or USB 2?)

Solution 1:

Another way to check whether you are using a USB 3.0 connection or not is to use USBView.exe from Windows Driver Kit (WDK)

You could also use USB Device Tree Viewer, which is very similar to USBView.exe and you won't have to download the huge WDK to use it.

USB Device Tree Viewer

When you run USB Device Tree Viewer, you'll see a list of USB Host Controllers (there are 3 on my notebook). You could cycle through each port of the USB Root Hubs attached to these controllers to see what's connected to that port. You'll find that each USB device connected to your computer (mouse, WiFi or Bluetooth adapter, webcam, etc.) show up on one of those ports.

Detach all flash drives and external hard disks from your computer and look for a USB controller that has no devices attached to any of its ports (on my computer, it is USB xHCI Compliant Host Controller). Now attach a flash drive or external HDD that you wish to test and you'll notice that it is connected to one of the ports of the USB Root Hub attached to that controller.

If you attached a flash drive, it would show up as:

USB Mass Storage Device - [ASSIGNED_DRIVELETTER]

Click on it and look for the Connection Information section on the information pane to the right.

USB Device Tree Viewer - USB Connection Mode

If the device is connected in USB 3.0 SuperSpeed mode, it will show:

Device Bus Speed         : 0x03 (SuperSpeed)

For USB 2.0, it will show:

Device Bus Speed         : 0x02 (High-Speed)

For USB 1.1, it will show:

Device Bus Speed         : 0x01 (Full-Speed)

Besides this, there are also several other methods that are explained in great detail here

Solution 2:

The short answer is there's no way, from an end-user POV, to conclusively test because you'd need visibility to the internal bus to measure the effective transfer rate. The suggestion to measure the actual throughput as seen from your terminal devices is the next best alternative.

However, you should check to see that your laptop (Windows device) actually classifies the USB 3.0 connection as a "super" data rate capable connection.

There are four USB specs: 1.0, 1.1, 2.0, and 3.0. But to confuse things, each USB spec has more than one data rate assigned to it. Those rates are "low", "full", "high", and "super."

Therefore, benchmarking data throughput solely on speed is not necessarily conclusive as to what the actual spec being used. Thus, a USB 3.0 port may not be actually running at a "super" rating but at a "High" rating instead.

On a Windows machine, check the data rating of the USB root/hub - Goto: Device Manager --> USB Controllers --> USB Root Hub (Right Click) --> Properties --> Advanced (Tab).

It should tell you the data rating for the USB hub/port. Once you know that, you'll know the maximum throughput from the computer's POV.

Low = 1.5 Mbps Full = 12 Mbps High = 480 Mbps Super = 5 Gbps

For other people reading this - then there's the actual transfer rate of the two devices (assuming point-to-point) that are communicating. For example, transferring something at USB 3.0/Super is going to be a tough between two endpoints comprised of 5400 RPM PATA drives.

Solution 3:

If you still have the problem with poor data-transfer rates on Toshiba's USB 3.0 port(s) (in my case), just disable USB Legacy Emulation in BIOS. Even if the USB 3.0 controller is enabled in BIOS, the user always will get maximum 33-34MB/s against 77-85MB/s when legacy mode is off.

This solution probably will work on other brands with USB legacy devices support in their BIOS.

Update Personally found that there is another cause for slow USB3.0 transfer. The problem was in iusb3mon.exe - this monitoring app just did nothing but slowing the speed 2 times and more importantly stopped every Windows Backup of system drive/volume with 0x8007045D error during copy time! Everything returned to normal when I disabled the process

Update 2 Another problem are the cables and connectors. Pick a good quality ones - transfer rates tend to drop or fluctuate a lot due to loose connection between the cable connector and the socket! Also some cables are made with low quality copper wires (not enough copper or unknown alloy), improperly twisted in pairs or poorly soldered with the connector!