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.