2026-05-27 1:47 AM - last edited on 2026-06-01 6:05 AM by Amel NASRI
Hi,
I'm currently developing on the NUCLEO board and I can't enter the bootloader using the boot button on the board.
I created an .ioc file with CubeMX2 v1.0.1 using the NUCLEOC562RE board. Then build and flash the code with vscode addon without issue.
When I press the "BOOT" button, perform a "RESET" using the reset button, and then release the "BOOT" button, I continue to boot from the flash memory and therefore cannot access USB DFU mode on USB1, which is my goal ...
However, when I change the value of BOOT0 to 1 in CubeProgrammer using ST-LINK, I can enter USB DFU mode without any issues on USB1. Is it possible to change BOOT0 from the application then ? How ?
Thank you in advance for your help !
Solved! Go to Solution.
2026-05-27 8:16 AM - edited 2026-05-27 8:32 AM
This chip has a BOOT0 pin and a BOOT0 option bit. They are independent. It does not have a BOOT0 pin.
Per pattern 19, since you have BOOT_SEL = 0, the only way to get into the bootloader is when the BOOT0 option bit is set to 1. The state of the BOOT0 pin is ignored.
If you want to use the BOOT0 pin, you will need to set BOOT_SEL = 1.
2026-05-27 5:36 AM
I just read that access to the bootloader via firmware isn't available yet, but is it normal that the PH2-BOOT0 button doesn't do anything?
https://dev.st.com/stm32cube-docs/stm32c5-mcu-package/2.0.0/en/release_notes.html :
2026-05-27 6:12 AM
Look at AN2606 for how to enter the bootloader. Check that the option bytes are set such that BOOT0 actually affects the boot process.
The note about open bootloader middleware has nothing to do with this issue.
2026-05-27 7:55 AM
According with AN2606, I need to execute pattern 19 to enter the bootloader. I tried it without success. BOOT0 physical pin seems to not affect boot0 bit.
My bootsel value is 0, but when I connect BOOT0 to +3.3 V, I still can't enter the bootloader.
I tried same thing with BOOT0 pin declared in CubeMX2 without success ...
The only way I have found to enter USB DFU mode is to set the BOOT0 bit to 1 via ST-LINK using STMCubeProgrammer.
Could this be a hardware issue?
2026-05-27 8:16 AM - edited 2026-05-27 8:32 AM
This chip has a BOOT0 pin and a BOOT0 option bit. They are independent. It does not have a BOOT0 pin.
Per pattern 19, since you have BOOT_SEL = 0, the only way to get into the bootloader is when the BOOT0 option bit is set to 1. The state of the BOOT0 pin is ignored.
If you want to use the BOOT0 pin, you will need to set BOOT_SEL = 1.
2026-05-27 8:27 AM
I just tested it with bootsel = 1, and I was able to enter the bootloader successfully. Thank you very much.
The inverted logic of BOOT_SEL threw me off.
I can close this ticket.
We’re moving the ST Community to a new platform to give you a better and more reliable community experience.