Skip to content

USB Compliance Verification Test Suite (USBCV) #1059

Open
@hathach

Description

@hathach

What is this issue for

The test suite include many corner cases which require both update of usbd and dcd to pass. This issue is used to keep track of current status of compliance test of tinyusb device stack on each DCD ports. Once it is all passed, we could close this.

What is USB Compliance Verification (USBCV)

USBCV is test suite tool used by usb-if to verify all usb hardware/software/controller which is required to passed in order to have USB logo on the product. https://www.usb.org/compliancetools . It is a good stress test with unusual case such as switching configuration 0 -> 1 -> 0, suspend/resume/remote-wakeup. Enumeration 150 times in a row as well as weird case like MSC READ10 with direction bit set to output etc ...

How to run USBCV

usbcv tool only runs on windows , depending on usb controller type on your PC you will need to either download the USB3CV (xHCI) or USB2CV (EHCI) from https://www.usb.org/compliancetools . Note: even your mcu is only full speed, but testing on xHCI host, you would need to run USB3CV.

Which tests suite to run

Within the scope of tinyusb device stack, we only need to run follow test suite

  • Chapter 9 Test [USB 2 devices]
  • HID Tests
  • MSC Tests

usbcv

Compliance Status

Example/Application can have large impact on the test result, the follow result is tested mostly with cdc_msc and hid_composite

MCU \ Test Suite Chapter9 HID MSC
nRF52840 ✔️ ✔️ ✔️
SAMD 21/51 ✔️ ✔️ ✔️
RP2040 ✔️ ✔️ ✔️
STM32F4 ✔️ ✔️ ✔️
Renesas RX ✔️ ✔️ ✔️
iMXRT ✔️ ✔️ ✔️
ESP32-S2/3 ✔️ ✔️ ✔️
Kinetic KL25/32 ✔️ ✔️ ✔️
DA146x ✔️ ✔️ ✔️
NUC 12x ✔️

Metadata

Metadata

Assignees

No one assigned

    Projects

    Status

    🆕 New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions