2025-08-31 6:31 PM
Hi, just looking to learn the best way to do this. We're aiming to create a system for STM32H7R/S where the bootloader acts as USB MSC device to store a number of different app binaries to a permanently-mounted SD card. At system restart, the booloader needs to let the user chose which of the binaries to load from the SD card (the system has a small touch screen). The bootloader would then load the binary from the SD card into the fast internal RAM and run it there.
Is the External Memory Loader a good way to do this? Is this use case supported by CubeMX? Is there a good set of examples or "howto" documents?
2025-09-02 5:19 AM
Hello @zj ,
The External Memory Loader is mainly intended for programming external memories via ST-LINK or other debug interfaces, and it is not directly designed for user bootloader scenarios involving USB MSC or SD card interaction.
Your use case closely looks like the LRUN template provided by ST for STM32H7S78 DK board, which can be found here : https://github.com/STMicroelectronics/STM32CubeH7RS/tree/main/Projects/STM32H7S78-DK/Templates/Template_LRUN
This application boots from internal Flash, copies the application from the external NOR Flash to the external PSRAM and jumps to the application code in external PSRAM.
You can start your application from here by adapting it to your needs—specifically, replacing the external NOR Flash with an SD card interface and the external PSRAM with the internal RAM.
With regards