From Wired.com (which I don't run, btw--I just run the sister division, Wired Magazine), a good article explaining why the apparently underpowered Arduino has proven more successful than more powerful computing boards, such as the Beagle Board. Excerpt:
"The Arduino community is at least 100,000 users strong. But it is not alone.
Other open source projects like the BeagleBoard, which is shepherded by Texas Instruments, are trying to win Arduino fans over.
The Beagleboard is a low-power, single-board computer, whose latest version is based on the same 1-GHz ARM Cortex A8 processor that drives the most sophisticated smartphones today. That gives it far more processing power than the Arduino. Yet the BeagleBoard hasn’t hit the same kind of chord with hardware hackers that the Arduino has.
“The BeagleBoard is not for a novice,” says Phil Torrone, senior editor at Make magazine and creative director at Adafruit, a company that sells DIY electronics and kits. “With an Arduino, you can get an LED light blinking in minutes.”
Five reasons are given for Arduino's success:
- Starter projects
- Costs and durability
- A thriving community
- Maturity is key
- Simple is attractive
Read the whole thing here.
Comments
If Atmel got the Open Source Bump, I think Jason raises the question of whether or not there's a bump in store for the next chip maker who can open-source their compiler?
Or an even more difficult question - Is the open source tool chain better? and if not, is Arduino a gateway product for all other microchips as users look for a more professional toolchain?
Arduino is a very simple proposition, it was 10x less expensive that PIC + Compiler, and it offered a path-to-product in a way that the proprietary Basic Stamp did not.
There are three quotes I like to put out whenever talking to people about technology: "It is vain to do with more what can be done with less" by William of Occam, "Perfection is reached not when there is no more to add but no more to take away" by Antoine de Saint-Exupery, and "Adding power makes a car faster on the straights; subtracting weight makes a car faster everywhere" by Colin Chapman. When I heed these quotes, we succeed. When I ignore these quotes (all too often), we get caught in a downward spiral of complexity and fail. By going with the Arduino (or even just an ATmega) when it is "good enough", you avoid the unnecessary baggage associated with a much more powerful, and yes complex, processor.
I laugh a bit at the tendency to automatically assume "more power" is the best solution. Look at the original video games from the early 80's- for many of them all processing and video rendering was performed with a single 1MHz processor. A little imagination can shave a zero or two off of the required CPU speed...
We've used TI DSPs in much of our work including visual motion / optical flow processing. They do work, and they can scream. But the learning curve has been horribly steep- The documentation is long and poorly constructed- searching through 400 pages of text to find "by the way you need to set register X to 17 to get this feature to work" is not helpful! We did manage to climb the (much too steep) learning curve, but I am not convinced it was worth it.
One processor I am intrigued with is the Blackfin- it seems to have a better user base than TI, especially among academics / experimentalists, plus boards like Surveyor's SRV-1 take much less effort to get somewhere. ("Hello World" of flashing a GPIO port on and off took a few hours.)
Back to the Arduino- it is good enough for many applications. More important, it is accessible. Actually that is MOST important. Technology is worthless is nobody can use it.
I can go on. :)
I went to school with Casey Reas back in the day. He and Ben Fry created "Processing" in John Maeda's Media Lab group. It was a redo of Maeda's earlier work named Design by Numbers. The ultimate goal was to teach computer science to art geeks. They understood that a lot of computer science was needed by creative types, but that the barrier to entry to draw graphics on the screen was unnecessarily high. To deal with that they abstracted away everything but the logic to draw on the screen. It was a big success as a creative learning tool and most schools now use it in their course work.
Arduino is simply an extension of this concept applied to the physical world. The chip makers fundamentally don't understand this. Atmel was just the lucky recipient of all of this attention, because they have an open source C based compiler and cheap, flexible chips.
We're going a bit off topic here, but happy to answer. There will be an Amdroid version of the Wired Tablet Edition just as soon as Android tablets hit the market. No plans for a phone version at the moment, mostly because we need the bigger screen size of the tablet to work with our design.
I love Bunnie's work as much as yours, but sadly it's a bit too geeky for the magazine's more mainstream current audience. We're now nearly a million readers, and the cost of popularity is we can't be as nerdy as I'd like. As I mentioned, I don't run the website, but if I did, that's where I'd put Bunnie and others like him. The web is the perfect place for content that isn't for everyone but suits a minority (including me!) perfectly.
This is part of the reason why we spent the time on OpenPilot to create PiOS it makes accessing the hardware easier for people that do not really care about such things, however it also has zero performance penalty. The other reason to take our time and do PiOS first is portability and this has proven to be the right way to go as we now have the OpenPilot firmware running on Linux and Mac, with Windows to follow. Just to clarify because this is very cool: because of the PiOS layer and the architecture we implemented we can run the real OpenPilot firmware on a PC :-)
I maintain the article is like comparing chalk and cheese, they are such different platforms and have completely different goals. I know people that are developing a full Point of Sale terminal based on the Beagle board, not sure that is going to do to well on a Ardunio Mega!
Comparing Mac and NeXT is not the same at all, they are both operating systems which much in common. No analogy is perfect of course but a better way to say it is comparing the Linux Kernel with the Apache Webserver as they are both Open Source software. Its just plain silly to do this as they both have very different reasons for being.