Skip to main content
Associate III
April 21, 2026
Solved

stm32H755: flash to memory area 0x1ff00000 when BOOT0 = 1

  • April 21, 2026
  • 2 replies
  • 157 views

hello ST Community,

I need your support. So far, I've been able to flash my bootloader software into the unprotected memory area 0x08000000 when Boot0 = 0 for the NUCLEO-H755ZI-Q series, both with the STM32CubeProgrammer and with my bootloader software via UART.

However, I'd like to flash the same bootloader software into the memory area 0x1ff00000 when Boot0 = 1. I know it's protected. Is it possible to change the security level or flash it to another memory to run my software when Boot0 = 1?

Thank you for your support.

Best answer by mƎALLEm

 


@Domy_ST wrote:

@mƎALLEm 

my idea is to put my bootloader outside the 1024K flash capacity so from 0x08000000 to 0x080ffff of the CM7 but still have it start my bootloader when Boot0 = 1 outside the max address of the flash.


So put your custom bootloader at BANK2. You need to program that in the option bytes.

Please refer to the section: 2.6 Boot configuration in RM0399

2 replies

mƎALLEm
Technical Moderator
April 21, 2026

Hello,

No. The system bootloader is hardcoded at the memory area 0x1ff00000. Not possible to write at that memory region.

To run your own bootloader when Boot0 = 1, configure the BOOT_ADD1 option byte to point to your custom bootloader.

From AN4938:

mALLEm_0-1776771960099.png

"To give better visibility on the answered topics, please click on ""Accept as Solution"" on the reply which solved your issue or answered your question."
Domy_STAuthor
Associate III
April 21, 2026

@mƎALLEm 

ok how can i configure BOOT_ADD1 by setting the address where my custom bootloader should start when Boot0 = 1? maybe from the address 0x1ff09800 if it is possible to overwrite. only with STM32CubeProgrammer?

my idea is to put my bootloader outside the 1024K flash capacity so from 0x08000000 to 0x080ffff of the CM7 but still have it start my bootloader when Boot0 = 1 outside the max address of the flash.

mƎALLEm
mƎALLEmBest answer
Technical Moderator
April 21, 2026

 


@Domy_ST wrote:

@mƎALLEm 

my idea is to put my bootloader outside the 1024K flash capacity so from 0x08000000 to 0x080ffff of the CM7 but still have it start my bootloader when Boot0 = 1 outside the max address of the flash.


So put your custom bootloader at BANK2. You need to program that in the option bytes.

Please refer to the section: 2.6 Boot configuration in RM0399

"To give better visibility on the answered topics, please click on ""Accept as Solution"" on the reply which solved your issue or answered your question."
Domy_STAuthor
Associate III
April 21, 2026

Ok, so the only solution is to use bank 2 of the user main memory. Thanks.