Ameba USB Solutions

Realtek USB Applications
Ameba USB Solutions

Integrated USB 2.0 with built-in PHY, versatile Host, Device, and OTG applications

Overview

The Ameba series of SoCs integrates USB 2.0 controller with built-in PHY, providing a wide range of solutions for USB Host, Device, and Dual-Role/OTG applications. Supporting various scenarios such as communication, multimedia, storage and human interface devices, their performance, compatibility and reliability have been extensively validated across a multitude of mass-produced customer products.

Ameba USB 2.0 Solution

The table below lists the common USB classes and their support status across the Ameba SDKs. For how each class is implemented on the host and device sides and which SoCs support it, see the corresponding SDK stack section.

USB Class Description Control Transfer Bulk Transfer Interrupt Transfer Isochronous Transfer FreeRTOS Linux Zephyr
CDC ACM Abstract Control Model subclass of CDC, commonly presented as a virtual serial port for transparent data transmission IN/OUT IN/OUT IN (optional) Y Y Y
CDC ECM Ethernet Control Model subclass of CDC, exposing the USB device as a standard Ethernet interface, with one Ethernet frame per transfer IN/OUT IN/OUT IN (optional) Y Y N
CDC NCM Network Control Model subclass of CDC, functionally equivalent to ECM but aggregating multiple Ethernet frames per transfer for higher throughput IN/OUT IN/OUT IN (optional) Y Y N
HID Human interface device class, defining the data format through Report Descriptors and exchanging data through input, output and feature reports IN/OUT IN, OUT (optional) Y Y Y
MSC Mass storage class, accessing storage media through the SCSI command set IN/OUT IN/OUT Y Y Y
UAC Audio class for audio streaming and control, supporting UAC 1.0 (up to 96kHz/24bit) and UAC 2.0 (up to 384kHz/32bit) IN/OUT IN/OUT (optional) Y Y Y
UVC Video class for video streaming and control, supporting compressed formats such as MJPEG, H.264 and H.265, as well as uncompressed formats such as YUV IN/OUT IN (optional) IN Y Y Y
DFU Device Firmware Upgrade class, standardized firmware update over USB IN/OUT Y Y Y
Vendor Vendor-specific class (Class Code 0xFF), with fully customizable protocol, endpoints and data format IN/OUT User-defined User-defined User-defined Y Y Y
Composite Carries multiple function classes over a single USB interface, e.g. a 4G dongle provisioned over CDC ACM while Ethernet frames are carried over CDC ECM IN/OUT Depends on member classes Depends on member classes Depends on member classes Y Y Y

FreeRTOS USB Stack

Independently developed by Realtek, covering every USB-capable SoC of the Ameba series. It comes with a rich set of USB-IF standard classes, a lightweight footprint and a concise API, and has been validated over the long term in many customers' mass-produced products.

Ameba FreeRTOS USB Stack
Rich Features
  • Widest SoC coverage: every USB-capable SoC of the Ameba series can be used
  • Common standard classes all included: CDC ACM/ECM/NCM, DFU, HID, MSC, UAC, UVC
  • Fully customizable device descriptors: VID/PID, strings, interface and endpoint configuration
Lightweight Design
  • Core driver optimized for embedded scenarios, with a small footprint: about 20KB Flash / 3KB RAM on the host side, about 10KB Flash / 1KB RAM on the device side
  • Asynchronous callback-based API, concise and easy to pick up, with lower CPU scheduling overhead and better system real-time behavior
High Reliability
  • Bus errors are detected and retransmitted automatically, keeping data intact
  • Hot-plug supported, with a debouncing design built into the core driver
  • Validated over the long term in many customers' mass-produced products

The FreeRTOS USB stack supports the following USB class drivers and SoCs (Y: supported; N: not implemented yet; N/A: not supported by hardware):

