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

Secure DFU over UART issue

Hi,

I have followed sequence in http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Fsdk_app_serial_dfu_bootloader.html&cp=4_0_0_4_3_4 

It says programmed 100% but example not running. Can you specify reason?

Working scenario nrfconnect image when programmed UART bootloader and example image normally

Not working scenario nrfconnect image when programmed UART bootloader and example by giving command nrfutil dfu serial -pkg dfu1.zip -p COM3

Seems softdevice is getting over written

Thanks

Parents
  • Hi,

     

    Could you clarify that by setting the sd_req you can do UART DFU properly ? 

    From the screenshot you provided, it seems that the bootloader receives the image, however the image was not verified and it's not copied into flash and the bootloader stay in bootloader mode without jumping to the application (because the application was invalid). This is dual bank DFU. 

    In the second case the image was copied properly. 

  • Hi Hung Bui,

    The first reply is given by me by changing sd_req to 0xA9 and it was working. But from that screenshot you can see that same image is copied twice i.e 0x26000-0x345c4, 0x35000-0x435c4 and is this expected scenario? I think image should be present only at one memory rage 0x26000-0x345c4. And the same is observed when mbr without softdevice and any hardware peripheral example is tested over serial link.

    Also MBR parameter page is not created. Please let me know why it is not created?

    Thanks

  • It's normal to have data copied twice. It's dual bank bootloader. The image is copied to a swap area first, then the swap area is verified (with CRC) after that it will be copied to the correct location. This is to avoid bricking the device if there is a corruption when sending the image, so you can always fallback to the original application. 

    I'm not sure which MBR parameter page you are looking for ? You mean the one inside the MBR or the one inside the bootloader ? You shouldn't have to worry about that page as it's for internal use between the bootloader and the MBR.

Reply
  • It's normal to have data copied twice. It's dual bank bootloader. The image is copied to a swap area first, then the swap area is verified (with CRC) after that it will be copied to the correct location. This is to avoid bricking the device if there is a corruption when sending the image, so you can always fallback to the original application. 

    I'm not sure which MBR parameter page you are looking for ? You mean the one inside the MBR or the one inside the bootloader ? You shouldn't have to worry about that page as it's for internal use between the bootloader and the MBR.

Children
Related