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

Secure DFU Bootloader Example not Advertising

I have followed all steps in the recent blog, but the device doesn't advertise. I am using:

  • BMD-300-EVAL devkit (nrf52832)
  • SDK 12.1.0
  • S132 3.0.0
  • Eclipse with gcc-arm-none-eabi-4_9-2015q3
  • Example folder is located in: nRF5_SDK_12.1.0/examples/dfu/bootloader_secure/

I have been using this setup with no issue for the development of other example applications and my own applications.

I notice in sdk_config.h that the clock is disabled. Could this be causing a problem? I tried to enabling it and adding the includes that it needed to the Makefile, but this did not work. Also, it seems that the softdevice is not enabled in main.c. I also tried enabling logging, but this causes a compile error. "region 'FLASH' overflowed by 9748 bytes. I don't know how to fix this so that I can debug.

Where o where am I going wrong?

Parents
  • Hi ,

    Could you try to test with SDK v13 ? I haven't heard of issue with the Secure bootloader and gcc except for the buttonless example as summarized here.

    How did you test ? Did you modify anything in the dfu bootloader ? If you simply compile (without modifying anything) and flash the bootloader and the softdevice, would it advertise ?

    You can remove optimization and run the bootloader in debug mode and see where it crashes.

  • Hey. I tried a fresh 12.2.0 and 12.1.0. I got 12.2.0 to work after doing all of the normal steps in addition to un-checking "Exported Entries from Referenced Projects" and "CDT Managed Build Settings Entries" from Project Properties->C/C++ General->Preprocessor Includes->Providers. (I fixed some problems I was having with another project by doing that, so I decided to give it a shot.) I Also did a fresh try of 12.1.0, but if I don't change anything (except for the dfu_public.key line), it won't compile. I get the following errors: Cannot find include folder: ../../../../../components/libraries/bootloader/ble_dfu/includes Cannot find include folder: ../../config Cannot find include folder: ../../config/secure_dfu_secure_dfu_ble_s132_pca10040

    If I delete those lines, it compiles.

    At this point, I am probably just gonna bite the bullet and port to SDK 13. Unless you have some great wisom.

Reply
  • Hey. I tried a fresh 12.2.0 and 12.1.0. I got 12.2.0 to work after doing all of the normal steps in addition to un-checking "Exported Entries from Referenced Projects" and "CDT Managed Build Settings Entries" from Project Properties->C/C++ General->Preprocessor Includes->Providers. (I fixed some problems I was having with another project by doing that, so I decided to give it a shot.) I Also did a fresh try of 12.1.0, but if I don't change anything (except for the dfu_public.key line), it won't compile. I get the following errors: Cannot find include folder: ../../../../../components/libraries/bootloader/ble_dfu/includes Cannot find include folder: ../../config Cannot find include folder: ../../config/secure_dfu_secure_dfu_ble_s132_pca10040

    If I delete those lines, it compiles.

    At this point, I am probably just gonna bite the bullet and port to SDK 13. Unless you have some great wisom.

Children
No Data
Related