STM32 USB Type-C Power Delivery
“
Specifications:
- Model: TN1592
- Revision: 1
- Date: June 2025
- Manufacturer: STMicroelectronics
Product Information:
The STM32 Power Delivery controller and protection module
provides advanced features for managing USB Power Delivery (PD) and
charging scenarios. It supports various standards and features to
enable efficient power delivery and data transfer over USB
connections.
Product Usage Instructions:
Data Transfer Features:
The product supports data transfer features for efficient
communication over USB connections.
VDM UCPD Module Usage:
The VDM UCPD module provides practical usage for managing
voltage and current parameters over USB connections.
STM32CubeMX Configuration:
Configure STM32CubeMX with specific parameters available in the
documentations, including a quick reference table in AN5418.
Maximum Output Current:
The maximum output current of the USB interface can be found in
the product specifications.
Dual-Role Mode:
The Dual-Role Port (DRP) feature allows the product to act as a
power source or sink, commonly used in battery-powered devices.
FAQ:
Q: Is X-CUBE-TCPP required when using X-NUCLEO-SNK1M1
shield?
A: X-CUBE-TCPP may be used optionally with X-NUCLEO-SNK1M1
shield.
Q: Do CC1 and CC2 traces need to be 90-Ohm signals?
A: On USB PCBs, USB data lines (D+ and D-) are routed as 90-Ohm
differential signals, CC1 and CC2 traces may follow the same signal
requirements.
“`
TN1592
Technical note
FAQ STM32 USB Type-C® Power Delivery
Introduction
This document contains a list of frequently asked questions (FAQ) on STM32 USB Type-C®, and Power Delivery.
TN1592 – Rev 1 – June 2025 For further information, contact your local STMicroelectronics sales office.
www.st.com
TN1592
USB Type-C® Power Delivery
1
USB Type-C® Power Delivery
1.1
Can the USB Type-C® PD be used to transmit data? (Not using USB high-speed
data transfer features)
While the USB Type-C® PD itself is not designed for high-speed data transfer, it can be used with other protocols and alternate modes and manages basic data transmission.
1.2
What is the practical usage of VDM UCPD module?
Vendor defined messages (VDMs) in USB Type-C® Power Delivery provide a flexible mechanism for extending the functionality of USB Type-C® PD beyond standard power negotiation. VDMs enable device identification, alternate modes, firmware updates, custom commands, and debugging. By implementing VDMs, vendors can create proprietary features and protocols while maintaining compatibility with the USB Type-C® PD specification.
1.3
STM32CubeMX needs to be configured with specific parameters, where are
they available?
The latest update changed the display information to be more user-friendly, now the interface simply requests the voltage and current desired. However, these parameters can be found in the documentations, you can see a quick reference table in the AN5418.
Figure 1. Specification detail (table 6-14 in universal serial bus Power Delivery specification)
Figure 2 explains the applied value 0x02019096.
TN1592 – Rev 1
page 2/14
Figure 2. Detailed PDO decoding
TN1592
USB Type-C® Power Delivery
For more details on the PDO definition, look at the POWER_IF section in UM2552.
1.4
What is the maximum output current of the USB interface?
The maximum output current allowed by the USB Type-C® PD standard is 5 A with a specific 5 A cable. Without a specific cable, the maximum output current is 3 A.
1.5
Does this ‘Dual-role mode’ mean be able to supply power and charge in
reverse?
Yes, DRP (dual role port) can be supplied (sink), or can supply (source). It is commonly used on battery-powered devices.
TN1592 – Rev 1
page 3/14
TN1592
STM32 Power Delivery controller and protection
2
STM32 Power Delivery controller and protection
2.1
Is MCU support only PD standard or QC as well?
The STM32 microcontrollers primarily support the USB Power Delivery (PD) standard, which is a flexible and widely adopted protocol for Power Delivery over USB Type-C® connections. Native support for Quick Charge (QC) is not provided by the STM32 microcontrollers or the USB PD stack from STMicroelectronics. If Quick Charge support is required, a dedicated QC controller IC should be used with the STM32 microcontroller.
2.2
Is it possible to implement a synchronous rectification algorithm in the
package? Can it manage multiple outputs and controller roles?
Implementing a synchronous rectification algorithm with multiple outputs and a controller role is feasible with STM32 microcontrollers. By configuring the PWM and ADC peripherals and developing a control algorithm, it is possible to achieve efficient power conversion and manage multiple outputs. Additionally, using communication protocols like I2C or SPI coordinate the operation of multiple devices in a controller-target configuration. As example, STEVAL-2STPD01 with a single STM32G071RBT6 that embeds two UCPD controller can manage two Type-C 60 W Type-C Power Delivery ports.
2.3
Are there TCPP for VBUS > 20 V? Do these products apply to the EPR?
TCPP0 series are rated up to 20 V VBUS voltage SPR (Standard Power Range).
2.4
Which STM32 microcontroller series supports USB Type-C® PD?
UCPD peripheral to manage USB Type-C® PD is embedded on the following STM32 series: STM32G0, STM32G4, STM32L5, STM32U5, STM32H5, STM32H7R/S, STM32N6, and STM32MP2. It gives 961 P/N at the time that the document is written.
2.5
How to make the STM32 MCU works as a USB serial device following USB CDC
class? Is the same or similar procedure help me go no-code?
Communication over USB solution is supported by real examples of discovery or evaluation tools including comprehensive free software libraries and examples available with the MCU package. The code generator is not available.
2.6
Is it possible to dynamically change the PD `data’ in the software run-time? E.g.
voltage and current demands/capabilities, consumer/provider etc.?
It is possible to dynamically change the power role (consumer – SINK or provider – SOURCE), the power demand (power data object) and data role (host or device) thanks USB Type-C® PD. This flexibility is illustrated in STM32H7RS USB Dual Role Data and Power video.
2.7
Is it possible to use the USB2.0 standard and the Power Delivery (PD) to
receive more than 500 mA?
USB Type-C® PD enables high-power and fast-charging capabilities for USB devices independently of data transmission. So, it is possible to receive more than 500 mA while transmitting in USB 2.x, 3.x.
2.8
Do we have the possibility to read information on the source or sink device
such as the PID/UID of the USB device?
USB PD does support the exchange of various types of messages, including extended messages that can carry detailed manufacturer information. The USBPD_PE_SendExtendedMessage API is designed to facilitate this communication, allowing devices to request and receive data such as manufacturer name, product name, serial number, firmware version, and other custom information defined by the manufacturer.
TN1592 – Rev 1
page 4/14
2.9 2.10 2.11 2.12 2.13
2.14
2.15 2.16 2.17
TN1592
STM32 Power Delivery controller and protection
When using an X-NUCLEO-SNK1M1 shield that includes a TCPP01-M12, should the X-CUBE-TCPP be used, as well? Or is X-CUBE-TCPP optional in this case?
To start USB Type-C® PD solution on SINK mode, X-CUBE-TCPP is recommended to ease implementation because STM32 USB Type-C® PD solution needs to be managed. TCPP01-M12 is the associated optimal protection.
On USB PCBs, USB data lines (D+ and D-) are routed as 90-Ohm differential signals. Does CC1 and CC2 traces have to be 90-Ohms signals as well?
CC lines are single ended lines with 300 kbps low frequency communication. Characteristic impedance is not critical.
Can TCPP protect D+, D-?
TCPP is not adapted to protect D+/- lines. To protect D+/- lines USBLC6-2 ESD protections are recommended or ECMF2-40A100N6 ESD protections + common-mode filter if radio frequencies on the system.
Is the driver HAL or register encapsulated?
The driver is HAL.
How can I ensure that STM32 handles power negotiation and current management in the PD protocol correctly without writing code?
A first step can be a series of field interoperability tests using available device available on the market. To understand the solution behavior, STM32CubeMonUCPD allows monitoring and configuration of STM32 USB Type-C® and Power Delivery applications. A second step can be a certification with the USB-IF (USB implementer forum) compliance program to obtain an official TID (Test Identification) number. It can be performed in a USB-IF sponsored compliance workshop or in an authorized independent test lab. The code generated by X-CUBE-TCPP is ready to be certified and solutions in the Nucleo/Discovery/Evaluation board have already been certified.
How to implement the OVP function of Type-C port protection? Can the margin of error be set within 8 %?
The OVP threshold is set by a voltage divider bridge connected on a comparator with a fixed bandgap value. Comparator input is VBUS_CTRL on TCPP01-M12 and Vsense on TCPP03-M20. OVP VBUS threshold voltage can be HW changed according to the voltage divider ratio. However, it is recommended to use the divider ratio presented on X-NUCLEO-SNK1M1 or X-NUCLEO-DRP1M1 according to the targeted maximum voltage.
Is the degree of openness high? Can customize some of specific tasks?
The USB Type-C® PD stack is not open. However, it is possible to customize all its inputs and the interaction with the solution. Also, you can refer to the reference manual of STM32 used to have a look on the UCPD interface.
What should we pay attention to in the design of port protection circuit?
TCPP IC must be placed close to the Type-C connector. Schematic recommendations are listed in user manuals of X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, and X-NUCLEO-DRP1M1. To insure a good ESD robustness, I would recommend having a look on ESD layout tips application note.
These days, a lot of one-chip ICs from China are being introduced. What are the specific advantages of using STM32?
Key benefits of this solution appear when adding a Type-C PD connector to an existing STM32 solution. Then, it is cost effective because the low voltage UCPD controller is embedded on STM32, and high voltage controls / protection is done by TCPP.
TN1592 – Rev 1
page 5/14
2.18 2.19 2.20
TN1592
STM32 Power Delivery controller and protection
Is there a recommended solution provided by ST with power supply and STM32-UCPD?
They are a full example with a USB Type-C Power Delivery dual port adapter based on the STPD01 programmable buck converter. STM32G071RBT6 and two TCPP02-M18 are used to support two STPD01PUR programmable buck regulators.
What is the applicable solution for a Sink (60 W class monitor), application HDMI or DP input and power?
STM32-UCPD + TCPP01-M12 can support sinking power up to 60 W. For HDMI or DP, an alternate mode is needed, and it can be done by software.
Do these products mean they have been tested for the standard specifications of USB-IF and USB compliance?
Code generated or proposed on firmware package have been tested and officially certified for some key HW configurations. As example, X-NUCLEO-SNK1M1, X-NUCLEO-SRC1M1, and X-NUCLEO-DRP1M1 on top of NUCLEO have been officially certified and USB-IF test ID are: TID5205, TID6408, and TID7884.
TN1592 – Rev 1
page 6/14
TN1592
Configuration and application code
3
Configuration and application code
3.1
How can I build a PDO?
Building a power data object (PDO) in the context of USB Power Delivery (PD) involves defining the power capabilities of a USB PD source or sink. Here are the steps to create and configure a PDO:
1. Identify the type of PDO:
Fixed supply PDO: Defines a fixed voltage and current Battery supply PDO: Defines a range of voltages and a maximum power Variable supply PDO: Defines a range of voltages and a maximum current Programmable Power Supply (PPS) APDO: Allows for a programmable voltage and current. 2. Define the parameters:
Voltage: The voltage level that the PDO provides or request
Current / power: The current (for fixed and variable PDOs) or power (for battery PDOs) the PDO provide or request.
3. Use the STM32CubeMonUCPD GUI:
Step 1: Ensure you have the latest version of the STM32CubeMonUCPD application Step 2: Connect your STM32G071-Disco board to your host machine and launch the
STM32CubeMonitor-UCPD application Step 3: Select your board in the application Step 4: Navigate to the “port configuration” page and click on the “sink capabilities” tab to see the
current PDO list Step 5: Modify an existing PDO or add a new PDO by following the prompts Step 6: Click on the “send to target” icon to send the updated PDO list to your board Step 7: Click on the “save all in target” icon to save the updated PDO list onto your board[*]. Here is an example of how you might define a fixed supply PDO in code:
/* Define a fixed supply PDO */ uint32_t fixed_pdo = 0; fixed_pdo |= (voltage_in_50mv_units << 10); // Voltage in 50 mV units fixed_pdo |= (max_current_in_10ma_units << 0); // Max current in 10 mA units fixed_pdo |= (1 << 31); // fixed supply type
Example configuration
For a fixed supply PDO with 5 V and 3A:
content_copy uint32_t fixed_pdo = 0; fixed_pdo |= (100 << 10); // 5 V (100 * 50 mV) fixed_pdo |= (30 << 0); // 3A (30 * 10 mA) fixed_pdo |= (1 << 31); // fixed supply type
Additional considerations:
·
Dynamic PDO selection: You can dynamically change the PDO selection method at runtime by modifying
the USED_PDO_SEL_METHOD variable in the usbpd_user_services.c file[*].
·
Evaluation of capabilities: Use functions like USBPD_DPM_SNK_EvaluateCapabilities to evaluate
received capabilities and prepare the request message[*].
Building a PDO involves defining the voltage and current (or power) parameters and configuring them using tools like STM32CubeMonUCPD or directly in code. By following the steps and examples provided, you can effectively create and manage PDOs for your USB PD applications.
3.2
Is there a function for a prioritizing scheme with more than one PD-sink
connected?
Yes, there is a function that supports a prioritizing scheme when more than one PD-sink is connected. This is particularly useful in scenarios where multiple devices are connected to a single power source. The power distribution needs to be managed based on priority.
TN1592 – Rev 1
page 7/14
TN1592
Configuration and application code
The prioritizing scheme can be managed using the USBPD_DPM_SNK_EvaluateCapabilities function. This function evaluates the received capabilities from the PD source and prepares the request message based on the sink’s requirements and priorities. When dealing with multiple sinks, you can implement a prioritizing scheme by assigning priority levels to each sink and modifying the USBPD_DPM_SNK_EvaluateCapabilities function to consider these priorities.
content_copy uint32_t fixed_pdo = 0; fixed_pdo |= (100 << 10); // 5V (100 * 50mV) fixed_pdo |= (30 << 0); // 3A (30 * 10mA) fixed_pdo |= (1 << 31); // Fixed supply type
/* Define a Fixed Supply PDO */ uint32_t fixed_pdo = 0; fixed_pdo |= (voltage_in_50mv_units << 10); // Voltage in 50mV units fixed_pdo |= (max_current_in_10ma_units << 0); // Max current in 10mA units fixed_pdo |= (1 << 31); // Fixed supply type
3.3
Is it mandatory to use DMA with LPUART for the GUI?
Yes, it is mandatory to communicate through an ST-LINK solution.
3.4
Is LPUART setting of 7 bit for word length correct?
Yes, it is correct.
3.5
In the STM32CubeMX tool – there is a check box “save power of non-active
UCPD – deactive dead battery pull-up.” What does mean this check box if it is
enable?
When SOURCE, USB Type-C® needs a pull-up resistor connected to 3.3 V or 5.0 V. It acts as a current source generator. This current source can be disable when USB Type-C® PD is not used to reduce power consumption.
3.6
Is it necessary to use FreeRTOS for STM32G0 and USB PD applications? Any
plans for non-FreeRTOS USB PD examples?
It is not mandatory to use FreeRTOS for USB Power Delivery (USB PD) applications on the STM32G0 microcontroller. You can implement USB PD without an RTOS by handling events and state machines in the main loop or through interrupting service routines. While there have been requests for USB Power Delivery examples without RTOS. Currently no non-RTOS example is available. But some AzureRTOS example are available for the STM32U5 and H5 series.
3.7
In the STM32CubeMX demo building a USB PD application for STM32G0, is HSI
accuracy acceptable for USB PD applications? Or the use of external HSE
crystal is mandatory?
The HSI provides the kernel clock for the UCPD peripheral, so there is no benefit of using the HSE. Also, the STM32G0 supports crystal-less for USB 2.0 in device mode, so the HSE would only be required in USB 2.0 host mode.
TN1592 – Rev 1
page 8/14
TN1592
Configuration and application code
Figure 3. UCPD reset and clocks
3.8 3.9 3.10
Is there any documentation that I can refer to for setting up CubeMX as you have explained later?
The documentation is available in the following Wiki link.
Is the STM32CubeMonitor capable of real-time monitoring? Is real-time monitoring possible by connecting STM32 and ST-LINK?
Yes, STM32CubeMonitor can perform real monitoring by connecting STM32 and ST-LINK.
Is the VBUS voltage/current measurement function demonstrated on the monitor screen available by basic and default on UCPD-enabled boards, or is it a feature of the added NUCLEO board?
Accurate voltage measurement is available natively because VBUS voltage is required by USB Type-C®. Accurate current measurement can be done by TCPP02-M18 / TCPP03-M20 thanks to high side amplifier and shunt resistor also used to perform over current protection.
TN1592 – Rev 1
page 9/14
TN1592
Application code generator
4
Application code generator
4.1
Can CubeMX generate an AzureRTOS-based project with X-CUBE-TCPP by the
same way with FreeRTOSTM? Can it generate the code managing the USB PD
without using FreeRTOSTM? Does this software suite require an RTOS to
operate?
STM32CubeMX generates code thanks to the X-CUBE-TCPP package using the RTOS available for the MCU, FreeRTOSTM (for STM32G0 as example), or AzureRTOS (for STM32H5 as example).
4.2
Can X-CUBE-TCPP generate code for dual Type-C PD port such as
STSW-2STPD01 board?
X-CUBE-TCPP can generate code for only a single port. To do it for two ports, two separated projects have to be generated without overlap on STM32 resources and with two I2C addresses for TCPP02-M18 and be merged. Fortunately, STSW-2STPD01 has a complete firmware package for the two ports. It is then not necessary to generate code.
4.3
Does this design tool work with all microcontrollers with USB Type-C®?
Yes, X-CUBE-TCPP works with any STM32 that embeds UCPD for all power cases (SINK / SOURCE / Dual Role). It works with any STM32 for 5 V Type-C SOURCE.
TN1592 – Rev 1
page 10/14
Revision history
Date 20-Jun-2025
Table 1. Document revision history
Revision 1
Initial release.
Changes
TN1592
TN1592 – Rev 1
page 11/14
TN1592
Contents
Contents
1 USB Type-C® Power Delivery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1 Can the USB Type-C® PD be used to transmit data? (Not using USB high-speed data transfer features) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 What is the practical usage of VDM UCPD module? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 STM32CubeMX needs to be configured with specific parameters, where are they
available? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 What is the maximum output current of the USB interface? . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.5 Does this ‘Dual-role mode’ mean be able to supply power and charge in reverse? . . . . . . . . 3 2 STM32 Power Delivery controller and protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1 Is MCU support only PD standard or QC as well? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2 Is it possible to implement a synchronous rectification algorithm in the package? Can
it manage multiple outputs and controller roles? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3 Are there TCPP for VBUS > 20 V? Do these products apply to the EPR? . . . . . . . . . . . . . . . . 4
2.4 Which STM32 microcontroller series supports USB Type-C® PD? . . . . . . . . . . . . . . . . . . . . . 4 2.5 How to make the STM32 MCU works as a USB serial device following USB CDC
class? Is the same or similar procedure help me go no-code? . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.6 Is it possible to dynamically change the PD `data’ in the software run-time? E.g. voltage and current demands/capabilities, consumer/provider etc.? . . . . . . . . . . . . . . . . . . . . 4
2.7 Is it possible to use the USB2.0 standard and the Power Delivery (PD) to receive more than 500 mA? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.8 Do we have the possibility to read information on the source or sink device such as the PID/UID of the USB device? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.9 When using an X-NUCLEO-SNK1M1 shield that includes a TCPP01-M12, should the X-CUBE-TCPP be used, as well? Or is X-CUBE-TCPP optional in this case? . . . . . . . . . . . . 5
2.10 On USB PCBs, USB data lines (D+ and D-) are routed as 90-Ohm differential signals. Does CC1 and CC2 traces have to be 90-Ohms signals as well? . . . . . . . . . . . . . . . 5
2.11 Can TCPP protect D+, D-? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.12 Is the driver HAL or register encapsulated?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.13 How can I ensure that STM32 handles power negotiation and current management in
the PD protocol correctly without writing code?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.14 How to implement the OVP function of Type-C port protection? Can the margin of error be set within 8 %? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.15 Is the degree of openness high? Can customize some of specific tasks? . . . . . . . . . . . . . . . . 5 2.16 What should we pay attention to in the design of port protection circuit?. . . . . . . . . . . . . . . . . 5 2.17 These days, a lot of one-chip ICs from China are being introduced. What are the
specific advantages of using STM32? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.18 Is there a recommended solution provided by ST with power supply and STM32-UCPD? . . 6
TN1592 – Rev 1
page 12/14
TN1592
Contents
2.19 What is the applicable solution for a Sink (60 W class monitor), application HDMI or DP input and power? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.20 Do these products mean they have been tested for the standard specifications of USB-IF and USB compliance? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3 Configuration and application code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1 How can I build a PDO? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2 Is there a function for a prioritizing scheme with more than one PD-sink connected? . . . . . . 7
3.3 Is it mandatory to use DMA with LPUART for the GUI? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.4 Is LPUART setting of 7 bit for word length correct? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.5 In the STM32CubeMX tool – there is a check box “save power of non-active UCPD deactive dead battery pull-up.” What does mean this check box if it is enable? . . . . . . . . . . . 8
3.6 Is it necessary to use FreeRTOS for STM32G0 and USB PD applications? Any plans for non-FreeRTOS USB PD examples? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.7 In the STM32CubeMX demo building a USB PD application for STM32G0, is HSI accuracy acceptable for USB PD applications? Or the use of external HSE crystal is mandatory? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.8 Is there any documentation that I can refer to for setting up CubeMX as you have explained later? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.9 Is the STM32CubeMonitor capable of real-time monitoring? Is real-time monitoring possible by connecting STM32 and ST-LINK? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.10 Is the VBUS voltage/current measurement function demonstrated on the monitor screen available by basic and default on UCPD-enabled boards, or is it a feature of the added NUCLEO board?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4 Application code generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
4.1 Can CubeMX generate an AzureRTOS-based project with X-CUBE-TCPP by the same way with FreeRTOSTM? Can it generate the code managing the USB PD without using FreeRTOSTM? Does this software suite require an RTOS to operate?. . . . . . 10
4.2 Can X-CUBE-TCPP generate code for dual Type-C PD port such as STSW-2STPD01 board? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.3 Does this design tool work with all microcontrollers with USB Type-C®? . . . . . . . . . . . . . . . 10
Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
TN1592 – Rev 1
page 13/14
TN1592
IMPORTANT NOTICE READ CAREFULLY STMicroelectronics NV and its subsidiaries (“ST”) reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST products are sold pursuant to ST’s terms and conditions of sale in place at the time of order acknowledgment. Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of purchasers’ products. No license, express or implied, to any intellectual property right is granted by ST herein. Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product. ST and the ST logo are trademarks of ST. For additional information about ST trademarks, refer to www.st.com/trademarks. All other product or service names are the property of their respective owners. Information in this document supersedes and replaces information previously supplied in any prior versions of this document.
© 2025 STMicroelectronics All rights reserved
TN1592 – Rev 1
page 14/14
Documents / Resources
![]() |
ST STM32 USB Type-C Power Delivery [pdf] User Manual TN1592, UM2552, STEVAL-2STPD01, STM32 USB Type-C Power Delivery, STM32, USB Type-C Power Delivery, Type-C Power Delivery, Power Delivery, Delivery |