BLE Secure DFU Bootloader with nRF52832 Project Build Errors

Hi,

I'm following this "Getting started with Nordic's Secure DFU bootloader, a step by step guide" (https://devzone.nordicsemi.com/guides/short-range-guides/b/software-development-kit/posts/getting-started-with-nordics-secure-dfu-bootloader#h75sjziavjbukzaywg6xlx19np0fm4) and using the nRF5_SDK_17.1.0_ddde560\examples\dfu\secure_bootloader project. However, when I built it (at step B3 in that guide), it gave me these errors.

How may I solve them? Or are there any other example projects or guides that I can follow to program nRF52832 through BLE? I've also tried the ble_app_buttonless_dfu, and that project could be built (no errors) but the nRF52832 didn't BLE advertise after firmware loading. 

Thanks,

Han

  • Hello Han,

    Did you move the application project file before trying to build, or is it still located in SDK\examples\dfu\secure_bootloader\pca10040_s132_ble\ses\ ?

    If you did move it, does it build if you try to build it in the original location?

    If you did not move it, can you please try to shorten the path? rename nRF5_SDK_17.1.0_ddde560/nRF5_SDK17.1.0ddde560\ to "17.1.0" by creating a folder called "17.1.0", and placing everything in the SDK inside there. (I also notice that you have two folders inside one another named nRF5_SDK17.1.0_ddde560. You can try to reduce this to only one first.

    If nothing works, is there a reference to nrf_section_iter_next in your SDK? It should be in SDK\components\libraries\experimental_section_vars\nrf_section_iter.c. Is that file included in your bootloader SES project? And is "NRF_SECTION_ITER_ENABLED" defined to "1" in your bootloader's sdk_config.h?

    Best regards,

    Edvin

  • Thanks, Edvin.

    I've tried with shorter path and on another computer, and the build works now.

    However, I now encounter another problem: the DFU Nordic Android app doesn't recognize the DFU .zip file that I created based on Step C in the guide. I zipped the adelie_3_android.hex file and private.key in nRF5_SDK_17.1.0_ddde560\examples\nRF_Code\adelie_3_android\pca10040\s132\ses\Output\Debug\Exe with the command $ nrfutil pkg generate --hw-version 52 --application-version 1 --application adelie_3_android.hex --sd-req 0x101 --key-file private.key app_dfu_package.zip

    Here is its manifest.json file in the .zip:

    The .bin and .dat files match those in the .json file. Do you know why the app doesn't let me choose that .zip file?

    It lets me choose the bootloader_secure_ble_debug_without_bonds_s132.zip in the examples/dfu/secure_dfu_test_images though so I'm not sure where is wrong.

    Thanks,

    Han

  • Why does your path have that really long name?

    What does it look like when it is not recognized? Can you upload the zip file here, so that I can test if the app recognizes it on my end?

  • That long path is just because I opened it in zip (not extracted yet). After extracting the zip file, its path is

    Here is the link to the .zip file: https://drive.google.com/file/d/1Eu7bf3Tsf61rM6usz2dVRc4ZD3q5blWo/view?usp=drive_link

  • I requested access to the google drive. Please note that it is also possible to upload files here on DevZone. Just drag and drop to the textbox, or click Insert -> Image/Video/File -> Upload.

    Best regards,

    Edvin

Related