Class RTL8721Dx RTL8730E RTL872xD RTL8721F RTL8735B
CDC ACM Host N/A Y Y Y Y
CDC ACM Device Y Y Y Y Y
CDC ECM Host N/A Y Y Y Y
CDC ECM Device Y Y N Y N
CDC NCM Host N/A Y N Y N
CDC NCM Device Y Y N Y N
DFU Host N/A Y N Y N
DFU Device Y Y N Y N
HID Host N/A Y N Y N
HID Device Y Y Y Y Y
MSC Host N/A Y Y Y Y
MSC Device Y Y Y Y Y
UAC Host N/A Y N Y N
UAC Device Y Y N Y N
UVC Host N/A Y Y Y N
UVC Device N/A N/A N/A N/A Y
Vendor Host N/A Y N Y Y
Vendor Device Y Y N Y Y
Composite Host N/A Y N Y N
Composite Device Y Y Y Y Y

Linux USB Stack

Reuses the Linux kernel native USB framework and is fully compatible with the standard USB ecosystem. Host- and device-side class drivers already integrated in the kernel work out of the box, and the driver layer is optimized for Ameba hardware characteristics, minimizing software development and maintenance costs.

Ameba Linux USB Stack
Ecosystem Compatibility
  • Built on the kernel native USB subsystem: host-side, device-side frameworks and user-space access interfaces are all available
  • Evolves in step with kernel releases, directly picking up community feature enhancements, security fixes and performance optimizations
Comprehensive Features
  • Standard class drivers already in the kernel work out of the box: CDC ACM/ECM/NCM, HID, MSC, UAC, UVC and more
  • Host side accessible directly through libusb; device side customizable through ConfigFS/FunctionFS
Driver Optimization
  • Provides the underlying USB PHY driver, with calibration parameters flexibly configurable via DTS
  • Native controller driver optimized around Ameba USB hardware characteristics for further reliability

The Linux USB stack supports the following USB class drivers and SoCs (Y: supported; N: not implemented yet; N/A: not supported by hardware):

Class RTL8730E
CDC ACM Host Y
CDC ACM Device Y
CDC ECM Host Y
CDC ECM Device Y
CDC NCM Host Y
CDC NCM Device Y
DFU Host Y
DFU Device N
HID Host Y
HID Device Y
MSC Host Y
MSC Device Y
UAC Host Y
UAC Device Y
UVC Host Y
UVC Device Y
Vendor Host Y
Vendor Device Y
Composite Host Y
Composite Device Y

Zephyr USB Stack

Independently developed by Realtek, sharing the same mass-production-validated core driver as the FreeRTOS stack. It fills the USB host-side gap left by native Zephyr, while keeping Zephyr's flexibility of on-demand tailoring and fully customizable descriptors.

Ameba Zephyr USB Stack
Highly Flexible
  • Deeply integrated with the Zephyr build system: modules tailored on demand, firmware footprint under control
  • Fully customizable USB descriptors: VID/PID, device strings, number of interfaces and endpoint configuration
Mature and Stable
  • Shares the same mass-production-validated core driver code with the FreeRTOS stack
  • Engineering maturity on par with the FreeRTOS stack and significantly higher than the Zephyr community native version
  • As a Zephyr member, Realtek keeps feeding improvements back to the community
Rich Features
  • Adds the complete USB host stack that native Zephyr lacks
  • Common standard classes all included: CDC ACM, DFU, HID, MSC, UAC, UVC
  • Composite functions and vendor-specific classes supported, so private protocols can be built quickly on the standard framework

The Zephyr USB stack supports the following USB class drivers and SoCs (Y: supported; N: not implemented yet; N/A: not supported by hardware):

Class RTL8721Dx RTL8730E RTL8721F
CDC ACM Host N/A Y Y
CDC ACM Device Y Y Y
CDC ECM Host N/A N N
CDC ECM Device N N N
CDC NCM Host N/A N N
CDC NCM Device N N N
DFU Host N/A Y Y
DFU Device Y Y Y
HID Host N/A N N
HID Device Y Y Y
MSC Host N/A N N
MSC Device Y Y Y
UAC Host N/A Y Y
UAC Device N N N
UVC Host N/A Y Y
UVC Device N N N
Vendor Host N/A Y Y
Vendor Device Y Y Y
Composite Host N/A Y Y
Composite Device Y Y Y

