USB-C & power from STM32-based design

June 10, 2016 // By Graham Prophet
STMicroelectronics has a certified embedded software solution based on its STM32 MCUs. The free STM32 USB-C and PD Middleware Stack is compliant with USB Type-C 1.2 and USB Power Delivery 2.0 specifications, allowing rapidly deployment into end-products.

The new firmware stack, X-CUBE-USB-PD, initially based on the STM32F0 entry level Cortex-M0 processor, allows designers to upgrade their USB legacy devices to provide significant benefits to their end users. A benefit in terms of cost and PCB footprint is that solutions using the STM32 with the stack require only a very simple Analogue Front End comprising a few passive components, because it fully exploits STM32 embedded features such as comparators, ADCs, timers, and Direct Memory Access. Other features include;

Support for up to two USB-C ports (provider, consumer, or dual role);

Cable-insertion detection, plug orientation;

Identification of the role of the port partner attached and its current capability;

Vbus Power negotiation via Power Delivery communication protocol;

Vendor-Defined Messages are handled to identify device or cable ID or to manage Alternate Mode commands;

Maximum flexibility and adaptability versus evolving specification changes, as firmware upgrades are possible during the application lifetime;

The processing bandwidth and available resources allow the MCU to perform other application-specific tasks, such as power-management control, USB2.0 communication, and/or voltage and current monitoring, on top of its USB-C functionality;

Software library provided in the X-CUBE-USB-PD software expansion is fully in line with STM32Cube APIs (HAL - Hardware Abstraction Layer), ensuring easy switch across different STM32 series.


ST supports the new USB-C technology with an STM32 Nucleo Pack as a discovery and development tool to minimize design effort. The pack includes a NUCLEO-F072RB board, a USB-C and PD expansion board, and a full-featured USB Type-C cable. The expansion board features two Dual-Role Power USB Type-C ports with a discrete Analogue Front End. The STM32F0 USB-C and PD Nucleo Pack ( P-NUCLEO-USB001) costs $49.90.