This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430F5529: get back to the "factory" state procedure

Other Parts Discussed in Thread: MSP430F5529

HI all,

After flashing MCU with some code, it (code) will be started after power is applied every time.

I'm looking for the way to test manufacturing process, where MCU invokes BSL/USB upon power up without pushbutton, i.e without utilizing BOR while PUR high. I have both JTAG and USB connectors.


What is the easiest way to put MSP430F5529 back into "factory" state?

Regards,

Alexey

  • Hi Alexey,

    It sounds like you want to erase a part so that it is blank, making the BSL be entered automatically when you connect it to USB. A fairly easy way to erase the part without programming in any new code would be to use the Elprotronic Fet-Pro430 Lite software - you can set it up for the device you use and the memory area that you want to erase, and then just push the "erase" button in the GUI.

    Alternately, you could enter the BSL with the pushbutton this time, and use the BSL Scripter or Python USB field firmware updater to just erase the device and not load new code. After this you could the next time get in with the "blank part" USB BSL behavior (automatic BSL entry).

    Regards,

    Katie

  • Katie Pier said:
    A fairly easy way to erase the part without programming in any new code would be to use the Elprotronic Fet-Pro430 Lite software - you can set it up for the device you use and the memory area that you want to erase, and then just push the "erase" button in the GUI.

    Thanks, Katie for quick reply.

    When I tried to ersase memory with Fet-Pro430 Lite software, it asked to erase "all memory without INFO-A Segment" or "user defined memory space".

    1. Will option "erase all memory content" get MCU exactly in state MCU was after leaving factory or something might be different?

    2. What about  BSL code? How can it be updated exactly to the relevant version used in original MCU revision?

    let's say rev.H for msp430f5529

    3. Could you, please, explain, what is stored in INFO-A Segment?

    Regards,

    Alexey

  • Hi Alexey,

    Alexey Orishko said:
    1. Will option "erase all memory content" get MCU exactly in state MCU was after leaving factory or something might be different?

    yes, after erasing all memory segments MCU will be similar to new MCU from factory. 

    Alexey Orishko said:
    2. What about  BSL code? How can it be updated exactly to the relevant version used in original MCU revision?

    In msp430 BSL resides in password protected region, so even if you do erase all memory content (MASS ERASE), it is not going to delete the BSL location.

    Alexey Orishko said:
    3. Could you, please, explain, what is stored in INFO-A Segment?

    INFO- A segment can be used to store calibration data or any other data which is required to be retained even after firmware upgrade ( MSP430 can be programmed block wise leaving INFO segment intact). 

    Regards,

    Ajit

  • Alexey Orishko said:
    1. Will option "erase all memory content" get MCU exactly in state MCU was after leaving factory or something might be different?

    5x family supports replacing the BSL. "Erase all memory content" won't touch this area, but if it has been altered, it will stay altered.

    Erasing all memory content by default won't erase the INFOA segment, as it has an additional protection layer. However, a mass erase by the BSL (or the proper erase option in the flashing tool) will erase it together with the other INFO segments and the main memory.

    Other than the 2x family, the 5x family won't hold any factory-provided calibration data in INFOA (it is found instead in the separate TLV structure, which cannot be erased). But of course you can profit form the additional protection by storing e.g. a serial number there, or your own calibration data for the assembled device.
    So erasing all memory content will indeed restore factory condition.

  • Jens-Michael Gross said:

    Other than the 2x family, the 5x family won't hold any factory-provided calibration data in INFOA (it is found instead in the separate TLV structure, which cannot be erased). But of course you can profit form the additional protection by storing e.g. a serial number there, or your own calibration data for the assembled device.
    So erasing all memory content will indeed restore factory condition.

    Thanks for clarification. By the way, could you point me out to the description of TLV structure, doc/ch?

    Regards,

    Alexey

  • could you point me out to the description of TLV structure?

    OK, found it in slau387

    /alexey

**Attention** This is a public forum