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

nRFgo Studio and bootloader programming

Hi everyone, I must to program my device from nRFgo Studio (rel. 1.21). So I do this procedure:

  1. I program the Softdevice (in my application S110 rel. 7.0.0);
  2. I program the Bootloader (in this case I used the bootloader from Nordic rel. SDK6.1, see attachment);
  3. I program my application.

Well, when I programmed the bootloader, my device goes in bootloader mode. But then, when I programmed the application, the device remain in bootloader mode also if nRFgo Studio said that the app.hex was programmed successfully.

After I have programmed the bootloader(point 2), if I try to program the target via smartphone, with Nordic DFU app (into nRF Toolbox) , after the download, the application starts well.

Why with nRFgo Studio doesn't happen?

Thank you for help Paolo A.

bootloader.hex

Parents
  • The device will always start in bootloader mode and check if there is a valid application on the device. This is done by reading the bootloader settings flash page and checking if a certain flag is set.

    The flag is by default set to BANK_INVALID_APP = 0xFF, indicating that there is no application present on the device. The flag will be set to BANK_VALID_APP = 0x01 after an OTA DFU has been successfully completed.

    The flag can be set manually in bootloader_settings.c by changing line 18, i.e.

    uint8_t  m_boot_settings[CODE_PAGE_SIZE] __attribute__((at(BOOTLOADER_SETTINGS_ADDRESS))) __attribute__((used)); 
    

    to the following

    uint8_t  m_boot_settings[CODE_PAGE_SIZE] __attribute__((at(BOOTLOADER_SETTINGS_ADDRESS))) __attribute__((used))= {BANK_VALID_APP};  
    

    For more information, please see question E in our DFU FAQ

Reply
  • The device will always start in bootloader mode and check if there is a valid application on the device. This is done by reading the bootloader settings flash page and checking if a certain flag is set.

    The flag is by default set to BANK_INVALID_APP = 0xFF, indicating that there is no application present on the device. The flag will be set to BANK_VALID_APP = 0x01 after an OTA DFU has been successfully completed.

    The flag can be set manually in bootloader_settings.c by changing line 18, i.e.

    uint8_t  m_boot_settings[CODE_PAGE_SIZE] __attribute__((at(BOOTLOADER_SETTINGS_ADDRESS))) __attribute__((used)); 
    

    to the following

    uint8_t  m_boot_settings[CODE_PAGE_SIZE] __attribute__((at(BOOTLOADER_SETTINGS_ADDRESS))) __attribute__((used))= {BANK_VALID_APP};  
    

    For more information, please see question E in our DFU FAQ

Children
Related