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.

Is it possible to program any MSP430 MPU with a LauncPad?

Other Parts Discussed in Thread: MSP430F5304

I have purchased this kit:



I want to program any MSP430 chip with this LaunchPad, is that possible?

I won't place any MCU in its own IC socket, instead I will connect RXD and TXD pins at the LaunchPad side to the relevant pins of an external MSP430 (like an ICSP connection).


For instance, assume that I want to program MSP430F5304 with LaunchPad:


My questions are:

  1. Is it possible to program any MSP430 chip with this kind of connection? If not, what subset of MSP430 family can I program this way?
  2. Exactly which pins on the both side must be connected with each other?
  3. How should I give supply voltage to the MSP430 to be programmed? (Externally (if so, in what range) or via LaunchPad)
  4. What should be the maximum length of this ICSP cable?


Thanks, any help will be appreciated.


    Hi hkBattousai,

    I don't know exactly which divides were supported by the Launchpad (besides Value Line parts and MSP430x2xx) since no official list was published so far. I assume that at least devices listed below should be supported (since they were supported by the CHRONOS firmware too):


    The Launchpad documentation states that all Spy-Bi-Wire devices were supported, so you should give it a try with your MSP430F5304.

    Pls notice: Not RXD AND TXD were used for programming the target device! You have to use RST(SBWTDIO) and TEST(SBWTCK) since those signals were the Spy-Bi-Wire connections! So, read the Launchpad Users Manual carefully (

    The Spy-Bi-Wire connection diagram is available from the MSP430 hardware users guide ( which is shown below too:

    In case of powering the device during programming/debugging this depends on the application! Be shire to always connect GND from the Launchpad with Ground (GND) from the target application. Also note that the Launchpad signal HIGH level is 3.6V.






    Hey Thats Gr8 Idea,

                                             You can also make your own flash emulation tool by copying the flash emulation side of the LaunchPad kit, If you have all the components and the firmware then you can find the Eagle Board file and Gerber files on LaunchPadWiki.

  • Here are lists of the devices that support spy bi-wire (listed as "2-wire JTAG") for the two IDE options. The list of devices is the same in each (so I assume these are compatible with other toolchains as well), but there is a lot of other useful info in them specific to the IDEs.

    CCS: (starting on page 16)

    IAR: (starting on page 16)

    These devices support spy bi-wire, so I assume they will all work with the launchpad. I know a number of people who have successfully pulled this off with various devices. (just make sure your reset pin isn't floating) The specific pins for TEST/RESET can be found in each device's datasheet.

    handy Hint: TI likes to update the documents often (good) but this often breaks the links (bad), so if the version changes (denoted by the letter following the document number, i.e. "slau138u" is revision "u" of "slau138") just search TI's site using only the document name (no revision number)

  • Eric Jonardi said:
    TI likes to update the documents often (good) but this often breaks the links (bad)

    Indeed. Even the link to slau157q doesn't work anymore just 4 days after you posted it. But I think, this one is caused by the additional space at the end of the URL :)
    Anyway, the search does not show this revision, it lists only slau157m, of course then reports a page load error.

    Sicne older versions of the files aren't available anymore, a generic link without revision that points to the latest revision would do fine. Or, like it is done unde rLinux for library versioning, a generic link points to the latest version, while the older ones are still available through the complete name. That would be best, since it is sometimes necessary to check the older versions (especially since there is usually no changelog available), especially with the errata sheets.

**Attention** This is a public forum