using nRF Connect update FW success but actually fail..

Dear:
  IC : nRF51822_xxAA
  SD: s130_2.0.1
  BL: SDK12.3 bootloader_secure with public_key
  AP: NUS
  MOBILE: iPhone 13 pro MAX with iOS 16.1.1

not always fail.  but often
How can I fix the bug?
the DFU app have same issue.


the attachment is process video, Pls help 

1. using nRF ToolBox(UART) check current version:1124
2. send command into DFU mode
3. using nRF Connect DFU and select file (xxx_1125.zip)
4. start upload file
5. APP SHOW "DFU upload was completed successfully!"
6. using nRF ToolBox(UART) check current version expect is 1125 but that still show 1124



 

Parents Reply Children
  • Hi Joe,

    The reason why you have to perform DFU twice is because of memory issue. This is when using the NordicDFU. S in nRF5 SDK the firmware is composed of 3 parts:

    1. SoftDevice (stack)

    2. Bootloader (does DFU)

    3. App

    Since the App and Bootlaoder are using the SoftDevice, the Softdevice version on the device needs to be correct, without which the device will be bricked.

    So, the Softdevice and Bootloader can be updated together because in case the Softdevice has updates, then the bootloader will not work with the new Softdevice. So they are updated together. It would be great to update all 3 together, but there's no space on the device to store SoftDevice+BootLoader+App in a secondary bank (during DFU). Hence in case there is App update, it is done in the second time. So it is the second DFU update that does the App update because then the SoftDevice version will match.

    -Priyanka

  • Hi, Priyanka:
      

    I found the problem and fixed it. 
    I added an extra program so that the bootloader doesn't do what it's supposed to do at boot.
  • Hi Joe,

    Glad to hear that your problem is fixed. Is it possible to explain a bit more on how the problem was fixed? If so that would be great for future seekers too. :) Also, kindly close the case in case of no further queries.

    -Priyanka

Related