2022Q1 Update (Part 1): USB System Software

USB software: the big news is our Type C support, supporting dual-role ports with a TCPC.

But there’s a lot more:

Type C Support

This topic really deserves an article on its own… so we wrote two.

Our Type-C software gets your product to market faster, with lower execution risk and lower customer deployment risk, and frees engineering resources to focus on your product’s core technology.

Webcam Reference Design

We have a webcam reference design that’s been delivered to the lead customer: STM32H7, OnSemi camera 720p camera, UVC 1.5, DFU, and our trusted bootloader. This came out of work done with Future Electronics.

This reference design is ideal for projects with long product lives, such as accessories for medical or industrial equipment. By selecting appropriate components, you can take advantage of USB video integrations on popular operating systems, without depending on short-lived consumer products.

The reference software can be licensed from MCCI in source or object form. MCCI can assist with hardware design and component sourcing.

Audio Device Reference Design

We have a similar Audio reference design, including isochronous feedback endpoint. We’re demoing on an STM32F723 Discovery board. The design includes support for Audio Class 1.0 and Audio Class 2.0, as well as HID class for controls, DFU and trusted bootloader.

We also have a CDC ACM reference implementation running on STM32F746.

RTX Integration for Host/Device/Type C

We now have comprehensive integration for our USB host, device, and Type C stack for the RTX operating system for deeply embedded systems. We provide CMSIS wrappers for the USB port, device stack, host stack, and a variety of USB classes. The CDC ACM (host/device) and Silabs CP210x (device) wrappers are fully compatible with the RTX USART driver, and pass the driver regression tests.

We’re working on similar integrations for FreeRTOS; we already have comprehensive integrations for Windows, Linux, Green Hills INTEGRITY OS, and RTEMS.

STM32CubeMX support

We’ve got a working integration with STM32CubeMX IDE that we’re using internally; we plan to release it later in 2022. We’re testing on STM32F723, STM32F746, and STM32H7B3 processors, but we think we can support any STM32 with USB support.

Additional SOC support

We completed USB device support for the Nvidia Tegra Jetson Nano, for the Xilinx UltraScale V2, for the STM32 Telemaco 3P, and for the Faraday FOTG210 and FTPCD210 (in customer ASICs).

We’ll be releasing support for USB host/device on TI AM57xx, AM24xx and AM64xx later in Q1.

If you’re planning to use USB in a new design, and you’d rather let experts worry about the thorny details, contact us via email and one of our engineers will analyze your requirements and suggest ways that we can help.

Leave a Reply