EmbeddedRelated.com
Forums
Memfault Beyond the Launch

Recommendations for MSP430 dev system

Started by on laplace.astro.cornell.edu February 7, 2005
Hi folks,

I've been using 8-bit micros (AVR) programming in assembler, but
for a new project I'll be handling a fairly complex interface,
and will also need to do some 26 bit math (with mult/div) to
calculate coefficients to send to a DSP.  I think it's time
to move up to 16 bits and ANSI C, and after looking over old 
posts in this forum the MSP430 is my current (tentative) choice.

An opinions on whether the move to 16 bits is sensible (stay
at 8? move on to ARM/32 bits?) would be welcome, as would
suggestions of other families.  Speed is not a major factor
as the MCU will be used primarily for interfacing.  Low power
may play a role, but I haven't yet settled on whether battery
power is a sensible option for this project so low power may
not prove important in the end.

There is a bewildering variety of MSP dev boards out there.
I haven't yet settled precisely on a part, and I know that
will help me with my selection, but in the meantime I'd
like recommendations for an MSP dev board that will help
me get started with this family.  Several buttons and LEDs
and headers for i/o pins would be great (like the STK500 for 
the AVR); a few 7-seg digits or an LCD would be nice but not 
necessary; a socket/header for programming parts to use in a separate 
breadboard would also be essential.  An included C compiler is 
also a high priority; I don't know yet if this project will
come near the 4k limit of the free compiler.

I see TI has a newish line of USB-based boards.  Any opinions?

The EmbeddedKits.com bundles have caught my attention:

http://www.embeddedkits.com/msp430dvswsoftware.htm

The board + module + ImageCraft compiler & NoICE debugger is $355.
No buttons/LEDs, but the module can easily move to a breadboard.
Have any of you had any experiences with EmbeddedKits products?
The Qudravox compiler costs more; what does it offer?

The SoftBaugh products also look attractive, though it would
be nice if they offered similar bundles, at least of the hardware.

My budget is a few $100.

Thanks for any input,
Tom

-- 

To respond by email, replace "somewhere" with "astro" in the
return address.
> calculate coefficients to send to a DSP. I think it's time > to move up to 16 bits and ANSI C, and after looking over old > posts in this forum the MSP430 is my current (tentative) choice.
A set of thoughts, which should be taken as a data point rather than a recommendation: Moving to MSP430, especially if you are programming in C, is a relatively small incremental step. It is probably no extra trouble to jump straight to ARM, and might be a wiser longterm choice, particularly if funds are limited. Here are some factors to consider: * Both ARM devices and MSP430 are only available in surface-mount packages. Cost of prototyping is very similar. * Similar hardware problems - e.g. 3.3V I/Os - have to be solved for either design. * In small quantities at least, the price of an ARM variant (Philips LPC series, for instance) is similar to or even cheaper than a high-end MSP430. * Your MSP430 toolchain will be specific to the MSP430. An ARM toolchain is likely to be retargetable to a wide variety of other ARM-cored parts. So it's a better investment. If the peripherals on a specific MSP430 variant are not compelling, ARM is more likely a better buy. My advice would be to keep it cheap on the hardware side because this doesn't sound like a big money-spinning application. Stick to a cheap wiggler. Rowley makes a very good MSP430 compiler; I'm using it in a commercial day-job application right now. However it is outside your budget unless Rowley has special hobbyist pricing. I'd recommend mspgcc which is adequate and free. On the hardware side you could get yourself set up with a couple of easy-to-use eval boards and a parallel port JTAG adapter from Olimex for under $100. ($30 each for the boards, $10 for the JTAG). Several of the buyware ARM toolchains are simply proprietary IDE wrappers around the GNU toolchain. Frankly I do not think any buyware ARM compiler is worth the money and I strongly recommend gcc. For the hardware, again you can get a cheap parallel JTAG wiggler from Olimex. They also sell some cheap Philips-based EVBs. If you search on eBay you'll also find a few other low-cost ARM EVBs from time to time (from people in Hong Kong). I personally have the STK500, and Olimex's MSP430-targeted JTAG adapter and a couple of their MSP430 "chip-boards" on my desk. I also have a Macraigor Wiggler and several different ARM-based EVBs. Right now I am doing my low-end stuff around AVRs because I have a lot of assembly subroutines that wouldn't migrate easily. But large AVRs are so expensive in prototype qty ($8.75 @1pc for a Mega32) that it is seriously tempting to move everything into a cheap ARM part and standardize. I do have a couple of AVR projects written in C...
Tom Loredo wrote:
> Hi folks, > > I've been using 8-bit micros (AVR) programming in assembler, but > for a new project I'll be handling a fairly complex interface, > and will also need to do some 26 bit math (with mult/div) to > calculate coefficients to send to a DSP. I think it's time > to move up to 16 bits and ANSI C, and after looking over old > posts in this forum the MSP430 is my current (tentative) choice. > > An opinions on whether the move to 16 bits is sensible (stay > at 8? move on to ARM/32 bits?) would be welcome, as would > suggestions of other families. Speed is not a major factor > as the MCU will be used primarily for interfacing. Low power > may play a role, but I haven't yet settled on whether battery > power is a sensible option for this project so low power may > not prove important in the end.
The low power is probably the key. If power is less important than maths, then look also at the Philips LPC213x series and TI have just released their TMS470 ARMs, plus Atmel are releasing their AT91SAM series. ( and also ADi, STm, Sharp ... ) Almost EVERYONE is doing some form of ARM Embedded controller, and you will find in some cases you do not need the DSP, so this path has more educational-lifetime than an interim 16 bit solution. -jg
Hi Tom,

