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.

MSP430F149: In circuit serial programming

Part Number: MSP430F149
Other Parts Discussed in Thread: MSP-FET

Hello,

i am using msp430f149 controller for my products from long time. Now i need to update some features of my sold product and for that i have developed new program.

Since my all sold instruments  are located at different it is not possible to go at site and program it using MSP-FET.

So from now a day i want to include in circuit serial programming in my all products so in feature i will not face this issue again.

It is possible to program MSP430f149 with UART without using MSP-FET ?

can i download .hex file directly to controller using serial communication without any programming tool ?

what hardware i need to add for this functionality ?   

In ti MCU serial programming from UART is known by which word ? is ICSP or any thing else ?

any help is greatly welcomed... 

  • This device is with UART BSL, and it can be flashed using TI open source BSL_Scripter software in combination with USB / UART bridge cable / chip. Something like this...

    https://www.ebay.com/itm/292004350468

    Of course, you can implement this (USB / UART bridge hardware) on your board. However, I never used old 1xx family, so don't know how BSL is working, what commands are supported, and if it is erasing info A segment in case of wrong password.

    Beside factory preloaded TI BSL, you can also implement your own updating solution. For example, in my case, with 2xx devices, it is checked if (any panel) button is pressed at power up. If button is not pressed, device boot normally. If button is pressed device enter to updating firmware mode by UART. When the firmware update is done, device reset itself, and continue to work with new firmware. Custom boot loader is placed in flash memory part that is not used by main application.  

  • Hello,
    Thanks for your reply,

    is there any application note that contains details description of process, I have searched over internet but unable to understand proper software and hardware flow
  • Everything related to TI factory preloaded BSL is covered by this document...
    www.ti.com/.../slau319p.pdf
  • Hello,

    I have go through that data sheet but i have some confusion.

    What i understand is below ...

    1. first i have to load some code in BSL memory of controller usign P1.1 and P2.2 pins
    2. then i will redirect PC to new location of BSL memory
    3. it will erase old program and copy new code in program memory
    4. then i soft restart microcontroller to start executing new code.

    Is this right or wrong ???
  • BSL is factory preloaded to device ROM. Some BSL versions are with bugs, or without full command set, whatever. So factory preloaded (old) BSL is used for safe download updated (new) version of BSL to device RAM. And than this updated (new) BSL version is used for device flashing. If used commands of factory preloaded BSL are enough and without bugs, than this one can be used as it is for device flashing.
  • Hello,

    thanks for your reply....

    I have connected DB9 port as below with my controller.

    controller pin                   DB9 pin

    P1.1                        2

    P2.2                        3

    RST                        4

    TCK                        7

    I have used PC817 opto which give isolation.

    i got synchronization error when i go to download code.

    How can i solve this issue .................???

  • I am afraid that on (PC) DB9 voltage swing is -12V / 12V, while MSP430 UART working on 0 /3.3V levels. Are you sure that PC817 can adjust it?

  • Hello,
    i have used opto PC817 in between which give me a level conversion of 3.3 V for microcontroller.
  • "It is possible to program MSP430f149 with UART without using MSP-FET ?"

    If the part has a uart bootloader. Check the datasheet to be sure.


    "can i download .hex file directly to controller using serial communication without any programming tool ?"

    Yes. Conceptually you only need to flip some pins in a certain way. If you have fast hands, it can be done as well.



    "what hardware i need to add for this functionality ?"
    You could use a high powered rf transceiver, a phone, a modem, a programmer, a person flipping pins, ...., All depending on how you want to do it.
  • Hello,

    i have found below scope capture when i run BSLDEMO2 tool

    Image 1 : yellow line is data received from controller which looks like 0xA0 (NCK)

    Blue line is data send from PC. as per code oF BSLDEMO.exe it will send 0X80(SYNC) for three times

    Image 2 : Yellow line is going to TCK pin of microcontroller ( for msp430f149 series TEST pin is TCK )

    Blue line is RST pin of controller

    here i think that signaling is proper but i don't receive 0X90(ACK) and so that BSLDEMO.exe gives synchronization error.

    below is image of ERROR 

    Please suggest a solution....

  • Hello,

    IS there any one have Solution   ????????

**Attention** This is a public forum