2025-05-08 1:04 AM
I connect the PB9-BOOT0 to VDD, then power up the board, but it just run from flash(application program), not the bootloader, what's the matter?
I am not firmilar with ISP, I suppose it should enter bootloader, and wait for ISP program to communicate.
I want to confirm, besides connect PB9-BOOT0 to VDD, is there any other thing need be done?
Solved! Go to Solution.
2025-05-08 8:36 AM
Hello @STM32L09 ,
First, please try to connect the device using STM32CubeProgrammer instead of the STM32 Flash loader demonstrator.
About nBoot0_SW, this is either nSWBoot0 or nBOOT0_SEL, depending upon the product.
2025-05-08 3:46 AM
PA9, PA10 used for bootloader, and the connection is tested.
2025-05-08 6:09 AM
See AN2606 for the full list of options which can cause the bootloader to start. Notably, there are option bytes which can be set to ignore the value of the BOOT0 pin.
STM32 microcontroller system memory boot mode - Application note
Typically, and by default, setting BOOT0 high during reset is enough to start the bootloader.
2025-05-08 6:21 AM
Hello @STM32L09 ,
Please check your nBOOT1 bit and nBOOT_SEL bit as stated in RM0377 section 2.4 Boot configuration.
2025-05-08 7:17 AM
Yes, I noticed if it's a empty device, to enter bootloader, the BOOT0 need be connect to GND, I use a empty device, and seems enter bootloader, but in this page the list is empty, nothing to choose, and go to next, select the hex file, fail to download.
For the programed MCU, when PB9-BOOT0 connect to VDD, why it can't enter bootloader after reset? I didn't set the option byte, nBoot1 is 1 by default, what's nBoot0_SW mean? I didn't find it in reference manual.
thanks.
2025-05-08 7:24 AM
thanks for your reply.
by default nBOOT1 is 1, nBOOT_SET is 0, and I connect BOOT0 to VDD, I don't know why it doesn't enter bootloader?
2025-05-08 8:36 AM
Hello @STM32L09 ,
First, please try to connect the device using STM32CubeProgrammer instead of the STM32 Flash loader demonstrator.
About nBoot0_SW, this is either nSWBoot0 or nBOOT0_SEL, depending upon the product.
2025-05-08 5:22 PM
Currently, by using STM32CubeProgrammer, the empty MCU can enter bootloader by connecting BOOT0 PIN to GND, and also can be programed.
and I found that nBOOT1 is 0 for a empty MCU. I think this is why the programed MCU can't enter bootloader by connect BOOT0 PIN to VDD. this is strange, the RM says default nBOOT1 is 1. How can I set nBOOT1 to 1 for the programed MCU?
2025-05-08 8:11 PM
I use STVP to reprogram FLASH option byte, then the programed MCU can als enter bootloader.
2025-05-08 8:18 PM
summarize for STM32L011F4 to enter bootloader:
1. empty MCU: connect PB9-BOOT0 to GND, it can enter bootloader, and use STM32CubeProgrammer, through USART2, set FLASH option byte, nBOOT1 =1, after programed, it still can enter bootloader by connect PB9-BOOT0 to VDD.
2. programed MCU: if nBOOT1 is 0, need to set nBOOT1 to 1, we can use STVP to program FLASH option byte.(because STM32CubeProgrammer not support ST-LINK V1)
above is the method we use PB9-BOOT0 to control enter bootloader.