Since this seems to have sparked quite a bit of confusion, I want to make this post complete and thorough. There are two ways to program an MSP430: the first is using four-wire JTAG, the second is using two-wire JTAG. The LaunchPad can only use the two-wire JTAG method, which is also known as Spy-Bi-Wire (SBW). For the rest of this post, I will be referring to the two-wire JTAG as SBW and four-wire JTAG as just JTAG.
I want to make sure this is clear before I continue; JTAG and SBW are two separate methods for programming an MSP430. The LaunchPad can program MSP430s using SBW, not JTAG. That being said, not all MSP430s can be programmed using SBW, some of the older MSP430s can only be programmed using JTAG. TI has a document, SLAU157, which shows which chips support either just JTAG or both JTAG and SBW.
Now that we know JTAG and SBW are different methods of programming newer MSP430s, how do we use the LaunchPad to program all these cool devices? Spy-Bi-Wire needs two wires to program an MSP430: RST and TEST. The image below shows where you can find these two pins on the Launchpad.
The programming pins on the LaunchPad |
DEV.BO programming header |
The programming connection on the LaunchPad's side |
Hopefully that should clear up any confusion on how to program the DEV.BO. Using this method, you can also program any other MSP430 that supports SBW; just connect up the necessary pins and you can program away.
I have two last things I want to mention. The RXD and TXD pins are not needed for programming but I included them on the DEV.BO in case they are ever needed for a project. The second thing is that you need to make sure the correct chip is selected in CCS or whatever IDE you use when programming the MSP430, otherwise it probably won't work.
I hope this clears up any confusion on how to program external MSP430s, including the DEV.BO, using the LaunchPad. Please leave a comment if you have any questions about this post. Don't forget to check out the DEV.BO, which is available in my online store.
Comment away!
Hi this really helped me to get some test boards up and running, programming an MSP430G2231 off the launchpad. I am thinking of doing a small production run (approx 20 boards) and was wondering if you could recommend anywhere that is good to buy a small quantity of chips from, any place i have looked it is about $2 a chip + outrageous postage ( i live in Australia) making it more cost effective to just by launchpads which seems like a very poor way to source chips.
ReplyDelete@Hugoagogo - Glad I could help! As for buying the MSP430 in small quantities, you will have to accept a large markup from the 1k pricing. Also, the DIP version of the chip is a decent amount more expensive than the surface mount packages.
ReplyDeleteThough I do not know what is best for Australia, I would look at either Mouser or DigiKey as they both provide international shipping. You can also order in quantities of 25 if you are making 20 boards, this adds some savings with Mouser.
http://www.mouser.com/Search/Refine.aspx?Keyword=msp430g2231&Ns=Pricing%7c0&FS=True
@NJC Yea i know i can accept a reasonable markup on the chips it is the $40 postage for 50 grams of stuff that gets me.
ReplyDeleteAlso i haven't really done much surface mount soldering before do you know any good guides on this?
Yeah, I always hate paying more for shipping than my items cost. I try my best to save my orders up so I can order LOTS of stuff at once. Check out the eevblog forums, they might have some good recommendations for Australian suppliers.
ReplyDeleteFor a SMD soldering tutorial, check out SparkFun.
http://www.sparkfun.com/tutorials/36
Has anyone had experience trying to using a F-series MSP430 with the launchpad? In particular, I see these MCUs support SBW and have exactly the same pinout (including Vcc, Vdd, Test & RST) than the "value" series.
ReplyDeleteShould they work or is there something I am missing?
Dimitri: Using an F-series device which has the same pinout will work fine. For example, the MSP430F2013 can be put in the target socket and it will program with no problem. I actually mentioned this in one of my earlier posts; the LaunchPad is really a great device.
ReplyDeleteThanks for the quick response, NJC. I have ordered a few Launchpads, can't wait to start experimenting with them and the F2013's 16-bit ADC!
ReplyDeletehai, i am newbie, i recently ordered MSP430F5527,if i buy launchpad, will i be able to program the above mentioned ic. thanks
ReplyDeleteAs you probably knew, the LaunchPad pcb has ground plane construction. This means all the empty space on the board is actually GND. It's easy to extend the header and add the missing GND pin. You only have to drill the hole, no wires needed. Unfortunately there is empty space only in the other (left) end of the header.
ReplyDeleteHi!
ReplyDeleteI need a little help. Have you encountered the problem when powering the target from separate source even if the target power is off the target still gets powered from the debugger rst through the clamp diodes. I can't get a power cycle without de-attaching the debugger. Do you have some workaround for this?
Alex, I also have this problem and I also just unplug the debugger. It is quite frustrating. I wonder if anyone else has come up with a solution to this? If not, it's up to TI to release better firmware for the LaunchPad.
ReplyDeleteThanks for a really helpful post. Do you happen to have any recommendations for headers/cables that one can use if one wishes to use the J4 holes for communications between a Launchpad and another board? I've trolled through the web but haven't seen any simple answers to the question.
ReplyDelete@cpt - I believe the J4 header is the same size as the one from the EZ430 boards. If I remember correctly, somewhere in the EZ430 documentation (a $20 tool which predates the LaunchPad) TI states what should be used there. The best advice I can give would be to find the right sized headers and make your own makeshift cable converting the J4 holes to a standard size.
ReplyDeleteThere are Launchpads revisions with different sequence of the pins. For example in rev. 1.5.
ReplyDeletehey your link to the , SLAU157, is not working. Could kindly update it if you could?
ReplyDeletethanks
Thank you for letting me know that the link is broken. I will fix it shortly.
Deletewww.ti.com/lit/pdf/SLAU157
Thanks a lot. Helped me a lot.
ReplyDeleteHey i have one question. SBW is supported by not only the MSP value line and series 5 but all the other new 430s too right? so Since they use SBW, cant I use my Launchpads SBW JTAG to program them?
ReplyDeleteI mean, SBW must be universal right? so if on a certain msp430 says it can be programmed using SBW, would I be able to?
Im just curious.
Im talking about the 4.33$ development board by TI
Generally speaking, the MSP430 LaunchPad can be used to program any SBW supported device. Almost all of the new (if not all of the new) MSP430 devices can be programmed via SBW. That being said, if the firmware on the LaunchPad does not support a certain device, it might not be able to program it. Your best bet would be to ask TI directly if a chip is supported.
DeleteHi where can i get MSP430 launchpad schematic and layout from?
ReplyDeleteThere are many MSP430 LaunchPads, however all of them have the schematic available on their product page. As an example:
Deletehttp://www.ti.com/tool/MSP-EXP430G2
The schematic is available under the Hardware Design Files document. Hope that helps!
THANKS can you please confirm how many layers does the MSP430 exp430g2 board have and if it has separate Ground and Supply planes ?
ReplyDelete