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

Bootloader updated via OTA but working not changes

Hi 

I am using a buttonless DFU to do OTA for my application. Everything is working fine up to now, but now my custom board got few modifications of using PIN 16 for USB POWER INPUT, Former devices have bootloader with  NRF_BL_DFU_ENTER_METHOD_BUTTON as 1.

Since we are connecting our device to USB charging and trying to do FOTA for application, PIN 16 is high and even the FOTA is successful it remains in bootloader(DFUTARG) mode.

So I changed my bootloader NRF_BL_DFU_ENTER_METHOD_BUTTON as 0 and updated my application now everything is working fine when I flash BL+BL_setting+APP+SD  manually.

Many devices don't have the accessibility to update firmware manually, So I tried to update using FOTA SD+APP+BL, DFU PROCESS is complete and successful but the behaviour of pin 16  after FOTA remains the same .

Is that the BL is not updated? I cannot put traces as UART pinouts are not provided on the custom board.

  • Since we are connecting our device to USB charging and trying to do FOTA for application, PIN 16 is high and even the FOTA is successful it remains in bootloader(DFUTARG) mode.

     That is to be expected, since the bootloader checks this pin as long as NRF_BL_DFU_ENTER_METHOD_BUTTON is set to one (and as long as you didn't change the button used for this). It will detect the "button" being pressed, signaling the device should expect a Firmware Update.

     

    Many devices don't have the accessibility to update firmware manually, So I tried to update using FOTA SD+APP+BL, DFU PROCESS is complete and successful but the behaviour of pin 16  after FOTA remains the same .

     It may sound like the old bootloader is still running. Can you try to update only the BL + SD in one packet, and then the APP, and see whether the device still advertises as DfuTarg, or the new application?

    If it still advertises as DfuTarg:

    Can you try to update to only a new application using the same softdevice that you used to use? You can use the old application, but change something so that you are able to see whether it is the new or the old application that is running. 

    As far as I can tell, the approach you describe should work, but I am trying to narrow down where the issue may is. 

    BR,

    Edvin

  • Thanks for the information. I will try updating BL+SD first then the application and let you know the results

Related