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

ble_app_hrs + Buttonless DFU on NRF52DK(52832) + OTA update

Hi,

I want to verify

1. Program  ble_app_hrs with buttonless dfu integrated + secure bootloader + bootloader setting to nRF52DK. 

2. Boot up nRF52DK, then use buttonless dfu goto bootloader mode

3. Update app_dfu_package.zip (nrfutil pkg generate --hw-version 52 --application-version 0 --application ble_ap nrfutil pkg generate --hw-version 52 --application-version 0 --application ble_app_hrs_pca10040_s132.hex --sd-req 0xCB --key-file private.key app_dfu_package.zip
Zip created at app_dfu_package.zip)

====

Below are my steps:

Step1 Generate bootloader setting page

Step2  merge secure bootloader(\dfu\secure_bootloader\pca10040_s132_ble\) + bootloader settings

Step3 Program secure bootloader (examples\dfu\secure_bootloader\pca10040_s132_ble)+ bl setting

Step4 Program softdevice (s132_nrf52_7.0.1)

Step5 Program app(ble_app_hrs_pca10040_s132 which is integrate with buttonless_duf already)

Step 6 When nRF52DK bootup, error logs are below:

Are my steps correct?

How can I make it right?

Thanks.

Vick

Parents Reply
  • Hi Sudharsan,

    I have followed the blog, and try below steps:

    1. 

     In sdk_config.h in the bootloader:

    • Change NRF_DFU_BLE_REQUIRES_BONDS to 1
    • Change NRF_SDH_BLE_SERVICE_CHANGED to 1

    - In sdk_config.h in ble_app_buttonless_dfu + ble_app_hrs

    • Change NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS to 1
    • Check if NRF_SDH_BLE_SERVICE_CHANGED is not 1 then set it to 1

    Compile the two projects. 

    2. Generate bl setting

    3.

    mergehex -m bootloader.hex setting.hex -o bootloader_and_setting.hex

    4.

    mergehex -m nrf52832_xxaa.hex bootloader_and_setting.hex -o app_bootloader_and_setting.hex

    5. flash softdevice

    6.  flash the app_bootloader_and_setting.hex

    7. After bootup, error logs show below:

    Could you give me a hand?

    By the way, I have tested sec_bootloader + ble_app_hrs(without buttonless_dfu), the result is following.

    When nRF52DK boots up, it will enter bootloader mode directly.  Is that normal?

    (This verification just make sure the bootloader is available.)

    Thanks you!

Children
Related