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

Buttonless DFU

Hello,

I beginner for Nordic board, developing small device using BLE.

I build softdevice, bootloader and application. I checked working DFU mode(via serial, not BLE) with button, so I want to buttonless DFU.

application use SDK12.3, bootloader use SDK11.

when I use "NRF_POWER->GPREGRET = BOOTLOADER_DFU_START", board was hang up.

and "sd_power_gpregret_set(BOOTLOADER_DFU_START)" is seems to be not worked.

please help how can I do?

Parents
  • Hi,

    First of all, as you write that you are a beginner with Nordic products, i wander why you are using a SDK 11 bootloader with a SDK 12.3 application? It could make sense if you have devices in the field that were based on SDK 11, but if not, then I suggest using everything from the same SDK version. Also, which chip are you using?

    For the question, the bootloaders in SDK 11 (legacy) and SDN 12.3 (secure) are very different, so you will need to make some adaptations in the application. Can you provide a bit more context to how you use  "NRF_POWER->GPREGRET = BOOTLOADER_DFU_START" and "sd_power_gpregret_set(BOOTLOADER_DFU_START)". Particularily, how does it fail? What do you mean by "hang up" and "seems not to worked". What is the state of the application seen from a debugger? Any relevant logs? Error code returned from sd_power_gpregret_set()?

Reply
  • Hi,

    First of all, as you write that you are a beginner with Nordic products, i wander why you are using a SDK 11 bootloader with a SDK 12.3 application? It could make sense if you have devices in the field that were based on SDK 11, but if not, then I suggest using everything from the same SDK version. Also, which chip are you using?

    For the question, the bootloaders in SDK 11 (legacy) and SDN 12.3 (secure) are very different, so you will need to make some adaptations in the application. Can you provide a bit more context to how you use  "NRF_POWER->GPREGRET = BOOTLOADER_DFU_START" and "sd_power_gpregret_set(BOOTLOADER_DFU_START)". Particularily, how does it fail? What do you mean by "hang up" and "seems not to worked". What is the state of the application seen from a debugger? Any relevant logs? Error code returned from sd_power_gpregret_set()?

Children
No Data
Related