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

Secure Bootloader Downloads app but stays in Bootloader on Custom board

My DFU is staying in the bootloader, even after successful download of the application package.

I have modified the secure bootloader for my custom PCB (removed the GPIO for the button check), so that is not an issue.

I can make the DFU "work" if I just initially install the bootloader and softdevice only. The app will start nicely with my app only package.

However, if I generate the combined bootloader, SD and app hex file by manually creating the bootloader settings and adding it to the combined hex file according with the method in Hung Bui's blog ("Getting started with Nordic's Secure DFU bootloader, a step by step guide"), the OTA app will not start and the device stays in the bootloader mode.

When I generate the app package, I have increased the version by "1" over the value I put in the manually generated settings file (from 3 to 4) so it should be setting the app valid flag. I can't debug the bootloader, because I'm using the IAR platform and there seems to be a bug with debugging the bootloader.

Any suggestions to help figure out why the bootloader is not accepting the app would be appreciated.

Parents
  • The error was in the pages_init function, FDS_PAGE_UNDEFINED was the type and it was not erased, so therefore FDS could not use it and returned FDS_ERR_NO_PAGES. I have some hardcoded memory locations in my app, and I did not account for the FDS pages set in the sdk_config.h file. I reduced FDS pages to the minimum (2) and moved my hardcoded memory to not interfere.

Reply
  • The error was in the pages_init function, FDS_PAGE_UNDEFINED was the type and it was not erased, so therefore FDS could not use it and returned FDS_ERR_NO_PAGES. I have some hardcoded memory locations in my app, and I did not account for the FDS pages set in the sdk_config.h file. I reduced FDS pages to the minimum (2) and moved my hardcoded memory to not interfere.

Children
Related