http://www.boston.com/business/technology/articles/2008/02/11/high_tech_tinkerers_on_the_rise/
Congratulations, Paul, and best wishes for continued success with Modern Device Company.
But I cringed when I read of the stuff folks could do with the Arduino. The article makes it sound like a toy for artistic types only. (Actually, that's pretty much the thrust of the entire Arduino marketing program to date.)
Folks, THIS IS A SERIOUS PROCESSOR! You can do real work with it. It will drive real equipment. You can hide it inside some cool projects/products. It crosses over into the land now dominated by PIC processors.
With PICs, you get one instruction per four clock cycles. Arduino? One for one.
The Arduino has a rich variety of peripherals on board, as does the PIC. The Arduino can talk to anything a PIC can. Well, almost anything...
The Arduino has scads of I/O lines available. And a serial port that's easy to use.
The Arduino makes learning its programming and application simple. The PIC has a vertical learning curve.
Both have free development systems available, but the PIC requires stand alone programming hardware. The Arduino is better suited than the PIC for portable projects, that a user can build from cookie cutter instructions without having to buy dedicated programming hardware used only for a one-time project.
I'd sure like to see more emphasis placed on Arduino chips built into embedded processor projects, without using one of the Arduino, Freeduino, or Boarduino boards. It's as simple as a PIC to slap an Arduino chip onto the same board that holds the circuitry for the rest of a project. Simplifies project packaging, too. Or, if you want to sell a board with the chip, push projects that embed the new family of tiny little boards.
I'd sure like the powers that be to transition the Arduino out of its present niche market and out into the wider world of embedded processor applications. Get it in the schools. Get it out to the techies. Get it into the newsgroups. Get it out to the point that folks contemplating an embedded processor design think Arduino first, then PIC only if the Arduino can't, for some arcane reason, do the job.
If you folks who sell Arduino-based products broaden its appeal, you'll sell a lot more stuff.
Here's an example of an Arduino-based embedded processor project I designed :
http://www.mindspring.com/~tom2000/Projects/AI-1_Remote/AI-1_Remote.html
The Arduino was the right tool for the job. In addition to lots of I/O, the processor has lots of program memory (compared to most PICs) that I was able to put to good use. It provided more than enough performance. (For my project, it was actually overkill from that standpoint.) Best of all, anyone can load my program, and the chip costs only five bucks.
I write this as an Arduino newcomer who has been working with PICs for years. And sorry about the rant. Honestly, it didn't start as one. I just wanted to congratulate Paul, one of the good guys in the field. I don't know how I got carried away, but I'm not sorry I did.
Good luck and, once again, congratulations, Paul!
Tom Lackamp
)
Congratulations Paul!
And very interesting comments, TJ. I think the main reason we don't do more marketing / positioning of Arduino as a general purpose tool is our belief that most people interested in "real" embedded systems aren't interested in the Arduino IDE or libraries. That is, while the AVR may be great for this kind of thing, our impression so far has been that those people are happy using avr-gcc, Makefiles, etc. directly. Maybe, however, this isn't the case, and there are lots of people who'd be interested in using the Arduino software with their own custom embedded devices, in which case we'd certainly like to support / target them. Any specific suggestions for how we might do so?
Just wanted to point out that another area Arduino is getting use is the design industry. I'm an interaction designer in a product design company and use Arduino on a regular basis. It's geat for quickly testing interface ideas. A complex device such as a smartphone sometimes starts as "sketches" with an Arduino and additional hardware (flash/actionscript also plays a large role here too... but I'm pushing processing as well).
If I have my history correct here, Arduino (and Wiring) were actually born out of the Interaction Design Institute in Ivrea, Italy (the school no longer exists, but some of the founding members started a new school in Copenhagen http://www.ciid.dk/).
I think the main reason we don't do more marketing / positioning of Arduino as a general purpose tool is our belief that most people interested in "real" embedded systems aren't interested in the Arduino IDE or libraries.
Your underestimating the libraries you guys have created.
To program a AVR usually you need the datasheet for stuff like Timers, Serial, I2C, etc...
The Arduino library removes all that complexity and if it supported more devices then a program could be ported between AVRs just by hitting the compile button.
I'm busy procrastinating about porting the Arduino libraries to the tiny2313 and the mega32.
I'm busy procrastinating about porting the Arduino libraries to the tiny2313
I wish you'd hurry up, I've got a handful of 2313's and an application for them. I'm just too lazy/short on time to write the code myself.
-j
Both have free development systems available, but the PIC requires stand alone programming hardware. The Arduino is better suited than the PIC for portable projects, that a user can build from cookie cutter instructions without having to buy dedicated programming hardware used only for a one-time project.
This is not accurate ... The AVR requires a standalone programmer of some type (anywhere from a simple parallel programmer to one of Atmel's fancy jobs). Arduino simply burns a simple serial protocol bootloader using the stand alone programmer and that allows subsequent program loads via serial lines. But then so does a PIC. The Portland (OR) Robotics guys have developed a bootloader for their PIC 16F877 Mark III board that runs their MiniSumo 'bot and it works just like our Arduino loader. I am sure there are beaucoup similar setups out there.
That said, I am an old hand at PIC programming, and if I never seen another PIC asm statement again, it would still be too soon!
Tom, all your other points are well taken.
cheers ... BBR