Transparent Communication Host Solution

Overview

The CDC ACM (Abstract Control Model) class, a subclass of the Communication Device Class (CDC), enables transparent communication applications.

SDK provides:

  • Standard CDC ACM host class driver with pipe configurations:

    • 2 control IN/OUT pipes

    • 1 interrupt IN pipe

    • 1 bulk IN pipe

    • 1 bulk OUT pipe

  • Transparent communication application example with features:

Class Driver

CDC ACM host class driver

Application Example

Location: {SDK}/component/example/usb/usbh_cdc_acm

The example defines an USB CDC ACM host, refer to the README.md in the example directory for details.

This example serves as a reference implementation for USB transparent communication host applcations.

Ethernet Communication Host Solution

Overview

The CDC ECM (Ethernet Control Model) class, a subclass of the Communication Device Class (CDC), enables network device connectivity via USB.

SDK provides:

  • Standard CDC ECM host class driver with pipe configurations:

    • 2 control IN/OUT pipes

    • 1 interrupt IN pipe

    • 1 bulk IN pipe

    • 1 bulk OUT pipe

  • CDC ECM host application example with following features:

    • CDC ECM device enumeration and basic communication testing

    • Validates CDC ECM protocol compliance

  • CDC ECM bridge application example with following features:

    • Network packet routing between ECM devices and routers

    • Implements Ethernet frame translation

Class Driver

CDC ECM host class driver

Application Example

SDK provides two CDC ECM host application examples.

CDC ECM Host Example

Location: {SDK}/component/example/usb/usbh_cdc_ecm

The example defines an USB CDC ECM host, refer to the README.md in the example directory for details.

This example serves as a reference implementation for CDC ECM host applcations.

CDC ECM Bridge Example

Location: {SDK}/component/example/usb/usbh_wifi_bridge

The example defines an USB CDC ECM bridge, refer to the README.md in the example directory for details.

This example serves as a reference implementation for CDC ECM bridge applcations.

Mass Storage Host Solution

Overview

The MSC (Mass Storage Class) host provides support for mass storage devices using the SCSI (Small Computer System Interface) command set for data access operations.

SDK provides:

  • Standard MSC host class driver with following features:

    • Supports BOT (Bulk-Only Transport) protocol

    • Pipe configurations:

      • 2 control IN/OUT pipes

      • 1 bulk IN pipe

      • 1 bulk OUT pipe

  • Reference MSC host application example with these features:

    • Supports FAT32-formatted MSC devices

    • Supports basic data access testing with FATFS API

Class Driver

MSC host class driver

Application Example

Location: {SDK}/component/example/usb/usbh_msc

The example defines an USB MSC host, refer to the README.md in the example directory for details.

This example serves as a reference implementation for USB mass storage host applcations.

Video Host Solution

Overview

The UVC (USB Video Class) host enables detection, configuration, and management of UVC-compliant devices (e.g., webcams, video capture cards) for image/video streaming applications including:

  • Surveillance systems

  • Industrial inspection

  • Medical imaging

  • Live video streaming

SDK provides:

  • Standard UVC host class driver with following features:

    • Supports UVC 1.5 High-Speed/Full-Speed devices

    • Supports video formats: MJPEG/YUV420/H.264

    • Configurable resolution and frame rate

    • Maximum throughput: 6 Mbps

    • Pipe configuration:

      • 2 control IN/OUT pipes

      • 1 isochronous IN Pipe

  • UVC host application example with following configurations:

    • CONFIG_USBH_UVC_APP_SIMPLE: Capture frames for performance benchmarking

    • CONFIG_USBH_UVC_APP_VFS: Stores MJPEG/H.264 frames to SD card via VFS

    • CONFIG_USBH_UVC_APP_HTTPC: Streams frames to HTTP server

Class Driver

UVC host class driver

Application Example

Location: {SDK}/component/example/usb/usbh_uvc

The example defines an USB UVC host, refer to the README.md in the example directory for details.

This example serves as a reference implementation for USB video host applcations.

Vendor-Specific Host Solution

Overview

The vendor-specific class and corresponding example provide reference design for USB vendor-specific host applications.

SDK provides:

  • Vendor-specific host class driver with pipe configurations:

    • A pair of control IN/OUT pipes

    • A pair of bulk IN/OUT pipe

    • A pair of interrupt IN/OUT pipe

    • A pair of isochronous IN/OUT pipe

  • Vendor-specific host application example with following features:

Class Driver

Vendor-specific host class driver

Application Example

Location: {SDK}/component/example/usb/usbh_vendor

The example defines an USB vendor-specific host, refer to the README.md in the example directory for details.

This example serves as a reference implementation for USB vendor-specific host applcations.