Skip to main content
Associate II
September 6, 2025
Question

USB PD Part selection : Issues with EN Pin Operation with CubeMX, USB PD stack & TouchGFX

  • September 6, 2025
  • 4 replies
  • 1062 views

Hi Pascal,

Any updates on our previous thread?

When testing the same firmware with the EN pin pulled up, we are facing some issues during operation. After about 5–6 operation cycles, the system stops working until the MCU is reset. The issue still persists — could you please suggest what board-level changes might be needed to resolve this?

Additionally, we are facing another issue on the CubeMX side:

  • USB PD works well separately,TouchGFX works fine separately. But in our application, we need both to run together. If I disable TouchGFX, USB PD starts working. However, when I try to enable both TouchGFX and USB PD in the IOC file, CubeMX shows an error saying only one can be used at a time.

Could you please advise how we can resolve this?

 

Thanks & Regards,
Rajkumar


edit: 
related thread Solved: USB PD Part selection - STMicroelectronics Community 

4 replies

Technical Moderator
September 10, 2025

Hi @Rajkumar24 

Have you tried updating latest version of TouchGFX 4.25.0 and TCPP package?

About your second point, pulling up enable pin of TCPP3 M20 which supplies I2C interface. Have you tried to control it over GP Output via STM32? Note that TCPP port can change power mode via these I2C commands.

We don't recommand to pull-up EN pin of TCPP03-M20 because this pin is dynamically triggered (because it can select 1.8V or 3.3V). And Vcc rise-up is usally not fast enouth. We do recommand to connect EN pin to a GPIO.

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.Best regards,FBL
Associate II
September 10, 2025

Hi FBL,
Yes, we are using the latest version of TouchGFX 4.25.0 and the latest TCPP package 4.2. The issue is still present.

Regarding the EN pin of the TCPP03-M20 — in our current design, the EN pin is connected to an STM32 GPIO with an external pull-up. From your suggestion, do you mean that we should remove the external pull-up and instead drive the EN pin directly from the STM32 GPIO configured as an output (without pull-up)?

And, how to configure TCCP power mode at 3.3V using I2C command on TCCP package

Thanks & Regards,
Rajkumar

Technical Moderator
September 11, 2025

Hi @Rajkumar24 

About CubeMX issue, I have raised an internal ticket 217300 to dedicated team to fix the issue or clarify a limitation.

About EN pin, I agree, you should remove the external pull up and control it through STM32 GP Out pin.

About how to configure TCPP power mode, you can refer to section 6.3.1 I2C registers
 in the datasheet
 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.Best regards,FBL
Technical Moderator
September 30, 2025

Hi @Rajkumar24 

Would you please provide a trace .cpd? Check the USB priority compared to TouchGFX.
One quick test could be to comment USB init.

Check this demo as a reference:

https://www.st.com/resource/en/demos_resources/stm32h7s78-usb-demo-full-source-v-1-1-1.zip

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.Best regards,FBL
Associate II
September 30, 2025

Hello FBL,

We are not enabling trace .cpd because we do not have an extra UART connection, so the trace embedded feature was not added. We also modified the priority settings, but both approaches did not work.

Following your instructions(we followed the STM32H7S78 demo as a reference), we created a simple TouchGFX project and manually added USB-PD on top of it. However, both did not work:

  • When we commented out the USB-PD initialization, TouchGFX started working.

  • When we commented out TouchGFX to test USB-PD alone, USB-PD did not work either.

  • We also tried a standalone USB-PD project, manually porting USB-PD without TouchGFX, but USB-PD still did not work.

We have attached both code versions for your review. Please check and share your comments.

For our application, we are not performing any power negotiation, only using 5V, and are using only source or sink functionality (DRP). Is there an existing code example for this scenario?

If it is not possible to integrate both TouchGFX and USB-PD DRP functionality together, could you please recommend a USB-PD-DRP IC that supports this application?

Thank you for your support.

 

Technical Moderator
November 14, 2025

Hi @Rajkumar24 

Sorry for my late reply! I'm not expert in ST USB PD ICs. You can either check here USB type-C and power delivery controllers - Products. Or start a new thread in the dedicated Power management forum.

About USB-PD project standalone, using IAR, is not compiling on my end, you need to attach your full project including drivers and MW to replicate the issue. 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.Best regards,FBL