cancel
Showing results for 
Search instead for 
Did you mean: 

Second core not booting up

Jvan .10
Associate III

The STM32 dev board I'm working with is the Nucleo H745ZI-Q.

This one has two cores, a M7 and a M4.

Now when I try to load code onto it, it runs fine the first time I run the debugger.

I noticed that when I reconnect the board, the second core doesn't boot up. I've to manually boot the second core to get it to work. This is unusable for me and probably isn't the way to go. The default CubeMX sketch gives me hardfault errors so that's not an option.

I tried adding this to the M7 code:

HAL_RCCEx_EnableBootCore(RCC_BOOT_C2);

But it didn't solve the issue.

I just want the M4 core to boot up after the M7 does. Nothing fancy, I just need to get it to work as simple as possible.

Could anyone help me?

1 ACCEPTED SOLUTION

Accepted Solutions
Jvan .10
Associate III

I finally fixed it:

.cm4_code :
  {
  _cm4_code_start = .;
  KEEP(*(.cm4_code));
  _cm4_code_end = .;
   } > FLASH_B2

Was missing in the FLASH file

View solution in original post

5 REPLIES 5
Imen.D
ST Employee

Hello @Jvan .10​ ,

I advise you to follow these resources which provide guidelines on how to debug STM32H7 dual-core applications:

  • AN5286 STM32H7x5/x7 dual-core microcontroller debugging 
  • AN5361 Getting started with projects based on dual-core STM32H7 microcontrollers in STM32CubeIDE

Please mark my answer as best by clicking on the "Select as Best" button if it helped =)

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen
Jvan .10
Associate III

Yes I tried this aswell, multiple times, with multiple people

Jvan .10
Associate III

The problem is not that I can't follow the guide.

Because when I use the debugger and start both cores manually it works fine.

When I reset the board or replug it, the M4 just won't boot automatically.

Jvan .10
Associate III

I finally fixed it:

.cm4_code :
  {
  _cm4_code_start = .;
  KEEP(*(.cm4_code));
  _cm4_code_end = .;
   } > FLASH_B2

Was missing in the FLASH file

 Good to see that your have solved your issue :) and thanks for your update.

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen