
[Arduino illo by James Provost]
Each month, I’ll be posting a couple of new editorial-style columns here on Make: Online. These pieces are meant to get you thinking, to stir up discussion and debate, maybe even freak you out a little. My first column is called “Why the Arduino Won and Why It’s Here to Stay.”
In about a week, a rep from a large chip company is going to stop by and show me another “Arduino-like platform,” aka The Arduino Killer. This a pretty regular occurrence around here; every month or so there’s a company or person who wants to make the “next Arduino.” They usually contact me because I’ve covered the Arduino for years, helped get it in the maker world, and I use it daily in my work at Adafruit. I think it’s had an amazing impact on electronic hobbyists and artists, perhaps as much as the personal computer in the early days (Homebrew Computer Club, etc). There are more than 100,000+ Arduinos on the market, and by my estimates, a lot more when you add in the derivatives (approximately 150K as of 2/2011). Within the next 5 to 10 years, the Arduino will be used in every school to teach electronics and physical computing — that’s my prediction. There’s no going back.
Most of the time these Arduino-Killer brain-picking sessions end with well wishing, a list of things to consider if they want to kick Arduino in the pants, and that’s that — they usually never really do it. There are a few articles about Arduino, with some great history, but I want to address why it appears to have “won.” But, saying something will be the defacto standard is risky — it’s also too early, right? Saying something won will also cause some debate, and that’s fine — our new comments system works great now (so debate away). I think it won, I’m going to tell you why and why it’s here to stay. If you’re looking to make something to beat the Arduino, I got you covered — here’s your recipe. Let’s get cooking!
What is an Arduino?
Let’s start out with how the Arduino team defines it:
“Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It’s intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.
“Arduino can sense the environment by receiving input from a variety of sensors and can affect its surroundings by controlling lights, motors, and other actuators. The microcontroller on the board is programmed using the Arduino programming language (based on Wiring) and the Arduino development environment (based on Processing). Arduino projects can be stand-alone or they can communicate with software on running on a computer (e.g. Flash, Processing, MaxMSP).
“The boards can be built by hand or purchased preassembled; the software can be downloaded for free. The hardware reference designs (CAD files) are available under an open-source license, you are free to adapt them to your needs.”
The “what” is still a little vague, and that’s the Arduino’s strength. It’s the glue people use to connect tasks together. The best way to describe an Arduino is with a few examples.
- Want to have a coffee pot tweet when the coffee is ready? Arduino.
- Want to have plushie steaks glow? Arduino.
- How about getting an alert on your phone when there’s physical mail in your mailbox? Arduino.
- Want to have a Professor X Steampunk wheelchair that speaks and dispenses booze? Arduino.
- Want to make a set of quiz buzzers for an event out of Staples Easy Buttons? Arduino.
- Want to make a light-up arm cannon from Metroid for your son? Arduino.
- Want to make your own heart rate monitor for cycling that logs to a memory card? Arduino.
- Want to make a robot that draws on the ground, or rides around in the snow? Arduino.
For someone who doesn’t know about electronics, or microcontrollers, this sounds cool and fun, and you’ll want to join this club. This is the type of stuff kids want to make — you can even trick them into learning some things along the way. These are the projects science fiction stories are made of, the things gadget sites blog about. What do all of these have in common? They’re ideas that usually wouldn’t actually happen, things we normally just dream about. But now these fantastic ideas are brought to life, and it’s very likely a non-engineer made them.
That’s a big deal because engineers tend to design platforms for other engineers, not for artists, weirdos, or kids who want to connect stuff up in a simple way to share an idea. The Arduino team is not made up of hardcore electrical engineers. They’re designers, teachers, artists, and (from what I can tell) techno-hippies (this is a compliment, I hope I didn’t offend them.) The Arduino is mostly based in Italy, and every year I read another article about how Italy is struggling to find “their own Google” when they already have it. It’s the Arduino — they just don’t realize it yet.
If you look at examples of Arduino projects you’ll see the makers were more interested with the what — not the how — of the electronics. The cranky people who enjoy being mad about Arduino’s success love to say that the Arduino doesn’t teach the underlying electronics, “Bah! this isn’t REAL electronics,” they say, “It’s too easy!” Yes, it is. If you want to make an LED blink or a motor move without using an Arduino, good luck if you’re an artist or designer. We’re talking days to get it right (if it works at all). Sure, it’s nice to pay your dues and impress others with your massive Art of Electronics book, but for everyone else out there, they just want an LED to blink for their Burning Man costume.
I think my favorite example of how parts of the old-school microcontroller community viewed the Arduino comes from AVR Freaks, the official community dedicated to the AVR processor (same one used in the Arduino). You would think they would love all this new attention, bringing AVR microcontrollers to the masses. But many in the AVR Freaks community do not like all these non-engineers with their weird art projects messing up their hierarchy. My favorite quote (and I want this on a T-shirt) is:
“Arduino: baby-talk programming for pothead” – ArnoldB, AVRfreaks.net
This mistaken attitude actually helped Arduino, because it pushed the Arduino fans to build their own community, and one that I would say is more inclusive and shies away from condescension.
The Arduino is simple, but not too simple. It’s built around the idea that students will be using these to “do” something: get sensor data in, have a bit of code, do something with that. Maybe they didn’t even write the code, they cut and pasted it to get started. It’s hot glue, not precision welding. No one is going to cut a hand off or burn down the studio experimenting. One of the Arduino team members teaches designers and artists — everyday, the platform is being built and improved for step-by-learning, building on lessons and sharing code — these designers and artists are using Macs and tinkering in Processing (Arduino’s older sibling).
OK, so it’s all warm and fuzzy, an artsy love fest, and that’s why it’s the DIY success story? No, there’s way more! Let’s get a little more specific…
The IDE Runs on Macs, Linux, and Win
The IDE works on a Mac, Win, and Linux, and it’s completely open source. The IDE is how you program the Arduino — it’s based on Processing (a graphics programming language and development system popular with artists and designers), which has been around for a long time. It runs on Macs and Linux, not just Windows, and that matters if you want to be inclusive. It’s based on a strong and well-supported backend, the open source gcc toolchain, and wrapped in Java, so porting is easy and bugs can be found and fixed. There are enough smart people using and working on the IDE to keep it going strong. Want freaky cool people to do neat stuff with your platform? You gotta have your IDE run seamlessly on a Mac and also Linux.
The Driver Actually Work On Macs, Linux, and Win
Again, like the IDE, the drivers to use the board work on Mac, Win, Linux, and the FTDI drivers “just work.” Sticking with serial, a well understood (but slow) interface, was a good call. Sure HID or something custom is cool and all, and can be much faster, but the serial chip works, can be used for debugging as well as programming, and easily slots into software tools like Java, Python, Perl, C, NET, BASIC, Delphi, MAX/MSP, and PureData, Processing, etc.
Libraries, Easy-to-Do Simple Things, Easy-to-Do Hard Things
There are tons of object-wrapped libraries to do complex things, like writing to SD cards, LCD screens, parsing GPS. And there’s are also libraries to do simple things, like twiddle pins or debounce buttons. We’ve written UART setup code 10 times for 10 chips and frankly, we’re tired of it. Much nicer to just call Serial.begin(9600) and have it sort out the registers for us.
Lightwight, Runs on the Metal
The code runs directly on bare metal, with a well-tested and understood compiler (we would even say that avr-gcc is the default/standard compiler for AVR.) It’s not interpreted like .NET or BASIC. It’s fast, it’s small, it’s lightweight, and you can use the HEX file to program fresh chips in bulk.
Sensors
The Arduino really took off because it has analog-to-digital input, in other words, you can take in sensor data like light, temperature, sound, or whatever using the low-cost sensors already on the market and get that into the Arduino easily. It also has ready-to-go SPI and I2C for digital sensors. This covers 99% of sensors on the market. You can’t easily do this with other platforms — it’s completely bizarre to see a BeagleBoard (great product) with an Arduino basically strapped to it just to get sensor data in.
Simple, But Not Too Simple
Many dev boards are historically enormously complex with a lot of added-on parts like LCDs, buttons, LEDs, 7-segments, etc,. showing everything it can do. Arduino has the bare minimum. Want more? Get a shield. There are hundreds of Arduino shields, from LCD to Wi-Fi, but it’s up to the user to add that. Shields add extra functionality easily, and there is a business incentive for others to make them.
Not Made By a Chip Maker
The board was not designed by a chip maker. Why is this important? Chip makers often want to show how their product is different so they add weird things to differentiate themselves. The Arduino highlights commonalities between microcontrollers, not the differences. This means that the Arduino is a perfect beginner platform – everything you can do with an Arduino you can do with any other microcontroller, and the basics will last you for a long time.
Low Cost
You can get an Arduino for $30, and we’ll probably see $20 Arduinos soon. Many dev boards start at $50 and could easily get to $100+, although now we’re seeing chip companies start to realize that its worthwhile to have a more pragmatic pricing strategy.
Open Source
While it’s nice that Arduino is open source, and commercial use is allowed if you make a clone, it’s not the biggest reason, which is why it’s down near the end of the list. However, that isn’t to say it doesn’t matter at all. Specialized derivatives can be made without paying someone or asking anyone. It’s open source hardware so a company or school can use it without any per-seat licensing. There’s no risk that it will be discontinued and the software gone forever. If you want a new feature, you can spend the time and get it added. When thousands of people have a small stake in something, or ownership, they care more. Does anyone even debate if open source software is a good idea any more?
That’s why it “won” (at least that’s why I think it won). There isn’t another platform that does this. Some are very close (like the Netduino, a great platform that fills a niche), but they still have a few more things to do. You might be checking off these points in your head with agreement, or you might be hyperventilating with a big reply forming about how FPGAs are so much better. Either way, unless you can check off each of these points, your platform isn’t ready to compete against the Arduino. Especially if you’re going to call it an Arduino Killer.
Why Arduino is Here to Stay
The barrier to entry isn’t a monetary one, it’s a philosophical one. This requires boldness and getting out of committee-think. A chip company needs to show off chips — they don’t care about Mac support, or writing tons of software, libraries, and IDEs. Chip companies are (historically) the ones who usually make the platforms. We’ll see some of the big players flood the market with subsidized hardware to beat the $30 price point of the Arduino, but that doesn’t matter if the Arduino support and quality stay high.
Why else is it here to stay? The community. How can you get 100,000+ people to jump ship? You can’t. To get close, you’ll need to develop something just like the Arduino, support its shields and accessories, and write a lot of code (something chip companies hate to do.) Great software for multiple systems, lots of libraries, drivers that work, simple, low cost, and open source. And you know what? I think that’s what the Arduino team really wants. They’re techno-hippies — they want to see other platforms with the same ideals — that’s the game they’re actually playing. And I think it’s what we all want, whether it’s called an Arduino or not.
If you want to beat them, you’ll need to take a leap and become them. The best solution for users is what really already won, and it’s here to stay. Long live King Arduino!
More:
Check out our new Make: Arduino page for the MAKE take on all things Arduino


I have a couple comments/questions though.. I have never used an Arduino but have used various other microcontrollers.
The majority of projects that I make tend to be fairly simple but too complicated to do without a microcontroller. I also like my projects to be somewhat permanent.. For example a pressure sensor to monitor the level of water in a tank. LED matrix display rave glasses. A wiper delay for my old Chevy.
I feel an arduino is overkill for these projects, and since it costs $30, I probably means I’d have to dismantle one project before I move on to the next one.
That’s why I usually use a PicAXE, I can get 5 for the price of one Arduino, the programming is in BASIC, and the packaging is very small so my projects can be out of sight.
Again, these examples only pertain to ME, and everyone else’s situation is different. But given most of the projects I see others do, I’m still surprised by Arduino’s dominance.
I readily agree on the advantages you mention in your article but I honestly don’t see how they have created such a large community.
My only guess is that for most Makers, open source is a VERY big deal; big enough to win over the simpler, cheaper and easier to use PicAXE.
Any thoughts?
You realise that the $30 is for a full development board yeah? That includes USBTTL converter, power supply, pin headers etc etc…
As soon as you get your project working, you pop out the microcontroller and put it into your final PCB. Drop a new $4 micro into the development board and onto the next project!
That’s just the thing, you don’t need a development board for the picAXE, you pretty much just connect pin#2 to your serial connection and you can program it!
Here’s a link to the manual: ( http://www.rev-ed.co.uk/docs/picaxe_manual1.pdf )
Check out page 27 the minimum circuit needed to program it is diagrammed there.
Point is that with an Arduino, you NEED the development board to get started. With the picAXE just 2 resistors..
I don’t want this to be a picAXE vs. Arduino conversation, I just sincerely do not see a major advantage of the Arduino for simple projects. When you start to need network connectivity or other more sophisticated capabilities, then I would probably go with an Arduino as well..
I’ve used both. I worked as an EE for a bunch of years before leaving to a “better” life in IT. There is no good comparison between the two families. PICAXE is a super limited system for beginner robotics designers to get stuff done. Given that the 18x is around $10 per chip, and you probably got a programmer of dev board for about $20, The investment is comparable with the Arduino.
While you can just hook up a serial port through a couple of resistors to the chip, you must be sure that your serial port can handle sending BREAK codes, so a lot of USB to serial converters are out.
Much more importantly, you have no access to interrupts, or fuse settings, or some timers on the chip. The compiler actually makes YOU do the memory management as it has no variables, just raw registers to deal with. If you want to use RAM, you need to PEEK and POKE out of it. This is nuts! That’s why we use high level languages! Given the limited program space, and that you need to buy these things from RevEd at 5x the cost of the micro, I’m just not convinced it’s a good platform for anything but the smallest of projects
While the Arduino does suffer from being the hippy artist platform, it is just an AVR. The magic is in the dev system. The chips are relatively cheap and you can make as many as you want.
I think the PJRC guy was very smart to release his dev board (The Teensy) with a compatibility mode for the Arduino dev system so that you could leverage a large amount of the codebase for getting stuff moving, or just program it like a regular AVR if you didn’t want the bloat.
I understand that the PICAXE works for you, but understand that as someone who understands what you should be able to do with a micro and spent more time fighting the damn chip to do some extremely simple stuff, I’m guessing that your needs don’t run the gamut of what is offered by these other systems. If that’s the case, then the PICAXE is a great environment and fast to develop for. If you need to read out an SD Card or bit bang 12 channels of PWM, or be able to handle interrupts on timer ticks for precise timing, thgouh, check out some other stuff.
Dan,
That is just the kind of insight I was hoping for.
Thanks!
http://blog.makezine.com/2011/10/10/how-to-shrinkify-your-arduino-projects/
Now I’ve not heard of the PicAXE specifically, but I’ve used PIC in the past, and I have to say, it is definitely NOT easier to use. Arduino takes care of so much of the low-level stuff that you can just cut-and-paste some code and be done! Maybe it’s just me but using a Java-like language with functions and what not is way easier than programing with GOTOs and labels and trying to remember which registers do what…
Also, you may buy 5 PicAXE chips for the price of one Arduino, but don’t you have to also buy a programmer, then a board/voltage regulator, etc? The nice thing about Arduino is you can just throw it in anything, do a minimal amount of soldering (often times zero), connect a battery and be done! For me, the convenience of paying $30 for all that hardware to be built already is way more worth it than doing it every time I want to make something. Again, the community really helps out in this regard since someone has probably already done something similar and release the code/tutorial online. It turns a weekend project into a two-hour project, which helps when you have a very high-level idea and want to churn it out without thinking too much about the details.
The picAXE is a pic with a preinstalled BASIC interpreter. So while it may not be efficient, it is ridiculously simple. BASIC is without a doubt the simplest programming language there is.
Here is the COMPLETE code for a blinking LED:
main:
high 1
pause 1000
low 1
pause 1000
goto main
With regards to the programmer, like I replied to Alex, you don’t need a development board or programmer to get going..
Here’s a link to the manual: ( http://www.rev-ed.co.uk/docs/p… )
Check out page 27 the minimum circuit needed to program it is diagrammed there.
You are right that the Arduino community is much larger than the picAXE community, so you do have to kind of figure things out on your own.. But actually, I often check out Arduino forums to figure out how people have solved certain problems and then figure out how to implement them on the PicAXE!
The picAXE sounds interesting I might have a look sometime.
You maybe interested with the contents of this link.
http://itp.nyu.edu/physcomp/Tutorials/ArduinoBreadboard
its shows the basic circuit needed to get an atmega chip, ideally with the arduino bootloader already programmed which can be picked up for a few pounds each on ebay, up and running on a breadboard. By adding a USB/Serial (or serial-ttl serial if you want) you can program the chip using the ardiono software all without using the development board or programmer (The link does show how to add the isp header to do inline programming using the stardard avr toolset).
as for the blinking LED code its not too dissimilar in arduino land
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(13, LOW); // set the LED off
delay(1000); // wait for a second
}
anyway thanks for the quick overview of the picAXE. I’ll look out for a chip and have a play.
Arduino is a nice way to get started I have to say it has one of the best site to find all the info you would need to get up and running fast. http://arduino.cc/en/Reference/HomePage
I have never tried one but I can run the same code on a pic18f2550 using Pinguino which sure made C look easy
void setup(void)
{
pinMode(0,OUTPUT);
}
void loop(void)
{
digitalWrite(0,HIGH);
delay(500);
digitalWrite(0,LOW);
delay(500);
}
And that runs on a PIC
The picAXE sounds interesting I might have a look sometime.
You maybe interested with the contents of this link.
http://itp.nyu.edu/physcomp/Tutorials/ArduinoBreadboard
its shows the basic circuit needed to get an atmega chip, ideally with the arduino bootloader already programmed which can be picked up for a few pounds each on ebay, up and running on a breadboard. By adding a USB/Serial (or serial-ttl serial if you want) you can program the chip using the ardiono software all without using the development board or programmer (The link does show how to add the isp header to do inline programming using the stardard avr toolset).
as for the blinking LED code its not too dissimilar in arduino land
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(13, LOW); // set the LED off
delay(1000); // wait for a second
}
anyway thanks for the quick overview of the picAXE. I’ll look out for a chip and have a play.
I think you’re still missing one key reason (which you hint at but don’t spell out) that Arduino has taken off and what every other dev board manufacturer has failed to implement. The time it takes from plugging in an Arduino the first time and having code you have changed running on it is second to none. There is no registration process or unfamiliar license agreements to click through. You only need to download one package and there is almost certainly an up to date binary for your platform. If you bought the basic Arduino board you only need to change at most 1 option to have the IDE talk to your board. There is a dead simple hello world example (blink) which most people can follow just by looking at it and reading the comments. You can have the code in your IDE compiled, linked, converted to the right format and uploaded to your board by pushing one button. _One Button_. You don’t have to setup the project, you don’t have to configure a handful of options, you don’t have to swap between your coding IDE and your uploading tool.
In 10-20 mins (depending on your net speed) you can have code you have had a hand in writing running on a device. No other platform on the market has such an easy and short time to first successful code push. The Arduino is _empowering_. I still remember how good it felt to see the LED on pin 13 blink and then, after a few key strokes and the click of a button, that little LED blinked faster! It’s such a trivial example and the old school embedded guys can laugh all they like but I don’t care.
Indeed! Compare Arduino setup to that of straight AVR development. Even when you know what you’re doing, implementing the AVR tool chain can be an arduous, confusing process. Plus, you need that much more hardware. I’ve successfully completed the setup on both Win and Linux machines, it’s not an enjoyable task.
that’s right, within 10 minutes you can actually do something with an arduino. the golden 10 minutes of a product experience. the other boards and not close to that yet, it takes a day to set up a tool chain and hello world.
As an old school embedded guy, I’m laughing right along.
The Arduino is a wonderful tool as it gets embedded systems out of the ivory towers of experience, education, and credentials, and into the hands of the masses. When an artist can get an Arduino up and running to accomplish the task in front of them in short order, I see it as we all win. When someone without many thousands of dollars of tools, and thousands of hours of experience can create a device which gets pretty darn close to what an experienced embedded developer with all of the above and more, we all win. Sure, it will never be as robust, inexpensive, or EE cool as something developed with assembly language… but how many times outside of volume production are such characteristics really needed? More so, even with all the tools, and experience, how many embedded systems really end up being massive disasters in the making?
That being said, at some point the Arduino will go away, if not due to a better mousetrap, but because all processors have a finite life cycle. Eventually something new will come along, and with it, an Arduino style replacement that is likely nothing like what we have today.
After I had played with the Arduino for a couple of years I decided to pick up a USBtinyISP and try some “real” AVR programming. It took me no less than a week to get that same led blinking on an attiny13. Things progressed quickly after that, but it really made me appreciate the Arduino.
After I had played with the Arduino for a couple of years I decided to pick up a USBtinyISP and try some “real” AVR programming. It took me no less than a week to get that same led blinking on an attiny13. Things progressed quickly after that, but it really made me appreciate the Arduino.
After I had played with the Arduino for a couple of years I decided to pick up a USBtinyISP and try some “real” AVR programming. It took me no less than a week to get that same led blinking on an attiny13. Things progressed quickly after that, but it really made me appreciate the Arduino.
While I agree with most things in your article, basically what you’re saying is that Arduino has made good use of ALL of the available features of the processor. The problem I have(as an electrical engineer) is that for anyone involved in designing a product at all, the platform is rather unusable.
For example, if you take the core libraries, ALOT of them are poorly written and would not even come close to passing any best practice test. You can easily find a 260% space saving if you follow best practice. So if you are learning to program as an engineer, using an arduino, you do not learn much and if you do, it’s not best practice.
Secondly, the arduino platform provides no hardware flexibility at all. One of the joys and pitfalls of the platform is that you are stuck to the hardware that you use(except for being able to possibly swap the micro). You cannot change what type of USB you use, you can’t change the crystal you use(or easy disable it) and you can’t change the power regulation systems it employs. These are all important things to a designer/engineer.
Over my summer holiday(I’m in Australia), I have basically built my own open-source AVR platform for engineers/designers that allows greater flexibility in hardware choice and provides 260% greater efficiency in software size, while being a lot more powerful.
I believe that Arduino is a platform for strictly non-engineering types who only know the bare basics, it is about time that a platform for engineers/designers was created that filled the gaps or arduino.
To get my libraries, please go to the following website: http://blog.michael-kehoe.com/?p=22
While I certainly agree with you that some of the libraries are not as efficient as they could be, it’s also important to remember that Arduino is not claimed to be the most efficient embedded board out there. In my opinion, it’s not supposed to be.
I’ve always viewed the goal of Arduino as one of education. It’s designed to teach the basic concepts of embedded electronics. Code that is both easy to understand _and_ completely optmized is quite rare.
For example, you might be able to speed up a math operation with binary shifts and adds in place of standard operators, but to a novice reading that code it would look confusing. Taking it further, you could create object files entirely in assembler — again, this might increase efficiency a great deal, but a novice has no idea how to read that.
All that said, I’ve been impressed at the programming and electronics skills of some “non-engineers” I’ve seen, many of whom cut their teeth on the standard Arduino libraries and hardware before diving in and doing much more advanced stuff.
Arduino is great because it can give you results right away, and quickly build your confidence and understanding. Confidence is the only real currency of innovation after all. Once you have that, you can move on to more sophisticated projects. But without an easy-to-understand entry point, you’ll never get there at all.
I’m sorry. But the number of EEs who have this *exact* response to Arduino? Perhaps this should be spelt out: the Arduino was *NOT* designed for Electrical Engineers!!
Arduino is about enablement and accessability. What made Apple successful? Ultimately they understood User Interface. Arduino – exactly the same. Arduino has created a tool that opens up microcontroller development to everyone; and EEs seem to hate it.
EEs will jump up and down and say “but that’s not how you should do it” – while artists and makers blithely continue to produce awesome projects, blissfully unaware that they are wasting clock cycles and have larger binaries than necessary.
Engineering is about balancing tradeoffs and understanding the larger system, not micromanaging code size. Oh and guess what – if the clock cycles and code size are mission critical; guaranteed it will not be an EE doing the coding.
I’m sorry. But the number of EEs who have this *exact* response to Arduino? Perhaps this should be spelt out: the Arduino was *NOT* designed for Electrical Engineers!!
Arduino is about enablement and accessability. What made Apple successful? Ultimately they understood User Interface. Arduino – exactly the same. Arduino has created a tool that opens up microcontroller development to everyone; and EEs seem to hate it.
EEs will jump up and down and say “but that’s not how you should do it” – while artists and makers blithely continue to produce awesome projects, blissfully unaware that they are wasting clock cycles and have larger binaries than necessary.
Engineering is about balancing tradeoffs and understanding the larger system, not micromanaging code size. Oh and guess what – if the clock cycles and code size are mission critical; guaranteed it will not be an EE doing the coding.
I’m sorry. But the number of EEs who have this *exact* response to Arduino? Perhaps this should be spelt out: the Arduino was *NOT* designed for Electrical Engineers!!
Arduino is about enablement and accessability. What made Apple successful? Ultimately they understood User Interface. Arduino – exactly the same. Arduino has created a tool that opens up microcontroller development to everyone; and EEs seem to hate it.
EEs will jump up and down and say “but that’s not how you should do it” – while artists and makers blithely continue to produce awesome projects, blissfully unaware that they are wasting clock cycles and have larger binaries than necessary.
Engineering is about balancing tradeoffs and understanding the larger system, not micromanaging code size. Oh and guess what – if the clock cycles and code size are mission critical; guaranteed it will not be an EE doing the coding.
I’m sorry. But the number of EEs who have this *exact* response to Arduino? Perhaps this should be spelt out: the Arduino was *NOT* designed for Electrical Engineers!!
Arduino is about enablement and accessability. What made Apple successful? Ultimately they understood User Interface. Arduino – exactly the same. Arduino has created a tool that opens up microcontroller development to everyone; and EEs seem to hate it.
EEs will jump up and down and say “but that’s not how you should do it” – while artists and makers blithely continue to produce awesome projects, blissfully unaware that they are wasting clock cycles and have larger binaries than necessary.
Engineering is about balancing tradeoffs and understanding the larger system, not micromanaging code size. Oh and guess what – if the clock cycles and code size are mission critical; guaranteed it will not be an EE doing the coding.
I’m sorry. But the number of EEs who have this *exact* response to Arduino? Perhaps this should be spelt out: the Arduino was *NOT* designed for Electrical Engineers!!
Arduino is about enablement and accessability. What made Apple successful? Ultimately they understood User Interface. Arduino – exactly the same. Arduino has created a tool that opens up microcontroller development to everyone; and EEs seem to hate it.
EEs will jump up and down and say “but that’s not how you should do it” – while artists and makers blithely continue to produce awesome projects, blissfully unaware that they are wasting clock cycles and have larger binaries than necessary.
Engineering is about balancing tradeoffs and understanding the larger system, not micromanaging code size. Oh and guess what – if the clock cycles and code size are mission critical; guaranteed it will not be an EE doing the coding.
“…if the clock cycles and code size are mission critical; guaranteed it will not be an EE doing the coding. ”
And that’s because…?
I’m afraid I have to take exception to every one of your statements about EEs. I don’t know why you assume we’re all close-minded loudmouths.
I *never* used the term “all” – that would be rash generalisation. Obviously there was a little hyperbole used in my comment also. However, have you not seen what I refer to time and again? PT even touches on it a bit refering to the AVRFreaks comments. EEs aren’t the only ones to respond to arduino in this fasion.
I *never* used the term “all” – that would be rash generalisation. Obviously there was a little hyperbole used in my comment also. However, have you not seen what I refer to time and again? PT even touches on it a bit refering to the AVRFreaks comments. EEs aren’t the only ones to respond to arduino in this fasion.
I’ve introduced a number of EE friends to Arduino, and most of them think it’s neat — many of them have taken to using it in their work. Not as part of an embedded system, mind you, but certainly as a handy platform for testing new sensors, SPI devices, etc. quickly. It’s just another helpful tool to them.
To be honest, the only place I’ve seen rabid Arduino hate from engineers is on the Internet — that should tell you everything you need to know
I’ve introduced a number of EE friends to Arduino, and most of them think it’s neat — many of them have taken to using it in their work. Not as part of an embedded system, mind you, but certainly as a handy platform for testing new sensors, SPI devices, etc. quickly. It’s just another helpful tool to them.
To be honest, the only place I’ve seen rabid Arduino hate from engineers is on the Internet — that should tell you everything you need to know
+1 this has been my experience as well – all the really good engineers i know love the arduino and use it in all the ways john outlined.
that said, yah – on the internet folks can be less than “supportive” (i used the avr freaks community as an example of some harshness towards arduino users).
+1 this has been my experience as well – all the really good engineers i know love the arduino and use it in all the ways john outlined.
that said, yah – on the internet folks can be less than “supportive” (i used the avr freaks community as an example of some harshness towards arduino users).
+1 this has been my experience as well – all the really good engineers i know love the arduino and use it in all the ways john outlined.
that said, yah – on the internet folks can be less than “supportive” (i used the avr freaks community as an example of some harshness towards arduino users).
true enough. I certainly wasn’t accusing MK of rabid hate – or any EE for that matter. I was a bit worked up – so I apologize for the hyperbole. PT is right – the Arduino has the game won at present. However if one of the large players figures out what makes Arduino successful, and decides the market is worth it – we may see something interesting. Either way we win.
true enough. I certainly wasn’t accusing MK of rabid hate – or any EE for that matter. I was a bit worked up – so I apologize for the hyperbole. PT is right – the Arduino has the game won at present. However if one of the large players figures out what makes Arduino successful, and decides the market is worth it – we may see something interesting. Either way we win.
true enough. I certainly wasn’t accusing MK of rabid hate – or any EE for that matter. I was a bit worked up – so I apologize for the hyperbole. PT is right – the Arduino has the game won at present. However if one of the large players figures out what makes Arduino successful, and decides the market is worth it – we may see something interesting. Either way we win.
I *never* used the term “all” – that would be rash generalisation. Obviously there was a little hyperbole used in my comment also. However, have you not seen what I refer to time and again? PT even touches on it a bit refering to the AVRFreaks comments. EEs aren’t the only ones to respond to arduino in this fasion.
I *never* used the term “all” – that would be rash generalisation. Obviously there was a little hyperbole used in my comment also. However, have you not seen what I refer to time and again? PT even touches on it a bit refering to the AVRFreaks comments. EEs aren’t the only ones to respond to arduino in this fasion.
“I believe that Arduino is a platform for strictly non-engineering types who only know the bare basics”
Doh?
hey pt, are you familiar with LeafLabs?
they’re doing an Arduino-ish spinoff based on the STM32 microcontroller. not quite as up to the level of arduino in terms of usability, but a boatload more features and only $50.
i don’t think they’re trying to be an Arduino Killer as much as another option in the community, but they’re worth having a look at.
yup! seen it, like it!
whatever happened to the Make Board?
whatever happened to the Make Board?
whatever happened to the Make Board?
whatever happened to the Make Board?
yup! seen it, like it!
“Won”? “Killer”?
It’s not a contest or a zero-sum game. Diversity is good.
ATMEL is the real unsung hero here.
Talk about stealing thunder.
I am disgusted at the lack of props for the people who actually make all this hoopla fly.
Try using your “arduino” without the ATMEGAxx.
Man, and I thought higher functioning people were more understanding.
and whats more your picture which plainly spells out who made the PCB has the time old manner of
blocking reproduction of the device. SAND OFF THE CHIP DETAILS.
Go ATMEL!
I think the chip in the illustration is just a slug — a placeholder. You know, until the “heroes” at Atmel can ramp up production at their Fortress of Solitude.
ATMEL doesn’t mention arduino (zero results on their site the last i checked) they’ve never helped out the arduino team that anyone knows of it seems, they haven’t celebrated it, or promoted it in any way that i recall – i’d love to see that change.
AVR dude was even made by someone else, i’m pretty sure they’re mostly ignoring the arduino project. they sell a product, arduino uses it. i think that’s the relationship at this time.
part of the goal of this article is to maybe get ATMEL excited about the arduino too
That’s something I found interesting in the article. That Atmel has sold less than 200,000 AVRs in Arduinos. That’s a lot of Arduinos in Makerland, but it’s probably not a lot of ICs in Atmel-land.
Which could explain why Atmel is not taking time out for Arduino. It doesn’t explain why other chip manufacturers are trying to duplicate Arduino’s success, though.
Unfortunately, this is all too true for *any* semiconductor manufacturer. It’s a straight numbers game. The numbers of micros sold in Arduinos over time is very small compared to the large accounts where they might buy microcontrollers in the millions, for a single product, for a single year. Because of this, it dictates where to spend limited time and focus. As I said, this is very unfortunate, but it’s just a fact of the industry that we’re in.
I still think Atmel could do more without exerting a lot of funds. In the social arena, not even acknowledging the platform makes Atmel look bad in the community mindset. Surely it can’t cost much to throw a few dev boards at an Arduino contest or put an http://www.atmel.com/arduino page up simply directing folks to the main sites.
Note that I don’t even use the platform (I roll my stuff on bare AVRs), but I still see the outcome.
I still think Atmel could do more without exerting a lot of funds. In the social arena, not even acknowledging the platform makes Atmel look bad in the community mindset. Surely it can’t cost much to throw a few dev boards at an Arduino contest or put an http://www.atmel.com/arduino page up simply directing folks to the main sites.
Note that I don’t even use the platform (I roll my stuff on bare AVRs), but I still see the outcome.
I still think Atmel could do more without exerting a lot of funds. In the social arena, not even acknowledging the platform makes Atmel look bad in the community mindset. Surely it can’t cost much to throw a few dev boards at an Arduino contest or put an http://www.atmel.com/arduino page up simply directing folks to the main sites.
Note that I don’t even use the platform (I roll my stuff on bare AVRs), but I still see the outcome.
Unfortunately, this is all too true for *any* semiconductor manufacturer. It’s a straight numbers game. The numbers of micros sold in Arduinos over time is very small compared to the large accounts where they might buy microcontrollers in the millions, for a single product, for a single year. Because of this, it dictates where to spend limited time and focus. As I said, this is very unfortunate, but it’s just a fact of the industry that we’re in.
I’m sure you’re correct, but it’s still very shortsighted by Atmel. Putting resources into Arduino would be much like Apple giving computers to schools. It’s introducing those who may be future large customers to your products and your company. It would be a tiny investment with potentially huge payoffs. Most companies would kill for the buzz that surrounds Arduino.and do everything they can to feed it.
I’m sure you’re correct, but it’s still very shortsighted by Atmel. Putting resources into Arduino would be much like Apple giving computers to schools. It’s introducing those who may be future large customers to your products and your company. It would be a tiny investment with potentially huge payoffs. Most companies would kill for the buzz that surrounds Arduino.and do everything they can to feed it.
I’m sure you’re correct, but it’s still very shortsighted by Atmel. Putting resources into Arduino would be much like Apple giving computers to schools. It’s introducing those who may be future large customers to your products and your company. It would be a tiny investment with potentially huge payoffs. Most companies would kill for the buzz that surrounds Arduino.and do everything they can to feed it.
That’s something I found interesting in the article. That Atmel has sold less than 200,000 AVRs in Arduinos. That’s a lot of Arduinos in Makerland, but it’s probably not a lot of ICs in Atmel-land.
Which could explain why Atmel is not taking time out for Arduino. It doesn’t explain why other chip manufacturers are trying to duplicate Arduino’s success, though.
To clarify: AVRdude is just another open source project, whose purpose is to program (download/upload) firmware to an AVR device. The arduino project is not ignored by the avrdude project. The avrdude project serves its own purpose and has a wide audience.
Eric Weddington
Creator of WinAVR
(and also happens to be co-developer of avrdude)
hey eric! we love AVRdude! and we use it – AVRdude and arduino work together – my point is that ATMEL doesn’t have anything to do with it, the chip maker didn’t create the arduino (and for now, they sell a product, arduino uses it – they do good business together, but that’s the extent). arduino is doing great because of people like you and others who are bolting together open source projects.
hey eric! we love AVRdude! and we use it – AVRdude and arduino work together – my point is that ATMEL doesn’t have anything to do with it, the chip maker didn’t create the arduino (and for now, they sell a product, arduino uses it – they do good business together, but that’s the extent). arduino is doing great because of people like you and others who are bolting together open source projects.
hey eric! we love AVRdude! and we use it – AVRdude and arduino work together – my point is that ATMEL doesn’t have anything to do with it, the chip maker didn’t create the arduino (and for now, they sell a product, arduino uses it – they do good business together, but that’s the extent). arduino is doing great because of people like you and others who are bolting together open source projects.
hey eric! we love AVRdude! and we use it – AVRdude and arduino work together – my point is that ATMEL doesn’t have anything to do with it, the chip maker didn’t create the arduino (and for now, they sell a product, arduino uses it – they do good business together, but that’s the extent). arduino is doing great because of people like you and others who are bolting together open source projects.
To clarify: AVRdude is just another open source project, whose purpose is to program (download/upload) firmware to an AVR device. The arduino project is not ignored by the avrdude project. The avrdude project serves its own purpose and has a wide audience.
Eric Weddington
Creator of WinAVR
(and also happens to be co-developer of avrdude)
> part of the goal of this article is to maybe get ATMEL excited about the arduino too
Hi Phillip,
What did you have in mind? How should we be involved?
Eric Weddington
Among other things: Open Source Community Manager, Atmel
hey eric! that’s right! you recently started working at ATMEL as the open source community manager, late last year i think? a few easy things come to mind, you’re welcome to email me directly too…
1) ATMEL features arduino on the atmel.com – maybe a series of articles, starting out with arduino and then using other chips as folks need different applications, etc. you could also do a series a videos, sponsored articles on community sites (MAKE, instructables, hack-a-day, etc).
2) we’d love to see ATMEL at maker faire in a big way, perhaps an area devoted to projects using ATMEL products (including the arduino).
3) i’d love to see a blog, likely authored by you of all the things going on with OSS / OSHW and ATMEL. i’d even arrange for you to guest post on MAKE if you wanted.
4) case study with the arduino team and ATMEL, it would be great to see an official press release about a milestone with arduino 100k units shipped, etc.
these are just a few, what do you think? and thanks again for participating here!
“2) we’d love to see ATMEL at maker faire in a big way”
Yes, I’d love to see more of Atmel at Maker Faire (and elsewhere).
“2) we’d love to see ATMEL at maker faire in a big way”
Yes, I’d love to see more of Atmel at Maker Faire (and elsewhere).
I definitely appreciate the feedback. I can’t make any guarantees at this point, but let me do some research.
Phillip, I can’t send you an email, because the “email” links in your articles don’t do anything for me (i.e. nothing pops up). What’s an alternative?
Oh, and technically I’ve been working for Atmel for over 5 years. Started in their RF business unit working on ZigBee, then went to the AVR group because of working on WinAVR and have been a product manager there until the recent title change last year.
hey eric! that’s right! you recently started working at ATMEL as the open source community manager, late last year i think? a few easy things come to mind, you’re welcome to email me directly too…
1) ATMEL features arduino on the atmel.com – maybe a series of articles, starting out with arduino and then using other chips as folks need different applications, etc. you could also do a series a videos, sponsored articles on community sites (MAKE, instructables, hack-a-day, etc).
2) we’d love to see ATMEL at maker faire in a big way, perhaps an area devoted to projects using ATMEL products (including the arduino).
3) i’d love to see a blog, likely authored by you of all the things going on with OSS / OSHW and ATMEL. i’d even arrange for you to guest post on MAKE if you wanted.
4) case study with the arduino team and ATMEL, it would be great to see an official press release about a milestone with arduino 100k units shipped, etc.
these are just a few, what do you think? and thanks again for participating here!
The most important thing Atmel can do for the arduino community is to stay commercially viable. Focus on your big customers, and maintain your competitive, serious chip maker image, even if that means distancing yourself from the arduino community. Just continuing to produce DIP versions of some of your chips is already a subsidy of the community and a massive service.