USB-IF Compliance Workshops are typically held at hotels. There are many advantages for holding a compliance workshop at a hotel:
- Hotels are considered neutral territory.
- Almost any city in the world can be selected to host the workshop
- A hotel can be selected near mass transit (airports, trains, highways, etc)
- Convenient setting for vendors from remote locations (onsite sleeping, restaurants, meeting rooms, and other amenities)
- The ability to place testing in a private hotel room increases confidentiality of the test
- Easy opportunity to hold scheduled and impromptu meetings
Compliance testing at workshops is divided into logical groups, each logical group is placed into a hotel room or "suite." For example, testing of electrical characteristics is performed in one suite; whereas, interoperability is performed in another suite. Vendors attending a workshop are rotated through each of the required suites to have their product tested.
Vendors have an option to host their own test suites at workshops so that their products can be tested with products of other attending vendors. These are called stationary suites.
The USB-IF requires any product with an exposed downstream port to host a stationary suite so that it can be tested with a variety peripherals.
Stationary Suite Test Methodologies for USB Hosts
The following information is collected when hosting a stationary suite:
Silicon make, model, revision:
Description of what the product is, including its interfaces (functions):
The following describes the minimum tests requirements. Vendors are free to test beyond the minimum required.
Downstream Port Functionality
- Software Install
- System Suspend
- System Hibernate
- Remove the device while suspended (active/inactive suspends), then resume the system.
- Do a topology change while suspended (active/inactive), then resume
- Attach the device while suspended, then resume the system.
- Detach the device while it is actively operating
- Test the device at the root port, including boots and suspend/resumes
- Test the device at every hub tier level (1 through 5)
- Test with multiple instances of the same device (critical for devices that do not use a class driver or have no serial numbers)
- If device uses batteries, test with dead battery
- If self-powered, attempt to use the device under bus-power. Acceptable responses are:
If self-powered, turn off the device while leaving it attached to the bus. Acceptable responses are:
- The device fails to enumerate
- The device enumerates as a bus-powered device and operates within bMaxPower
Have the device attached to the bus before powering the device on.
Have the device powered on before attaching it to the bus.
Attach and detach the device while other USB devices are operating.
Attach and detach other USB devices while the DUT is operating.
Captive cables that are detachable at the device end should be disconnected and connected at the device in addition to being disconnected and connected at the series-A plug.
If the USB host has muliple downstream ports, attach a full-speed hub to the second downstream port and attempt to transfer data between the primary port and the second port. For example, transfer a file between two mass storage devices.
- The device disconnects
- The device re-enumerates as a bus-powered device and operates within bMaxPower