PassMark USB3.0 Loop back plug FAQ
Last updated: 16/Feb/2017
USB 3.0 Device Drivers and Documentation
Q. Which operating systems are these plugs compatible
The drivers are currently only available for Windows 7, 8, 10 and 2008 Server (in 32bit and 64bit).
Linux with kernel releases 2.6.31 or higher are supported, when used with BurnInTest for Linux v3.1 (or later). libusb 1.0 is also required. (This is standard Linux library supplied with almost all Linux distributions).
Slax Linux (7.0.8) is not supported as it appears there is a possible device driver bug that prevents the USB3 plug from entering loopback mode correctly, other live systems tested (Kubuntu 12.04, Fedora 18, Porteus 3.0.1) do not seem to be affected by the same bug.
Q. Do I need a device driver to use these plugs ?
A device driver is required for Windows. This driver can be downloaded from our web site. Windows will prompt for the device driver the first time a plug is used. The installation process is covered in the install guide. No special device driver is required for Linux
Q. Are the device drivers compatible with all versions of BurnInTest
and USB3Test ?
The latest versions of BurnInTest and USB3Test work with any version of the USB 3.0 Loopback plug device driver, however it is recommended that the latest version be used.
Q. Does the PassMark USB 3 loop back plug appear in
my Device Manager as a new USB Device ?
Yes, you can see the devices in the Windows device manager. They appear with the label, "PassMark USB3.0 Loopback Plug".
Q. Can the plugs also be used on PCs with older USB2.0 ports ?
Yes, but they will not use the additional bandwidth available in 3.0.
Q. How can USB2.0 functionality be tested on USB3.0 ports?
Using USB3Test software it is possible to force USB3 Loopback plug to be enumerated as USB2 High Speed or Full Speed.
Q What is the meaning of the 4 LEDs on the device
Q. Can I run multiple copies of USB3Test at the same time?
Yes you can run multiple instances of the USB3Test application at the same time however you need to make sure you have opened and configured them all them all to be using the correct USB3 plugs before you start the first test. Setting up the test configuration can cause the currently connected plugs to be re-enumerated, which will stop any currently running tests.
Q. Can I run USB3Test at the same time as BurnInTest?
No, only one of these programs should be run when testing the USB3 plugs.
Q. Can the USB3 plugs be used to test bus powered USB
In most cases bus powered USB hubs will draw too much electrical power from the PC's USB ports to support additional USB3 devices being connected into the hub. We recommend using self powered USB hubs when required (self powered hubs come with their own power supply).
Q. I get an error message "This device cannot start
(code 10)" what does this mean?
If a PC's USB port has insufficient power to start the PassMark USB3 loopback plug you will receive a HID device driver error message "This device cannot start (code 10)". Disconnect other devices from the same USB root hub to make more power available for the device. This will typically occur when a USB3 test device is plugged into a bus-powered hub or a laptop running from battery power. Switch over to a self-powered hub or connect the laptop to a mains power supply.
Q. What type of USB data transfer type does the USB
3.0 loopback plug use?
When running BurnInTest, bulk USB transfers are used. Bulk transfers guarantee accuracy of the data through detection of erroneous data and automatic retries. When using USB3Test the loopback plugs can also be setup to use isochronous data transfers.
Q. USB3 plug shows "Fatal Error. Update software and reconnect the plug". What does this error message mean?
It means you are using an old version of the test software (either USB3Test application or BurnInTest). New firmwares are no longer compatible with the old versions of the test softwares. Updating the software will resolve this issue.
Q. The red Error LED goes on. What does this mean?
It means the USB 3.0 loopback plug has flagged a Device transceiver error. Device transceiver errors are triggered when the USB transceiver on the USB 3.0 loopback plug detects what it considers to be an error. These are events at a low level that may lead to the packet being retransmitted. They do not represent data errors at the application level. These errors are normally not visible to the user, but are displayed to help identify potential problems, for example, poor quality cables, cables that are too long, or system internals with insufficient electrical shielding with high electrical interference on the bus. Errors that may cause a device transceiver error are divided into two groups:
Physical layer errors:
- Elastic Buffer Overflow error
- Elastic Buffer Underflow error
- Receive Disparity error
- CRC-5 error
- CRC-16 error
- CRC-32 error
- Training Sequence error
- PHY Lock Loss error
Link layer errors:
- PENDING_HP_TIMER Timeout: Header Packet acknowledgement has not been received by PENDING_HP_TIMEOUT.
[USB 3.0: §18.104.22.168.10, p 7-21]
- Rx Header Sequence Number Error: Received Rx Header Sequence Number does not match what is expected.
[USB 3.0: §22.214.171.124, p 7-28]
- Receive Header Packet Fail: Link Layer Block has failed to receive a Header Packet for three consecutive times. Failures are CRC errors or spurious K-symbols. [USB 3.0: §126.96.36.199, p 7-28]
- Missing LGOOD_n Detection: LGOOD_n Sequence Number does not match what is expected.
[USB 3.0: §7.3.4, p 7-29]
- Missing LCRD_x Detection: LGOOD_n Sequence Number does not match what is expected.
[USB 3.0: §7.3.4, p 7-29]
- CREDIT_HP_TIMER Timeout: Remote Rx Header Buffer Credit has not been received by CREDIT_HP_TIMEOUT.
[USB 3.0: §188.8.131.52.10, p 7-21…7-22]
- PM_LC_TIMER Timeout: This indicates that an LGO_Ux, LAU, or LXU Link Command is missed.
[USB 3.0: §7.3.4, p 7-29]
- ACK Tx Header Sequence Number Error: Received LGOOD_n does not match ACK Tx Header Sequence Number.
[USB 3.0: §7.3.5, p 7-30]
- Header Sequence Number Advertisement PENDING_HP_TIMER Timeout: PENDING_HP_TIMER timeout before receipt of Header Sequence Number LGOOD_n Link Command. [USB 3.0: §7.3.6, p 7-30]
- Header Sequence Number Advertisement HP Received Error: Header Packet received during Header Sequence Number Advertisement. [USB 3.0: §7.3.6, p 7-30]
- Header Sequence Number Advertisement LCRD_x Received Error: LCRD_x Link Command received during Header Sequence Number Advertisement. [USB 3.0: §7.3.6, p 7-30]
- Header Sequence Number Advertisement LGO_Ux Received Error: LGO_Ux Link Command received during Header Sequence Number Advertisement. [USB 3.0: §7.3.6, p 7-30]
- Rx Header Buffer Credit Advertisement CREDIT_HP_TIMER Timeout: CREDIT_HP_TIMER timeout before receipt of LCRD_x Link Command during Rx Header Buffer Credit Advertisement. [USB 3.0: §7.3.7, p 7-30…7-31]
- Rx Header Buffer Credit Advertisement HP Received Error: Header Packet received during Rx Header Buffer Credit Advertisement.
[USB 3.0: §7.3.7, p 7-30…7-31]
- Rx Header Buffer Credit Advertisement LGO_Ux Received Error: LGO_Ux Link Command received during Rx Header Buffer Credit Advertisement. [USB 3.0: §7.3.7, p 7-30…7-31]
For additional details of each error, please refer to the pages referenced of the USB3.0 specification, Revision 1.0
It should be noted that device transceiver errors are not an indication that the USB port does not comply with the USB Specification.
Q. What maximum speed should I expect from my USB port?
USB3.0 Super-speed is normally quoted as 5Gb/Sec. Data rates will never reach these speeds on a real device because of 8b/10b encoding, protocol overhead and host and device latency. In theory, the maximum bandwidth of USB port is limited to the following speeds:
- Super Speed USB3.0 ports connected directly to the motherboard: 3.8Gb/Sec.
- High Speed USB2.0 ports connected directly to the motherboard: 425Mb/Sec.
- Full Speed USB2.0 or USB1.x ports connected directly to the motherboard: 9.7Mb/Sec.
There are also other factors which further decrease the USB port speed in practice:
- Operating system and driver latency: Includes round trip time from application to the device driver and back.
- Host controller performance: USB data throughput also depends on the performance of the USB Host controller. See table 1. Moreover, the throughput with the USB 3.0 add-on cards will be less compared to the built-in USB 3.0 host controllers due to extra latency caused by PCI/PCIe protocol overhead and driver latency.
- Other devices connected: USB can only perform one read/write transfer at a time, which means any other device connected to USB will degrade performance of bulk transfers.
- Additional software protocol overhead: For some USB device classes such as storage devices, there are additional protocol overhead and device specific delays (mass storage, read and write delay of flash chipsets) which impact the performance.
- Error detection and recovering: Sometimes errors are frequent enough or the error recovering is time consuming enough to have an impact on the average performance.
Table 1 and 2 show the result of our test for actual throughput of USB port on different systems using USB3 Loopback plug (Firmware version 2.3). We limited our analysis to a single USB3 loopback plug that is directly attached to the host.
|PC Information||Host Controller||Operating System||Throughput (Mb/s)|
|Intel® Core™ i5-6600K, 3.50 GHz, 16 GB RAM||Intel® USB 3.0 eXtensible Host Controller||Windows 10 64-bit||3472|
|Intel® Core™ i5-4210U, 1.7 GHz, 16 GB RAM||Intel® USB 3.0 eXtensible Host Controller||Windows 10 64-bit||3469|
|Intel® Core™ i5-6600K, 3.50 GHz, 16 GB RAM||Welland UP-314C PCIe USB3 card (Renesas USB 3.0 eXtensible Host Controller)||Windows 10 64-bit||2973|
|AMD A6-3670 APU, 2.70 GHz, 8 GB RAM||AMD USB 3.0 Host Controller (Driver Ver 184.108.40.206)||Windows 7 64-bit||2903|
|AMD A10-7850K Radeon R7, 3.70 GHz, 4 GB RAM||ASMEDIA USB3.0 eXtensible Host Controller (Driver Ver 220.127.116.11)||Windows 10 64-bit||2896|
|Intel Core i5-2540M CPU, 2.60 GHz, 4 GB RAM||NEC Electronics USB 3.0 Host Controller (Driver Ver 18.104.22.168)||Windows 7 64-bit||2401|
Table 1: SuperSpeed USB throughput comparison
|PC Information||Host Controller||Operating System||Full Speed Throughput (Mb/s)||High Speed Throughput (Mb/s)|
|Intel® Core™ i5-6600K, 3.50 GHz, 16 GB RAM||Intel® USB 3.0 eXtensible Host Controller||Windows 10 64-bit||374||9.3|
|Intel® Core™ i5-4210U, 1.7 GHz, 16 GB RAM||Intel® USB 3.0 eXtensible Host Controller||Windows 7 64-bit||374||9.3|
|AMD FX™-8150 Elight-Core 3.6 GHz. 4GB RAM||ASMEDIA USB3.0 eXtensible Host Controller (Driver Ver 22.214.171.124)||Windows 7 64-bit||368||9.3|
|AMD A10-7850K Radeon R7, 3.70 GHz, 4 GB RAM||ASMEDIA USB3.0 eXtensible Host Controller (Driver Ver 126.96.36.199)||Windows 10 64-bit||365||9.2|
|Intel® Core™ i5-6600K, 3.50 GHz, 16 GB RAM||Welland UP-314C PCIe USB3 card (Renesas USB 3.0 eXtensible Host Controller)||Windows 10 64-bit||330||8.4|
Table 2: High Speed and Full Speed USB throughput comparison
Q. I'm getting frequent errors in benchmark mode with USB3Test
We have observed many errors can occur on front panel ports, particularly in benchmark mode, the errors messages that can be logged include;
- Test Stopped due to Error: Benchmark write failed (31)
- USB device driver error reported: 0xc0000001
- USB request status reported: 0xc0000011
These errors will often cause the USB3 loopback plug to disconnect/reconnect. Testing the back panel ports on the same machine does not show any similair errors which seem to indicates that the front port panels have inferior wiring and shielding in place, very similar to the USB2 issues that could occur on front panel ports.
Q. "Device not recognised" error displayed after power on with USB3 attached.
We have seen some cases where if the system is powered on with the USB3 plug attached then Windows will display a "Device not recognised" error and the USB3 plug may only display that it is connected at USB2 speed (480Mb/s).
In BIOS there is often a “xHCI mode” BIOS setting. Sometimes this is also called a "xHCI Pre-Boot Driver". This option controls if the physical USB3 ports are handled via the USB2.0 EHCI controller or the xHCI USB3.0 controller. In particular having it set to “Auto”, “Smart Auto” or EHCI can cause a problem for the USB3.0 loopback plugs on a few motherboards. Auto which will emulate a USB2 port during the boot process until the USB3 driver is loaded once Windows starts. This can cause the plug to connect first at 480Mb/s and not refresh the display correctly when the link changes to 5Gb/s.
In our testing we saw the USB3 test would still run correctly and at 5Gb/s but the display could still indicate 480Mb/s, but it has been reported that in some cases the device will remain as "unrecognised" and require disconnected and reconnected in order to work.
If you have a problem, we would recommend changing the "xHCI Pre-Boot Driver" to Enabled and xHCI mode to "Enabled" rather than any “Auto” setting for testing purposes. We suspect the underlying cause is a BIOS bug in the effected motherboards & this workaround avoids the bug.
However there are also other cases of buggy BIOS implementations causing USB3 devices not be recognised, while in xHCI mode, unless they are plugged in when the machine is powered on. A BIOS update is required in this case.
Q. My USB3 device is becoming disconnected or not enumerating at SuperSpeed (5Gb/s) during a resume from a sleep or hibernate.
Currently there are some known issues with the Intel Haswell product line as mentioned here and here. Although Intel have indicated it is only an issue with USB3 thumb drives we have had at least one report on a Haswell system where the PassMark USB3 plugs would not return from a sleep/hibernation at SuperSpeed. We will be monitoring this situation and updating this entry when we know more about the causes and any available solution.
Q. "I'm getting Benchmark read/write failed or blue screen errors in isochronous mode when device enumerated as Full Speed or High Speed.
Some USB 3.0 host controllers / drivers seem to have significant problems with USB 2.0 isochronous transfers. Updating BIOS and host controller driver sometimes fix this issue.
Q. Is there an Application Programming Interface available?
Yes there is an API available, see this page for more information.
Q.Does USB3 Loopback plug incorporate ESD and overvoltage protection circuits?
USB3 Loopback plug is both positive and negative overvoltage protected. However, it is not designed to be exposed to repeated high voltage spikes. The protection components degrade with ESD events and therefore prolong exposure to ESD events could eventually damage the plug.
- Overvoltage Protection up to 28 V
- Negative Voltage Protection down to -28 V
USB3 Lines (SSTx-, SSTx+, SSRx-, SSRx+) are ESD protected as per IEC61000-4-2 standard
- ± 20kV contact discharge
- ± 20kV air discharge
There is no external protection over USB2 lines (D+ and D-), however the Cypress microcontroller that is used in the plug has some internal protection on the D+, D–, and GND pins on the USB interface. The ESD protection levels provided on these ports are:
- ± 6kV contact discharge and ±8-kV air gap discharge basedon IEC61000-4-2 level 3A
- ± 8kV contact discharge and ±15-kV air gap discharge based on IEC61000-4-2 level 4C