Also, have a look to Philips LPC2xxx ARM7TDMI-s processor.

To complet your MSP or ARM dev. kit, you would need a JTAG interface 
Emulator. Please have a look on the Chameleon POD product from 
http://www.amontec.com.

The Chameleon POD can be use for emulating JTAG Debug on Coldfire, AVR, 
MSP430 and ARMx processor, and many other processors and FPGAs.

For ARM processor series, please use the Wiggler or Raven configuration 
of the Chameleon  POD (ARM debug ValuePack) + ocdliremote.dll + gnuarm 
tool chain http://www.amontec.com/fix/gnuarm/.

For the MSP430 processor, please use the MSP430 JTAG interface 
configuration of the Chameleon POD with the MSP430 Kick Start C compiler 
and debugger (free for assembly language on http://www.ti.com/sc/msp430) 
or MSPGCC ( free C compiler and debugger on http://mspgcc.sourceforge.net )

Regards,
Laurent

Tom Loredo wrote:

> Hi folks, > > I've been using 8-bit micros (AVR) programming in assembler, but > for a new project I'll be handling a fairly complex interface, > and will also need to do some 26 bit math (with mult/div) to > calculate coefficients to send to a DSP. I think it's time > to move up to 16 bits and ANSI C, and after looking over old > posts in this forum the MSP430 is my current (tentative) choice. > > An opinions on whether the move to 16 bits is sensible (stay > at 8? move on to ARM/32 bits?) would be welcome, as would > suggestions of other families. Speed is not a major factor > as the MCU will be used primarily for interfacing. Low power > may play a role, but I haven't yet settled on whether battery > power is a sensible option for this project so low power may > not prove important in the end. > > There is a bewildering variety of MSP dev boards out there. > I haven't yet settled precisely on a part, and I know that > will help me with my selection, but in the meantime I'd > like recommendations for an MSP dev board that will help > me get started with this family. Several buttons and LEDs > and headers for i/o pins would be great (like the STK500 for > the AVR); a few 7-seg digits or an LCD would be nice but not > necessary; a socket/header for programming parts to use in a separate > breadboard would also be essential. An included C compiler is > also a high priority; I don't know yet if this project will > come near the 4k limit of the free compiler. > > I see TI has a newish line of USB-based boards. Any opinions? > > The EmbeddedKits.com bundles have caught my attention: > > http://www.embeddedkits.com/msp430dvswsoftware.htm > > The board + module + ImageCraft compiler & NoICE debugger is $355. > No buttons/LEDs, but the module can easily move to a breadboard. > Have any of you had any experiences with EmbeddedKits products? > The Qudravox compiler costs more; what does it offer? > > The SoftBaugh products also look attractive, though it would > be nice if they offered similar bundles, at least of the hardware. > > My budget is a few $100. > > Thanks for any input, > Tom >
Thanks for the replies so far, which are already helpful.  To guide
further comments:

larwe@larwe.com wrote:
> > If the peripherals on a specific MSP430 variant are not compelling, ARM > is more likely a better buy.
For this application the most important "peripherals" are just i/o pins for talking to pushbuttons, several encoders, and a simple display (some individual LEDs, a couple 7-seg digits, and possibly a small LCD). No A/D or D/A needed. However, I do need SPI to communicate with the DSP (I can use basic i/o pins for this, but perhaps some processors support it more directly). And a UART and timer. USB may be added down the road, but it's not a killer requirement at present.
> My advice would be to keep it cheap on the > hardware side because this doesn't sound like a big money-spinning > application. Stick to a cheap wiggler.
It's a commercial application, but low volume (I'd guess hundreds to a few thousand). Cheap is definitely attractive, but I'm willing to spend more than a hobbiest might.
> Frankly I do not think any buyware > ARM compiler is worth the money and I strongly recommend gcc.
I am very familiar with gcc from my other job (I'm an astronomer and develop scientific software in Python, C, and Fortran). I haven't used it for embedded programming, but I'll have no trouble with a command-line environment. Thanks again, Lewin, Jim, Laurent, for the comments. Further comments appreciated! -Tom -- To respond by email, replace "somewhere" with "astro" in the return address.
Hello Tom,

These guys carry Olimex prototype boards. I bought some there:

http://www.sparkfun.com/shop/index.php?shop=1&cart=172360&cat=9&

There is also an MSP430 Yahoo forum if you get stuck or have a tough 
question. Wish it was on usenet but at least it's there and there are 
(so far) no off topic rants or flaming wars.

Regards, Joerg

http://www.analogconsultants.com
In article <1107812328.426210.309380@o13g2000cwo.googlegroups.com>, 
larwe@larwe.com says...
> > calculate coefficients to send to a DSP. I think it's time > > to move up to 16 bits and ANSI C, and after looking over old > > posts in this forum the MSP430 is my current (tentative) choice. > > A set of thoughts, which should be taken as a data point rather than a > recommendation: > > Moving to MSP430, especially if you are programming in C, is a > relatively small incremental step. It is probably no extra trouble to > jump straight to ARM, and might be a wiser longterm choice, > particularly if funds are limited. Here are some factors to consider: > > * Both ARM devices and MSP430 are only available in surface-mount > packages. Cost of prototyping is very similar. > * Similar hardware problems - e.g. 3.3V I/Os - have to be solved for > either design. > * In small quantities at least, the price of an ARM variant (Philips > LPC series, for instance) is similar to or even cheaper than a high-end > MSP430. > * Your MSP430 toolchain will be specific to the MSP430. An ARM > toolchain is likely to be retargetable to a wide variety of other > ARM-cored parts. So it's a better investment. >
The things I find attractive about the MSP430 are: * Good timers with multiple clock inputs and many PWM and capture modes. * Very good low-power modes (down to a few microamps for an RTC function between active sessions). * 8 channels of 12-bit ADC with reference. * 2 UART/SPI ports Some of these can be found on the Philips chips, but I'm not sure you can get them all in one chip.
> If the peripherals on a specific MSP430 variant are not compelling, ARM > is more likely a better buy. My advice would be to keep it cheap on the > hardware side because this doesn't sound like a big money-spinning > application. Stick to a cheap wiggler.
I like ARM chips too---when there is a lot of number crunching to do. I've got one of the LPC216 boards on the shelf---just waiting for the round tuit.
> > Rowley makes a very good MSP430 compiler; I'm using it in a commercial > day-job application right now. However it is outside your budget unless > Rowley has special hobbyist pricing. I'd recommend mspgcc which is > adequate and free. On the hardware side you could get yourself set up > with a couple of easy-to-use eval boards and a parallel port JTAG > adapter from Olimex for under $100. ($30 each for the boards, $10 for > the JTAG). > > Several of the buyware ARM toolchains are simply proprietary IDE > wrappers around the GNU toolchain. Frankly I do not think any buyware > ARM compiler is worth the money and I strongly recommend gcc. For the > hardware, again you can get a cheap parallel JTAG wiggler from Olimex. > They also sell some cheap Philips-based EVBs. If you search on eBay > you'll also find a few other low-cost ARM EVBs from time to time (from > people in Hong Kong). > > I personally have the STK500, and Olimex's MSP430-targeted JTAG adapter > and a couple of their MSP430 "chip-boards" on my desk. I also have a > Macraigor Wiggler and several different ARM-based EVBs. Right now I am > doing my low-end stuff around AVRs because I have a lot of assembly > subroutines that wouldn't migrate easily. > > But large AVRs are so expensive in prototype qty ($8.75 @1pc for a > Mega32) that it is seriously tempting to move everything into a cheap > ARM part and standardize. I do have a couple of AVR projects written in > C... > >
Mark Borgerson
On 2005-02-07, larwe@larwe.com <larwe@larwe.com> wrote:

> * Your MSP430 toolchain will be specific to the MSP430. An ARM > toolchain is likely to be retargetable to a wide variety of other > ARM-cored parts. So it's a better investment.
Gcc is free for both of them. -- Grant Edwards grante Yow! Are we live or at on tape? visi.com
> Several of the buyware ARM toolchains are simply proprietary IDE > wrappers around the GNU toolchain. Frankly I do not think any buyware > ARM compiler is worth the money and I strongly recommend gcc
don't know about that, Keil ARM complier vs GNU benchmarks are quite impressive, but if you don't need the speed or code size reduction, gcc should be fine http://www.keil.com/benchmks/carm_v0code.htm
Joerg wrote:

> There is also an MSP430 Yahoo forum if you get stuck or have a tough > question. Wish it was on usenet but at least it's there and there are > (so far) no off topic rants or flaming wars.
There's also the gcc mailing list: <https://lists.sourceforge.net/lists/listinfo/mspgcc-users> to subscribe. A helpful lot. Paul Burke

Memfault Beyond the Launch