Skip to main content
Associate II
November 28, 2024
Solved

Boot Issue with CM4 - STM32H745ZIT6

  • November 28, 2024
  • 3 replies
  • 4381 views

Hello Team,

We have a custom STM32H745 board designed and We are able to get the IC up and running on cube programmer and even set option bytes. 

The board is designed with Nucleo-H745ZI-Q schematics and we have verified everything on hardware end.

When we try to program the board with a basic blink sketch following the guide (https://www.st.com/resource/en/application_note/dm00629855-getting-started-with-projects-based-on-dualcore-stm32h7-microcontrollers-in-stm32cubeide-stmicroelectronics.pdf

M7 gets debugged and runs. Once I start with M4 I get error messages and it bricks the controller.

I have been pulling up the BOOT0 pin and performing mass erase and trying things again, still it gets bricked when I try to debug CM4.


Best answer by mƎALLEm

Please comment these two lines in the main of CM4:

 

 HAL_PWREx_ClearPendingEvent();
 HAL_PWREx_EnterSTOPMode(PWR_MAINREGULATOR_ON, PWR_STOPENTRY_WFE, PWR_D2_DOMAIN);

 

These lines make the CM4 to enter in low power mode while debugging.

For debug, I suggest you to comment these lines but you can keep them while in standalone.

 

3 replies

mƎALLEm
Technical Moderator
November 28, 2024

Hello @Pavan-Oggu and welcome to the community,

And if you run it without debug does the program on CM4 run?

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
Associate II
November 28, 2024

Hello SofLit,

It doesn't run. 

Without debugger CM7 gets compiled and download completes.

When I try to run CM4 then the error pops up. But it doesn't brick the controller this time.

PavanOggu_0-1732777916341.png

 

mƎALLEm
Technical Moderator
November 28, 2024

Sorry I didn't understand..

It doesn't run or you couldn't upload the program on CM4?

Did you disable by mistake CM4 in the option bytes? Check that using CubeProgrammer in the option bytes section.

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
mƎALLEm
Technical Moderator
November 28, 2024

Also you said: "The board is designed with Nucleo-H745ZI-Q schematics"

Nucleo-H745ZI-Q board is using SMPS and not LDO configuration. Could you confirm you are not using SMPS in the HW?

SofLit_0-1732781498628.png

If you used SMPS, that's normal and you've broken the board. In that case you need to recover it. Read this article.

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
Associate II
November 28, 2024

We are using LDO mode and I can confirm that. I have attached our schematics for reference.

We have missed pull down resistor on boot0 but I have added it externally on the hardware, Similarly I have also added a pull up resistor for PDR_ON pin.

mƎALLEm
Technical Moderator
November 28, 2024

Hello,

There is a mismatch between your RCC config i.e. you set an external 8MHz source in Bypass mode:

SofLit_0-1732788844117.png

 

While in your schematics you have an external clock with 25Mhz / Crystal/Resonator mode:

SofLit_1-1732788967663.png

You need to align the RCC config to fit your HW:

SofLit_0-1732789888616.png

SofLit_2-1732789105745.png

Attached the updated ioc file.

 

 

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
Associate II
November 28, 2024

Hello SofLit,

Thank you, CM7 boots up and blink sketch works on the board.
But CM4 remains the same. It doesn't get detected at all. Any idea why?

PavanOggu_0-1732796192832.png

 

mƎALLEm
mƎALLEmBest answer
Technical Moderator
November 28, 2024

Please comment these two lines in the main of CM4:

 

 HAL_PWREx_ClearPendingEvent();
 HAL_PWREx_EnterSTOPMode(PWR_MAINREGULATOR_ON, PWR_STOPENTRY_WFE, PWR_D2_DOMAIN);

 

These lines make the CM4 to enter in low power mode while debugging.

For debug, I suggest you to comment these lines but you can keep them while in standalone.

 

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.