TMS320F28335: Error when writing to internal flash: ''C28xx: Flash Programmer: Device is locked or not connected. "

Part Number: TMS320F28335
Other Parts Discussed in Thread: TMDSEMU200-U

Team,
Could you please help with the below?

On a custom HW there are five TMS320f28335ZJZS MCUs in the same JTAG chain. 
CCS IDE (v7.3.0 or v11.x) is connected via a XDS200 (TMDSEMU200-U Blackhawk) and used to load a binary file in flash memory to write it.
This error happens unregularly (appr. 5 time out of 150 flashing, but has high impact as the faulty MCU has to physically be removed from the board), and could happen for any of the MCUs in the JTAG chain.
CCS IDE connects to the target MCU, and can access it's Flash memory.
But loading the binary for writing the flash is failing with the below error message:
   'C28xx: Flash Programmer: Device is locked or not connected. Operation cancelled.
    C28xx: File Loader: Memory Write Failed.
    C28xx: GEL: C:\testfile.out: Load Failed.'  
-How can the MCUs be recovered (without to have to physically change it/unsolder)?
-Is there a way to globally erase the flash and restart the flashing process?
-What tools or script could be used for testing the JTAG chain extensively and narrowing down the issue?

The HW has been checked (power up rails, CLK, reset, Voltage rails level during flashing, ..etc).
If needed I can share offine a PDF that describe the HW (Power tree, CLK, reset and voltage rails measurements) and the .ccxml JTAG chain cfg file.

Thanks in advance,

Anber

  • Hello,

    Apologies, but I will be OoO for the next few weeks so I routed this thread to another expert to support. Please expect a slight delay in assistance.

    Best,
    Matt

  • Anber,

    I'm theorizing that perhaps the order of operations in the GEL File may not be occurring consistently when you are flashing.  From the error message, I think the positive is that CCS didn't attempt to program the device or was interrupted, causing the flash to get locked.

    I'd like to make sure I understand the CCS settings for connecting/loading, etc   Below is a screenshot showing how to pull this up, I need to know the program/memory load options, as well as the auto-run and launch options.  These, along with the F28335 GEL file will determine what happens when you connect/load.

    Also, when device "fails" have you tried to manually connect to it either in the existing setup or perhaps re-populating it to another PCB, etc?

    Best,
    Matthew