2025-11-20 6:06 AM
Hello,
I’m working with an STM32N6570-DK, and I’m trying to run a very simple LED-blinking application as part of the FSBL.
When I debug the project using STM32CubeIDE, everything works correctly and the LED blinks as expected.
Next, I want to flash the FSBL application to the external flash, so I generated the header using the following command:
STM32_SigningTool_CLI.exe -bin N6test_FSBL.bin -nk -of 0x80000000 -t fsbl -o N6test_FSBL-trusted.bin -hv 2.3 -dump N6test_FSBL-trusted.binI then put the board into DEV mode, connected with STM32CubeProgrammer, and flashed the image at address 0x70000000.
After disconnecting, switching to FLASH mode, and resetting the board, nothing happens. The LED does not blink.
Does anyone know what I might be missing or misconfiguring?
Thanks for your help.
2025-11-20 8:43 AM
Hello @lou_v, and welcome to ST Community,
I suggest you refer to this article by Bruno, which explains the steps needed to execute from flash and the required configuration very well: How to execute code from the external serial NOR using the STM32N6
Best regards,
2025-11-20 10:57 AM
Hello @STackPointer64 ,
Thank you for your answer and for the link to Bruno’s article.
I think I may not have explained my issue clearly enough.
What I want is to place my application directly inside the FSBL, and have the ROM code load the FSBL into RAM at boot, so that the application runs immediately afterward.
In other words, I am not trying to execute my code from external flash.
I want to keep the usual FSBL flow, but include a very simple LED-blink application inside it, and have the boot ROM copy the FSBL to RAM and execute it as expected.
I followed the standard FSBL generation process, the image works when debugging under STM32CubeIDE, but after flashing the trusted FSBL image, nothing runs (no LED blink).
Do you know what could prevent the FSBL from being copied and executed properly by the ROM code? Or any specific configuration that must be set when embedding an application inside the FSBL?
Thanks again for your help.
2025-11-24 6:15 AM - edited 2025-11-24 6:15 AM
Hello @lou_v,
Are you signing your binary after it is built in STM32CubeIDE? Because I saw that you already have a post-build command that signs your binary after each build, so you might be signing it twice.
If not, I managed to make it work the way you wanted by following these steps:
Please compare these steps with yours and let me know if this solves your issue.
Best regards,
2025-11-24 6:25 AM
Additionally, the correct article you are looking for is by Bruno. It explains the details about Load and Run mode using FSBL: How to create an STM32N6 FSBL load and run
2025-11-25 7:33 PM
Hi I am having the exact same problem!
I have followed Brunos explanation to the letter but nothing runs from Flash.
I have tried almost every STM32N6570-DK example with the same results.
All the examples run in debug mode from STM32CubeX IDE without a problem.
I can load prebuilt fsbl and Appl binaries into flash and these do boot OK so there must be something wrong with the build process of the fsbl.
If you are able to build and load the examples and have them boot from flash then there has to be some option in the build/link options that must be set for this to work?
I have spent a lot of hours trying to get this to work and every reference always points to the same documentation that I have spent hours pouring over and keep coming up with the same result.
How can this problem be resolved????
2025-11-26 3:32 AM
@digilog, were there any errors encountered during the firmware programming? Did you use the appropriate external loader? Have you tried following the steps I mentioned above?
2025-11-26 4:23 AM
STM32_SigningTool_CLI.exe - align -bin N6test_FSBL.bin -nk -of 0x80000000 -t fsbl -o N6test_FSBL-trusted.bin -hv 2.3 -dump N6test_FSBL-trusted.bin
Use this command
2025-11-26 4:29 AM
If you are using STM32_SigningTool_CLI.exe version 2.21.0 you must use -align.
2025-11-27 2:04 AM
Yes I finally came across a document that mentioned using -align when using STM32_SigningTool_CLI.exe version 2.21.0 and this seems to have solved the problem.
Using the STM32N6570-DK kit for the first time and installing all the latest versions of tools did not go well with most of the documentation and example code posted online!