Skip to content
main
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

X-CUBE-TCPP MCU Firmware Package

X-CUBE-TCPP is an STMicroelectronics original initiative. It uses for USB Type-C and Power Delivery software expansion for STM32Cube (UM2285).

X-CUBE-TCPP is a USB-IF certified Expansion Package (USB Type-C Rev 1.2 and Power Delivery 3.0 with 100 W PPS support) and consists of libraries, drivers, sources, APIs and application examples running on STM32 Series GP microcontrollers embedding Type-C and power delivery management (thanks to the embedded UCPD PHY integrated in STM32G4, STM32G0 and STM32L5).

For the other STM32 GP MCU without embedded UCPD PHY (like STM32L4, STM32F0...), this package demonstrates how to comply with Type-C specification.

All the applications available in this package need to have either the TCPP01-M12 or the TCPP03-M20 integrated.

The TCPP01-M12 (Type-C port protection) is a single chip solution for USB Type-C port protection that facilitates the migration from USB legacy connectors type-A or type-B to USB Type-C connectors. The TCPP03-M20 (Type-C port protection) is a single chip solution for USB Type-C port protection in the context of Dual Role Power applications.

STMicroelectronics package has been certified by USB-IF through the reference TID 3036 and TID 5205.

Check the ST web page : USB Type-C and Power Delivery for more details.

The figure below shows the overall architecture:

Boards available

X-NUCLEO-USBPDM1_NUCLEO-G071

X-NUCLEO-SNK1M1_NUCLEO-G071

X-NUCLEO-DRP1M1_NUCLEO-G071

Applications

Applications Board Shield Short Description
USBPDM1_Sink_PPS NUCLEO-G071RB X-NUCLEO-USBPDM1 Use of USB Power Delivery (USB-PD) Consumer application (with PPS) running on STM32G0XX devices, with X-NUCLEO-USBPDM1 shield plugged.
USBPDM1_Sink_LPM NUCLEO-G071RB X-NUCLEO-USBPDM1 Use of USB Power Delivery (USB-PD) Consumer application (with Low Power Mode) running on STM32G0XX devices, with X-NUCLEO-USBPDM1 shield plugged.
USBPDM1_Sink NUCLEO-G474RE X-NUCLEO-USBPDM1 Use of USB Power Delivery (USB-PD) Consumer application running on STM32G4XX devices, with X-NUCLEO-USBPDM1 shield plugged.
SNK1M1_Sink NUCLEO-G071RB X-NUCLEO-SNK1M1 Use of USB Power Delivery (USB-PD) Consumer application (with PPS) running on STM32G0XX devices, with X-NUCLEO-SNK1M1 shield plugged.
SNK1M1_Sink NUCLEO-G474RE X-NUCLEO-SNK1M1 Use of USB Power Delivery (USB-PD) Consumer application (with PPS and USB MSC cohabitation) running on STM32G4XX devices, with X-NUCLEO-SNK1M1 shield plugged.
SNK1M1_Sink_TypeC_Only NUCLEO-L412RB-P X-NUCLEO-SNK1M1 Use of Type-C Consumer application (with USB MSC enumeration) running on STM32L4XX devices, with X-NUCLEO-SNK1M1 shield plugged.
DRP1M1_DRP NUCLEO-G071RB X-NUCLEO-DRP1M1 Use of USB Power Delivery (USB-PD) DRP application running on STM32G0XX devices, with X-NUCLEO-DRP1M1 shield plugged.
DRP1M1_Sink_PPS NUCLEO-G071RB X-NUCLEO-DRP1M1 Use of USB Power Delivery (USB-PD) Consumer application (with PPS) running on STM32G0XX devices, with X-NUCLEO-DRP1M1 shield plugged.
DRP1M1_DRP NUCLEO-G474RE X-NUCLEO-DRP1M1 Use of USB Power Delivery (USB-PD) DRP application running on STM32G4XX devices, with X-NUCLEO-DRP1M1 shield plugged.

This Expansion Package is demonstrated on one hardware implementation, but can easily be ported to any STM32 including the UCPD periperal.

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V8.50.6 + STLink/V2
  • Keil Microcontroller Development Kit (MDK-ARM) toolchain V5.31 + ST-LINK/V2
  • STM32CubeIDE V1.7.0 + ST-LINK/V2

Included features

  • STM32CubeMonUCPD: Monitoring and configuration software tool for STM32 USB-C and Power Delivery 3.0 applications

Documentation

License and release history

Details about the content of this release are available in the release note here.

Troubleshooting

Caution : The Issues requests are strictly limited to submit problems or suggestions related to the software delivered in this repo

For any question related to this solution, the hardware performance, the hardware characteristics, the tools, the environment, you can submit a topic on the ST Community/STM32 MCUs forum