2025-03-18 6:08 AM
I am new to using stm32 MCUs and I was following a youtube tutorial on how to set up a debugger for dual core MCUs. Before changing some settings I was able to start the debugger without any errors. Now when I try to run the debugger I get this error window popup:
'Launching file_CM4 Debug' has encountered a problem.
Error in final launch sequence:
Failed to start GDB server
When I click on details I get:
Error in final launch sequence:
Failed to start GDB server
Failed to start GDB server
Error in initializing ST-LINK device.
Reason: (4) No device found on target.
I also noticed that when I plug the controller in the USB port and open NOD_H755ZIQ in This PC, it has 4 files (it had 3 files before). New file is called FAIL.TXT and it says:
The interface firmware FAILED to reset/halt the target MCU
This is the youtube tutorial that I followed : https://www.youtube.com/watch?v=jI1k6p-fduE
Can anyone help me with this?
Is it possible to fix this problem or do I need to buy a new board?
Thanks in advance.
2025-03-18 6:23 AM
Connect with STM32CubeProgrammer and ensure the CM4 core is enabled in option bytes (BOOT_CM4).
2025-03-18 6:45 AM - edited 2025-03-18 6:47 AM
Hello @david027 and welcome to the community,
You've started with a relatively complex STM32 with dual core! This is not easy for someone new on STM32 MCUs.
Meanwhile, what board are you using? ST board? if yes, which one? if NUCLEO-H755 it needs to be set to DIRECT SMPS.
or custom board? If yes, what is the power configuration?
The debug is a bit tricky mainly because CM4 enters the low power mode:
I suggest you to comment out these lines on CM4:
HAL_PWREx_ClearPendingEvent();
HAL_PWREx_EnterSTOPMode(PWR_MAINREGULATOR_ON, PWR_STOPENTRY_WFE, PWR_D2_DOMAIN);
And for CM7 comment out these lines:
timeout = 0xFFFF;
while((__HAL_RCC_GET_FLAG(RCC_FLAG_D2CKRDY) != RESET) && (timeout-- > 0));
if ( timeout < 0 )
{
Error_Handler();
}
timeout = 0xFFFF;
while((__HAL_RCC_GET_FLAG(RCC_FLAG_D2CKRDY) == RESET) && (timeout-- > 0));
if ( timeout < 0 )
{
Error_Handler();
}
Please refer also to this article.
2025-03-18 9:56 AM - edited 2025-03-18 9:58 AM
Thanks for reaching out. I am using NUCLEO-H755ZI-Q. I don't think that commenting out the parts of the code will help because i have no way of uploading that code to the board. I have read the article which you provided and i think it could work because i remember changing the SupplySource in RCC Mode and Configuration from PWR_DIRECT_SMPS_SUPPLY to PWR_LDO_SUPPLY. I have also read the comments under the article where someone mentions that i need to make some modifications before running the board at 480MHz, when i started the project i set the timer in clock configuration to the maximum frequency of 480 MHz without any modifications.
I would like to try the "Solution 1" from the article but I am scared of causing permanent damage to the board.
Can you please explain the "Solution 1" in more detail, and sorry if I am being annoying