I've found the TI MSP-430 fairly good as a cheaper/rawer alternative to Arduino. It comes with Eclipse based tooling to program the microcontrollers in C or assembly.
I was under the assumption that they didn't have many timers... I just looked again and maybe they added models with more than one timer but now they have some that are up to 4 timers and still only 1.50USD. That makes things more useful.
It should also be noted that the msp starter kit is only ~4 bucks and has a full usb starter board with i/o breakouts. pretty cool stuff.
There are over 300 different models of the MSP430, ranging from the G2 or Value Line parts having 1k of Flash, a couple hundred bytes of RAM and usually one timer to the F5 series with 100-pin parts having 256kB of Flash and 16k of RAM, and 4 timers. Limiting yourself to stuff that's compatible with the $4.30 starter kit is not an accurate representation of the MSP430 lineup.
I agree. However, if you're not willing to spend money on Code Composer, IAR, or something similar, the GCC port isn't up to snuff on the 430X variants. In fact, the whole split personality of 16/20bit mode makes me want to just give up and use an ARM (Energy Micro EFM32, for instance).
The code limitations on CCS aren't too bad. Though, yes, ARM chips are awesome. STMicro has some really nice ones, with beautiful documentation and libraries.
the msp430 launchpad board is the cheap one, and I think if someone wanted to get into programming a MCU in C/C++, it is probably the cheapest and simplest way to do so (open tools, including GCC, are available, too)
the big advantage of the arduino is the software and the community.
I recently ordered a lot of parts for a project I'm working on and the low price of the LaunchPad made adding one to my order pretty much a no-brainer. Ends up this is a very nice little board. It's definitely less 'friendly' than the Arduino but it does allow for interactive debugging with gdb. Being able to step through a program running on the mcu without extra hardware was a nice surprise.
edit: I should also mention the program mspdebug which is a little simpler than gdb. I actually didn't look at this program much after seeing it could let me use gdb but I just looked it over a bit more and it also lets you step, set breakpoints, set registers, and more.
I am not an expert on them but it seemed like to do anything useful you would need at least 2+ timers and the msp430 that came with the starter board only had 1 and the other one had 2. do you have any links to better ways of dealing with those limitations?
I don't have links, I just sit down and think about how to best use my scarce resources. What do you need at least 2+ timers for? Maybe I can give you some tips.
I do wonder what the future is for the Arduino with the upcoming launch of the Raspberry Pi[1]. What aspiring hardware hacker would spend $30 on an Atmel development board when there's an ARM-based board available for $25 that'll do so much more?
I think we're in for a fascinating few years, as powerful but dirt-cheap featurephone chipsets start trickling out into the hardware hacking community.
There are already several significantly more powerful ARM Cortex-M3 boards available for around the price of an Arduino[0][1]. The draw of the Arduino is ease of use in interfacing to GPIO/UART/i2c and in the community of accessories, documentation, and code that exists around it.
This is wrong. Raspberry Pi is a completely different domain than Arduino. There isn't a great price difference between the cheapest (<$1) microcontrollers and powerful SoCs like the Raspberry Pi's Broadcom part, which only cost $20 or so (either when buying in huge quantities or by pulling strings as Broadcom employees). In small quantities, that doesn't leave a lot of room to make a profit. However, the Arduino (and other products based on 8-bit micros) are and will always be lower power, lower cost, and lower complexity than the Raspberry Pi parts.
They're lower power because you can only flip so many bits with your battery, and running Linux at 800 MHz instead of an RTOS at 8 MHz is going to drain your little watch battery fast.
They're lower cost because each square millimeter of silicon costs money. Economies of scale can only take you so far.
They're lower complexity because you can write an assembly program in a few dozen bytes for the Arduino. On the Raspberry Pi, you'll need lots of libraries and there will be layers upon layers upon layers of abstraction. With increased power comes increased complexity.
Hacking on a phone has a huge barrier to entry and huge complexity levels. No one at Apple, Nokia, Samsung, or any other phone manufacturer can hold the whole code base in their mind at one time. Most Arduino sketches are two functions with just a couple hundred lines of code leveraging one layer of simple and understandable libraries. Furthermore, if you want to mass-produce your Arduino design, you can do it with home-printed PCBs and a Digikey or Sparkfun order. The chips used in the Raspberry Pi aren't available anywhere at any price in small quantities, and using them requires X-ray inspection equipment and professional 4+ layer boards.
Raspberry Pi aims to be the cheapest PC available. Arduino aims to be the easiest hardware platform to start on. Raspberry Pi is not a competitor to Arduino.
MCU's will still win on cost and power. Unfortunately for Atmel, Texas Instrument's MSP430 currently has an aggressive lead on both; if platforms like the Rasberry Pi become common, I forsee the cost of Atmel chips falling and hopefully the prices as well.