This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Firmware not started when bootloader exists

I've compiled the secured DFU bootloader (from SDK 12.2) and loaded it on my board. But whenever I run my firmware, it won't start (none of the expected interaction happens), moreover, if I put a breakpoint at the beginning of my main(), it won't break.

If I erase the board, program the SD only and then my firmware, everything works fine.

Would anyone have a clue as to what is happening and how to get it to work? Thanks!

  • Hi Jonathan,

    this is the expected behavior if you flash Bootloader, Application and SoftDevice to your device using a programmer. The bootloader will check the bootloader settings flash page to see if the valid application flag is set, which is set to false by default. You need to generate a bootloader settings hex using nrfutil and merge this with the bootloader hex in order to set the valid app flag. This is described in Appendix 1 of this blog post.

    Best regards

    Bjørn

Related