I have read AN2606 about the native ST bootloader, but for various reasons decided to write my own bootloader to update the firmware on my application running on a STM32F412. My bootloader is able to program the firmware successfully. Now I want to be able to start the micro in my bootloader using the BOOT0 pin. Is it possible to disable the native bootloader in some way or isolate the BOOT0 pin from the native bootloader to do this or will I need to pick a different pin?


No, the documention makes it quite clear that such behavior is fixed.

But you can use a different GPIO pin of your choice to control your bootloader's behavior - ie, boot the target firmware or stay in bootloader mode.

You could also use commands issued to the stock factory ROM bootloader to start your custom one, but that seems a little pointless as at that point you might as well just use the stock one.

  • \$\begingroup\$ Eg: use BOOT1 pin while BOOT0 is tied down. Also in RDP level 2 bootloaders are disabled, but it doesn't say what it will do then. \$\endgroup\$ – Jeroen3 Aug 7 '19 at 5:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.