A bit of through-hole fun (with MSP430)

I re-discovered that MSP430 exist and are smashing, especially with mecrisp forth. First installment.

Some time ago I've bought an MSP-EXP430G2 launchpad - that's the original one for 14- or 20- pin DIP microcontrollers, the most powerful of which is MSP430G2553, with 16kB flash and 512 bytes RAM. mecrisp forth takes 11kB of the flash.

Here's a little write-up about MSP430 microcontrollers (from my perspective, and mainly so that I remember next time I 're-discover' them :). There is one massive advantage to using MSP430 MCUs for remote/sensors (the kind of use I am into) - power consumption. It is unbelievably low. I measured MSP430G2553 with mecrisp forth on it (the 'low power' version), it it used around 1uA when waiting for UART input in the prompt! The MSP430FR* look interesting as well, with FRAM in place of flash - paint me curious.

The matter of fact is that MSP430 didn't catch on very much with the hobbyist community, perhaps even a little less than PICs. I think the main reasons, apart from Arduino marketing of course, are that the DIP versions just weren't as powerful as ATMEL's and PIC's offering at the time (particularly 512 bytes RAM is quite limiting). This is still a sort of gripe for me that the SMT packages they offer just don't match my taste - they have low- and medium- power stuff in either too small (QFN and BGA) or rather large (TSSOP - and these tend to be at the not too powerful, in particular none seem to have more than 2kB RAM); and then the powerful ones are too-many-pin QFPs (like 80 and more). And the Launchpads (cheap evaluation boards) are invariably either with QFNs or QFP-100 or such. As a consequence, there aren't many free tools available: mspgcc must be obtained from Texas Instruments (I mean they give it for free, but a) they can decide to stop it, and b) annoying to set up not-on-windows); there aren't really any homebrew programmers, everyone just uses the ones that come on the Launchpads, and there's only one open source lightweight program that gives access (mspdebug); the newer MSP430s have a 'BSL bootloader', but I couldn't easily find any open source / lightweight tools for it. Finally I have no idea about USB, and MSP432 (their ARM microcontrollers).

(An update a few days later: There is a relatively new chip, MSP430FR2476, with 64kB FRAM and 8kB RAM, in LQFP-48 package. This would actually be very nice. I also started playing with PlatformIO, which seems to integrate MSP430/energia platform, so I don't have to explicitly install another IDE and libraries - it happens under the hood. So maybe....)


The MSP430G2553 is quite nice though - although the space and functionality is very tight, it might just work. (I know about attinys, and I already run one jeenode micro sensor, and it is very very cute, reprogramming it is quite a hassle.)

On the plus side, there is now and Arduino-like IDE: energia; alternatively with mecrisp one just needs to program it once, and the rest is through UART and text files. I really like the latter; the fact that I can just maintain a few text files, no dependencies, no huge IDEs, no foreign libraries...

And there are a few fun 'breadboard projects' for it by simpleavr.

In any case, because of the low consumption and mecrisp, I decided to give it a go for a through-hole (mostly ;) sensor board.

So, there is a "sensor deployment" MSP430-based board in the pipeline. I'll keep (?) you posted. -- Update: here.