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

button_less DFU SDK13

Hello, I'm trying the bootlader of SDK13.1, with SD S132_nrf52_4.0.2 I manage to send a ZIP file to the bootloader, but the application doesn't launch. I've tested with buttonless example, but the advertising is still dfuTarg. There must be something I've missed, but I don't know what. I someone could help me... Thanks

  • Are you able to debug the bootloader? Does it reach the nrf_bootloader_app_start(MAIN_APPLICATION_START_ADDR) statement in nrf_dfu_init() in nrf_dfu.c? If so then it should branch to the application and you should be able to debug the application. Please verify that you do not end up in the app_error_handler().

  • hi, to debug the bootloader, i've enabled the nrf_log module, include the several required librairies and paths to include files, and finally add uart support and nrf_log_backend support in sdkconfig.h.

    As the target file was too big for the bootloader allocated memory, I've rised it to 0xD000. But no message on debug window...

    I just gave up this solution to classic debug to see that indeed, the bootloader app start stuck. I then erase the entire chip by means of a real Jlink-Pro and Jflash and not nrfgostudio. I programmed the softdevice with nrfgostudio then the booloader.

    Then it worked...

    I managed to programm the buttonless app. I guess this problem is solved.

    Nevertheless my old application that work without bootloader doesn't work with it, and I have to erase the chip, reprogram softdevice and so on at every test... I've changed the memory footprint to fit bootloader behaviour. Everyday has its problem :/

  • keil SDK13 ble OTA ,upgrade failure causes the device to become unbootable, requiring re-flashing. How can this be resolved? We are using the bootloader_secure_ble bootloader. Does it support dual-bank OTA? Could you provide a reference sample?

  • Hi,

    The secure_bootloader_ble sample support both dual bank and single bank updates. The update will be performed as dual bank if there is enough space for it, but if the application image is too large to allow dual bank update, it is performed as single bank. See Dual-bank and single-bank updates.

    If update failes or is aborted during a single bank update, the device is stil recoverable, as it will enter DFU mode, and will requier a successfull DFU operation before the device can function as normal (running the application image). Re-flashing is not needed to recover. If that is required in your case that need further investigation, and I ask that you make a new question for that.

Related