# x-cube-ucsi **Repository Path**: mirrors_STMicroelectronics/x-cube-ucsi ## Basic Information - **Project Name**: x-cube-ucsi - **Description**: X-CUBE-UCSI is an STM32 expansion SW to manage USB Type-C connector for an MPU using standardized UCSI protocol - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-06-16 - **Last Updated**: 2026-05-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # __X-CUBE-UCSI Firmware Package__ ![latest tag](https://img.shields.io/github/v/tag/STMicroelectronics/x-cube-ucsi.svg?color=brightgreen) ## __Description__ **X-CUBE-UCSI** is an STMicroelectronics original initiative. It uses for USB Type-C and Power Delivery software expansion for STM32Cube ([UM2285](https://www.st.com/resource/en/user_manual/dm00432311-development-guidelines-for-stm32cube-expansion-packages-stmicroelectronics.pdf)). **X-CUBE-UCSI** package consists of libraries, drivers, sources, APIs, and application example running on STM32G0 32-bit microcontroller acting as an **UCSI** (USB Type-CTM Connector System Software Interface) **Platform Policy Manager** (**PPM**) on the **STM32MP135F-DK board**. The PPM is a combination of hardware and firmware that manages the USB Type-C connectors on the platform. The **STM32MP13** has a role of **UCSI OS Policy Manager** (**OPM**) to interface with the PPM, via **I2C** with the **UCSI interface**. This application also features the **TCPP02-M18/TCPP03-M20 USB Type-C port protection** device. To discover all the MCU-based solutions for USB Type-C™ and Power Delivery technology, go to the landing page https://www.st.com/content/st_com/en/stm32-usb-c.html. The figure below shows the overall architecture: ![](Documentation/Architecture_STM32MP135_STM32G0.jpg) ## __How to use it?__ ### __Boards available__ * STM32MP135F-DK ### __Applications__ | Applications | Board | MCU | Short Description | |--------------------|---------------|----------------------------|------------------------------| | [UCSI_DRP](./Projects/STM32MP135F-DK/Applications/USB_PD/UCSI_DRP)| STM32MP135F-DK | STM32G071G8|Use of USB Power Delivery (USB-PD) Dual role application running on STM32G0XX devices.| This Expansion Package is demonstrated on one hardware implementation, but can easily be ported to any STM32 including the UCPD peripheral. ### __Development Toolchains and Compilers__ - IAR Embedded Workbench for ARM (EWARM) toolchain V8.50.6 + ST-Link - RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.32 + ST-Link - STM32CubeIDE [V1.9.0](https://www.st.com/en/development-tools/stm32cubeide.html) + ST-Link ### __Included features__ * [STM32CubeMonUCPD](https://www.st.com/en/development-tools/stm32cubemonucpd.html): Monitoring and configuration software tool for STM32 USB-C and Power Delivery 3.0 applications ### __Documentation__ * Application Note [AN5225 : USB Type-C™ Power Delivery using STM32xx Series MCUs and STM32xxx Series MPUs](https://www.st.com/resource/en/application_note/dm00536349-usb-typec-power-delivery-using-stm32xx-series-mcus-and-stm32xxx-series-mpus-stmicroelectronics.pdf) * User manual [UM2552 : Managing USB power delivery stack with STM32 microcontrollers](https://www.st.com/resource/en/user_manual/dm00598101-managing-usb-power-delivery-systems-with-stm32-microcontrollers-stmicroelectronics.pdf) * **Wiki** to create a simple sink application from STM32CubeMX: [STM32 Advance USB-Power Delivery Sink](https://wiki.st.com/stm32mcu/wiki/STM32StepByStep:Getting_started_with_USB-Power_Delivery_Sink) * **Wiki** to create a simple source application from STM32CubeMX: [STM32 Advance USB-Power Delivery Source](https://wiki.st.com/stm32mcu/wiki/STM32StepByStep:Getting_started_with_USB-Power_Delivery_Source) * An application note to create a simple application from STM32CubeMX is available at this link : [AN5418](https://www.st.com/resource/en/application_note/dm00663511-how-to-build-a-simple-usbpd-sink-application-with-stm32cubemx-stmicroelectronics.pdf) * Corresponding video [here](https://www.youtube.com/watch?v=-vsJhNIaHxE&feature=youtu.be) ## __Tests__ STMicroelectronics package has been certified by USB-IF through the reference [TID 3036](https://cms.usb.org/usb/cms/device/40004) and [TID 5205](https://cms.usb.org/usb_device/certificate/42552). ## __Contributing__ STM32 customers and users who want to contribute to this component can follow instructions provided in the [CONTRIBUTING](CONTRIBUTING.md) guide. ## __Keywords__ USB-PD, Power Delivery, USB Type-C, UCSI, STM32, STM32G0, MPU, STM32MP13 ## __Release note__ Details about the content of this release are available in the release note [here](https://htmlpreview.github.io/?https://github.com/STMicroelectronics/x-cube-ucsi/blob/main/Release_Notes.html).