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.

MSP430G2452: Update the FW on the MicroController

Part Number: MSP430G2452
Other Parts Discussed in Thread: MSP430G2001

As we have implemented an i2c interface on hte MSP430, I was wandering if I can update the code on the FLASH the device boots from using this interface:

1. Is it correct that the code on this MCU runs "in place"?

2. Has anyone tried this operation?

3. Is it better to copy the code to RAM, jump to RAM, program the FLASH?

4. I have not seen documented the address of the FLASH where the code resides (maybe just me not being able to find the documentation?)

Thanks

Marco

  • Hi Marco,

    Most MSP430 devices contain a bootstrap loader. Unfortunately the MSP430G2452 is one of the devices which does not. You have several options for programming an MSP430 including JTAG, but if you only have an I2C connection you may want to consider creating a custom bootstrap loader. Creating a Custom Flash-Based Bootloader (BSL) describes how to create a bootstrap loader for G2xx devices in section 2. I recommend reading through it and seeing if it works for your application. 

    Best regards, 
    Caleb Overbay

  • Hi Caleb,

    Thanks very much for your reply! I had other assignments on Friday, but today I am back on this. I have read the docs you point at. All is clear, aside for a few detail that I do not seem to be able to find documented. I am sorry if this is just me not being able to find them ....

    1. The BSL doc says that the exact BSL flash address is documented on the specific MC data sheet. I have not found a datasheet for the MP430G2452 with that info ...

    2. It is not clear what is the first step if there is no BSL to start with. I was thinking to put an app in FLASH (user app) using the "Load" function of the debugger (I use Code Composer Studio Version: 7.0.0.00042) that would erase and program the appropriate BSL and from that moment on using this new image (BSL) to FLASH new designs.

    3. For this purpose, another info I have not found is how much is the FLASH erase size.

    To summarize, could you point me to a document that has:

    a. memory map

    b. FLASH interface (sector size, erase size, etc.)

    For the MPS430G2453?

    Thanks very much!

    Marco

  • Marco Bertoncinm said:

    To summarize, could you point me to a document that has:

    a. memory map

    Datasheet, chapter: Table 8. Memory Organization

    Marco Bertoncinm said:
    b. FLASH interface (sector size, erase size, etc.)

    G2xx family users guide, chapter: Flash Memory Controller

  • Hi Marco,

    This device does not have a BSL so you won't find a datasheet that gives you that information. Ilmars has provided the rest it looks like. Let me know if you have trouble finding the requested info.

    I would start by downloading the example BSL then reading all of section 2 of the custom BSL document. The BSL described in this document has been designed for the MSP430G2001, which doesn't have a BSL by default. This example is a great starting place. However, it is based on UART instead of I2C. You'll need to modify the BSL example to fit your needs accordingly. 

    Best regards, 
    Caleb Overbay

  • Thanks Caleb and thanks Ilmars. Very much appreciated. I think for now I have all I require to start.

    Best regards

    Marco

**Attention** This is a public forum