2023-09-01 06:28 AM
Hi there,
I am developing an application with a USB C PD Source. Components used are STM32G0G0B1RETx and TCPP02-M18.
The Application works more or less. It is able to open the provider-path MOSFETs controlled by the TCPP Chip. It can communicate to the attached device, so the for example the pixel phone starts charging at ~1.5A.
The issue is, that the device turns off the Power Path after 0,5Seconds and does not restart. Behaviour is the same, no matter if the sink device is attached to a running system or attached before the start.
I did some debugging, and it looks like a hardReset is triggered by the PE_CallHardResetCallback() which is triggered by the USBPD_PE_StateMachine(). I can not find both of the latter functions in the code so it is hard to debug.
I am honestly a little clueless, why this happens and what we can do about it?
Here are the waveforms for I2C Comms to the TCCP Chip, CC Line of USB C Connector and the 5V Rail after the switch of the TCCP:
Here are the waveforms for CC Communication:
Here is the output of the trace:
-- BSP_USBPD_PWR_Init --
-- BSP_USBPD_PWR_SetRole : SRC --
-- BSP_USBPD_PWR_SetPowerMode --
-- Low Power --
-- BSP_USBPD_PWR_VBUSInit --
-- BSP_USBPD_PWR_SetPowerMode --
-- Normal --
"ADVICE: USBPD_DPM_Notification:104
VBUS ON
-- BSP_USBPD_PWR_VBUSOn --
-- GDP/GDC setting : SRC --
"ADVICE: USBPD_DPM_Notification:104
ADVICE: USBPD_DPM_Notification:90
Data Size is not correct
Data Size is not correct
Data Size is not correct
Data Size is not correct
!ADVICE: USBPD_DPM_Notification:30
"ADVICE: USBPD_DPM_Notification:105
VBUS OFF
-- BSP_USBPD_PWR_VBUSOff --
VBUS ON
-- BSP_USBPD_PWR_VBUSOn --
-- GDP/GDC setting : SRC --
VBUS OFF
-- BSP_USBPD_PWR_VBUSOff --
"ADVICE: USBPD_DPM_Notification:105
"ADVICE: USBPD_DPM_Notification:105
-- BSP_USBPD_PWR_SetRole : SRC --
-- BSP_USBPD_PWR_VBUSInit --
-- BSP_USBPD_PWR_SetPowerMode --
-- Normal --
Any help is highly appreciated!
Bests,
Jakob