USBCV
USB 2.0 Specification
Chapter 9
When testing a USB device or hub you should at least test USBCV. It
will automatically test the device framework and
descriptor. USBCV is free of charge and is a very easy to use
application so there is nothing from stopping
you running these tests. There is a USB20CV
and a USB30CV
available on the USB.ORG that is updated on a regular
base. Read the installation guide carefully before you start
testing.
Here some common failures:
Not using a hub with
port power switching
When running the USBCV Chapter 9 test it's
mandatory to use hubs that switch their Vbus.
http://compliance.usb.org/index.asp?UpdateFile=USBCV&Format=Standard#20
It is however very hard to get hold of these hub there now a days most
hubs keep Vbus on at all times.
When using these kind of hubs it will add an additional test
to USBCV. It will test if a device can
connect within 1 second after Vbus is on.
This test cannot be done when using a hub that has Vbus always on. It
is a common failure for many devices that they are unable to connect
within this 1 second so be sure it's tested.
The bcdUSB field must be 2.0
not 1.1
A common mistake is that people assume that USB 1.1 stand for full and
low speed and USB 2.0 for high speed only. This is not true
there the USB 2.0 specification includes low, full and high speed. So
also low and full speed are USB 2.0 and therefore
the bcdUSB field must be 2.0 also for those products not
1.1.
Run
the USBCV Class tests
If a device is MSC, HID, OTG, UVC, HUB run
also the appropriate tests within USBCV,
USB
2.0 device should also pass USB30CV
On top of
passing USB20CV a USB 2.0 device must also pass USB30CV.
Use the VID of your company and not the one of your USB silicon provider.