F29H850TU: automate the initial flashing process.

Part Number: F29H850TU
Other Parts Discussed in Thread: UNIFLASH

We need to automate the initial flashing process. I'm using the UniFlash/DSLite command line tool:

First run (MCU is in bankmode=0) — works fine:

  1. Set bankmode to 1
  2. Flash application (FlashImageOperation=1)
  3. Flash application (FlashImageOperation=0)
  4. Reset, run

Second run (bankmode is already 1) — fails:

  1. Flash application (FlashImageOperation=1)
  2. Flash application (FlashImageOperation=0)
  3. Reset, run

Error:

error: C29xx_CPU1: Error writing the init algorithm. Flash algorithm returned error code. Operation cancelled.

error: C29xx_CPU1: File Loader: Memory write failed: Unknown error

Failed: File: Multiple Files: Load failed.

The same error occurs when attempting to set bankmode back to 1.

The only thing that changes between the first and second run is that an XRS reset is performed during the bankmode=1 switch. DSLite/C29 supports via CLI:

  • 0. CPU Reset
  • 1. CPU Reset without halt

When I perform a reset with halt (-r 0), it executes but the MCU continues running (status LED keeps blinking). I'm concerned the reset isn't actually working, which is why the second flash attempt fails.

I have the latest version of DSLite/UniFlash. I can reproduce this reliably. We're receiving 20 devices in the coming days and would like to test an initial production process.

 

  • Hi Jan,

    When you are referring to a "Reset", I'm assuming you are referring to a CPU reset. I'm only highlighting this to make sure you are performing an XRSn right after the bank mode switch.

    When you XRSn and the second flash attempt fails, are you able to check the SSUGenRegs.SSUMODE register to make sure you're in SSUMODE1? And is the bankmode actually the desired BANKMODE1? Could you provide any more details on your exact steps, if possible as well.

    Best Regards,

    Aishwarya