Typical Applications

  • USB Audio/Video Transmission: Smart door viewers, video doorbells, smart locks, smart surveillance, image capture, smart speakers, etc.
  • USB 4G/Ethernet Communication: IoT gateways, mobile hotspots, ethernet adapters, smart surveillance, etc.
  • USB External Storage: Smart speakers, data acquisition, OTA upgrades, remote file management, smart audio/video, etc.
  • USB Transparent Transmission: Serial communication, custom communication protocols, etc.
  • USB Audio Device: Headphones, microphones, speakers, smart speakers, smart broadcasting, wired and wireless audio applications
  • USB HID Device: Smart remote controls, smart keyboards/mice, gamepads, remote control, human-computer interaction applications
  • USB Storage Device: Reading pens, voice recorders, audio players, wireless storage, etc.
  • USB Transparent Transmission: Serial communication, custom communication protocols, etc.
  • USB Wireless Card: USB wireless network card
  • Wireless CarPlay Adapter: When powered on, it operates in device mode. After completing necessary authentication, it switches to host mode and actively establishes NCM and iAP2 communication with the car head unit to implement CarPlay functionality.
  • Data Acquisition Device: In host mode, connects barcode scanners or sensors (HID/CDC) to acquire field data. When connected to PC, switches to device mode, emulating a serial port or USB flash drive to batch upload collected data to the management system.
  • USB Storage Device: In host mode, accesses external storage media such as USB flash drives. When connected to PC, switches to MSC device mode for convenient file import/export, suitable for smart speakers, smart recorders and other application scenarios.

Development Resources

IconResource NameLink
FreeRTOS SDK Download Link
Linux SDK Download Link
Zephyr SDK Download Link
FreeRTOS USB Development Guide Link
Linux USB Development Guide Link
Zephyr USB Development Guide Link
Ameba USB Application Cases Link
Contact Us Link


Recommended ICs

Features Filter RTL8720F RTL8721F RTL8721Dx RTL8720E RTL8710E RTL8726E RTL8713E RTL8730E RTL872xD RTL8735B
Application
Processor
Cortex-M Cortex-M Cortex-M Cortex-M Cortex-M Cortex-M Cortex-M Cortex-A Cortex-M Cortex-M
DSP
N N N N N Y Y N N N
ISP?
N N N N N N N N N Y
Arm TrustZone
Y Y Y Y N Y N Y Y Y
Dual Band?
N Y Y N N N N Y Y Y
Wi-Fi 6
Y Y N Y Y Y Y Y N N
R-MESH?
Y Y Y N N N N N N N
Ultra-low Power
Y Y Y N N N N N Y Y
Ethernet
N Y N N N N N N N N
BT Dual Mode
N N N N N Y Y Y N N
HMI?
N Y Y Y N Y Y Y N N
Audio ADC?
N N N N N Y Y Y Y Y
Audio DAC?
N N N N N Y Y Y Y Y
SDIO Host
N Y N N N N N N N N
SD/EMMC Host
N Y N N N N N Y Y Y
USB
N Y Y N N N N Y Y Y
BT Dedicated
Antenna?
N N N N N N N Y N N
CAN?
N Y N N N N N N N N


Features RTL8721Dx RTL8730E RTL872xD RTL8721F RTL8735B
High-Speed Mode (480Mbps) N Y Y Y Y
Full-Speed Mode (12Mbps) Y Y Y Y Y
Host Mode N Y Y Y Y
Device Mode Y Y Y Y Y
Dual-Role Mode N Y Y Y Y
Device IN Endpoints 4 4 4 6 4
Device OUT Endpoints 4 4 4 6 4
Host Channels N 8 8 12 8