USB Enumeration Stress (Win7)
This test verifies the functionality of a USB device when it is initially attached to a USB port. To correctly enumerate in the Windows environment, a device must consistently provide valid information on its control pipe and correctly respond to all standard device requests. This test repeats the enumeration process to make sure that a device enumerates reliably in real-world scenarios. This test covers only USB peripheral devices and hubs.
Test details
Associated requirements |
Device.Connectivity.UsbDevices.CompliesWithChap9 |
Platforms |
Windows 7 (x64) Windows 7 (x86) Windows Server 2008 R2 (x64) |
Expected run time |
~6 minutes |
Categories |
Certification |
Type |
Automated |
Running the test
Before you run the test, complete the test setup as described in the test requirements: USB Device.Connectivity Testing Prerequisites.
In addition, this test requires the following software and hardware:
System with an exposed USB 2.0 port
One USB-IF–certified USB 2.0 hub to connect the system and the test USB device
The system that you use for this test must have an available root-hub port. If you will run the test on a system in which the keyboard and mouse are attached via USB, and the system supports more than one root hub, you should connect these devices on one of the other root hubs. If the system has only one root hub, you must attach all other devices downstream of a secondary root-hub port.
Troubleshooting
For troubleshooting information, see Troubleshooting Device.Connectivity Testing.
The test fails if either of the following occurs:
The device under test does not correctly handle any standard device request.
Any standard device request does not meet the response-time requirements as defined in the USB specification.
More information
While the test runs, any devices that are connected to other ports on the same root hub might become temporarily unusable.
The test includes the following parts:
Initialization
Enumeration test (repeat n times) with no string descriptor support
Enumeration test (repeat n times) with string descriptor support
Initialization
Gather the following initial information:
Device descriptor
Configuration descriptor
String descriptors (if the device and the test support them)
Enumeration test (repeat n times) with no string descriptor support
Reset the device port.
Get the device descriptor (first MPS with wLength value of FF).
Reset the device port.
Get the device descriptor (full descriptor).
Set the address (address not in use).
Get the configuration descriptor.
Compare the device and configuration descriptors to the initial ones.
Set the configuration to configuration 0.
Enumeration test (repeat n times) with string descriptor support
Reset the device port.
Get the device descriptor (first MPS with wLength value of FF).
Reset the device port.
Get the device descriptor (full descriptor).
Set the address (address not in use).
Get the configuration descriptor.
Compare the device and configuration descriptors to the initial ones.
Set the configuration to configuration 0.