cancel
Showing results for 
Search instead for 
Did you mean: 

X-CUBE-USB-PD problem, Unexpected HardReset transmission

Y.Nomura
Associate II

I am developing an X-CUBE-USB-PD system that works with the STM32G070CB and FUSB307B.

It is based on an example project for the FUSB307BGEVB, which behaves as a DRP.

The library I'm using for it is M0_PD3_FULL.

It works fine in most cases, but there is one problem.

When acting as a sink, PE will send a HardReset about 450ms after Explicit Contract.

What could be the reason for the state transition from PE_STATE_READY_WAIT to PE_STATE_HARD_RESET?0693W000001roI0QAI.png

1 ACCEPTED SOLUTION

Accepted Solutions

Hi

Now, I understand your setup. Could you check if you have correctly enabled CRC block on G0 side? If no, please enable it.

Regards,

Yohann

View solution in original post

4 REPLIES 4
Yohann M.
ST Employee

Dear @Y.Nomura​ 

Why did you work with FUB307 + STM32G070CB? You can choose another STM32G0 like STM32G071CB.

For your information, this STM32 has 2 integrated UCPD port. You don't need to add an external component to do USB-PD.

You can have a look at the FW package delivered for G0:

https://github.com/STMicroelectronics/STM32CubeG0/tree/master/Projects/STM32G081B-EVAL/Applications/USB-PD

Important is to select the library 'USBPDCORE_PD3_FULL_CM0PLUS_wc32.a' (in opposite to USBPDTCPM use for external TCPC component (mainly used with STM32 without integrated UCPD IP.

You will have further details on the following link:

https://www.st.com/en/applications/connectivity/usb-type-c-and-power-delivery.html

and the associated wiki page:

https://wiki.st.com/stm32mcu/wiki/USB_Power_Delivery_overview

Regards,

Yohann

Hi Yohann.

i already tried the STM32G071CB as well. But I eventually found the G070 and FUSB307B combination to be cheaper. I noticed that the number of components is also small.

The FUSB307B has two Vconn switches and an LDO built in. However, the G071 does not have those features. So, if you try to externalize them, the number of components will be higher than when using FUSB307B. and higher costs.

best regards

Hi

Now, I understand your setup. Could you check if you have correctly enabled CRC block on G0 side? If no, please enable it.

Regards,

Yohann

hi Yohann

I enabled the CRC unit.

After that, no more unexpected hard resets were sent from the MCU.

I wasn't aware that CRC was needed for the X-CUBE-USB-PD.

Thank you so much.