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

bootloader can't start APPLICATION

Hi , I am using the SD 4.0.2, the SDK is 13.0.0_04a0bfd, and the IDE is IAR 8.11.1 to develop production, I integrated the DFU, and I download and updated the APPLICATION from nRF Toolbox-DFU successfully, but when 52832 reset and run to nrf_bootloader_app_start(MAIN_APPLICATION_START_ADDR), the system reset to DFU again, when I erased the UICR with nrfjprog and reset, the application runing well, so I assert the application is updated successfully, I don't know how to solve the problem, please help me ASAP, thank you very much!

the debug info as following:

APP:INFO:Inside main
APP:INFO:WDT enabled
APP:INFO:WDT ENABLED: 01
:DEBUG:In nrf_bootloader_init
:DEBUG:In real nrf_dfu_init
:DEBUG:running nrf_dfu_settings_init
:DEBUG:Enter nrf_dfu_continue
:DEBUG:Valid App
:DEBUG:Enter nrf_dfu_app_is_valid
:DEBUG:Return true. App was valid
:DEBUG:Enter nrf_dfu_app_is_valid
:DEBUG:Return true. App was valid
:DEBUG:Jumping to: 0x0001f000
:DEBUG:Running nrf_bootloader_app_start with address: 0x0001f000
:DEBUG:Disabling interrupts
:DEBUG:Setting SD vector table base: 0x0001f000
APP:INFO:Inside main
APP:INFO:WDT enabled
APP:INFO:WDT ENABLED: 01
:DEBUG:In nrf_bootloader_init
:DEBUG:In real nrf_dfu_init
:DEBUG:running nrf_dfu_settings_init
:DEBUG:Enter nrf_dfu_continue
:DEBUG:Valid App
:DEBUG:Enter nrf_dfu_app_is_valid
:DEBUG:Return true. App was valid
:DEBUG:Enter nrf_dfu_app_is_valid
  • @chaoren: When you mentioned "but when 52832 reset and run to nrf_bootloader_app_start(MAIN_APPLICATION_START_ADDR), the system reset to DFU again," you mean the device enter an infinite loop of jumping to application - reset - dfu - to application - reset ?

    If it's the case you may need to run the application debug mode and check what cause the application to reset. Most likely there was something caused an assert.

    I can see that you start WDT in your application, have you made sure you feed the WDT in your application ?

    When you see the issue, if you do a power reset, would the issue continue ?

Related