DA16200 Recovery from CRC failure of RTOS image


Module: DA16200 running on the EVK

SDK: 3.2.6

The Scenario (example only):

  1. System is running from Boot index 1
  2. I am upgrading the RTOS 1 and from some reason the upgrade stops. For example power down, lost connectivity, and any other reason.
  3. In the next reboot the chip will still try to run from Boot index 1 but I will get CRC failure and system will remain in boot mode (MROM)

This can happen also if my starting point was boot index 0 and after the failure upgrade I am trying to switch to that boot index 

My problem is that I dont have a way to switch to the other boot index (0 in this example).

The commands in MROM mode do not include the command to change boot index.

Can you suggest a way to recover from this scenario?

  • Hi There,

    Thank you for posting your question online.
    In order to change the boot index you will have to use the following commands:
    [/DA16200] # boot_idx 0 // change boot index from image #1 to image #0
    [/DA16200] # reboot

    Could you share the exact CRC error code you got in order to understand the reason of this crash?
    If you could please share the full logs as well that would be helpful. Are you trying to update the FW with a custom image you have created, with a pre-compiled image we provide?

    Kind Regards,

  • Hi

    1. When I get CRC error I dont have the /DA16200 prompt. Instead I have the /MROM prompt and in that case the boot_idx is not a valid command. My question is how can I switch boot index without that boot_idx command.

    2. As I wrote the CRC error is because the copy of the new image to the flash stopped in the middle. I simulated it simply by closing the tera term in the middle of the copy. I assume it can happen in a real scenario in case someone disconnected the DA16200 from the Host PC.

  • Hi There,

    Thank you for the reply.
    You can find all the available MROM commands on the UM-WI-056, on chapter B3, page:89

    And you can set the address according to the Table 31 so you can change boot index:

    Kind Regards,