Hacker News new | past | comments | ask | show | jobs | submit login
Arduino launches new products in maker faire (arduino.cc)
86 points by Garbage on Sept 18, 2011 | hide | past | favorite | 21 comments



Interesting to see Arduino getting into ARM. The LeafLabs Maple always appealed to me way more than Arduino because of the beefy STM32 ARM processor it comes with. (Well, also because their libraries, team, and documentation are all top-notch). It will be interesting to see how much ARM catches on among hobbyists now that it has the weight of the Arduino brand behind it.


It's a huge shame that none of the existing ARM Cortex M3 Arduino-like platforms (Maple, Corduino etc.) ever took off. While this is mostly likely because of the projects not being officially endorsed by Arduino, it does also make you wonder if there is actually a demand for this higher level of capability. I have a bad feeling that offering a much more powerful Arduino will only result in people writing more inefficient code.

Moving into ARM territory was always inevitable for Arduino, it has just taken a little longer than it should have, because Atmel were a little behind the curve in getting their Cortex M3 offerings onto the table. What does surprise me is that it has taken this long for Atmel to step in and offer some support to Arduino.


I have a bad feeling that offering a much more powerful Arduino will only result in people writing more inefficient code.

I'm sure the ARM-duino JVM & the Ruby interptreter is right around the corner :/


It's really too bad they didn't use STM32 parts. STMicro has a really nice line of Cortex M3 chips, and some of the best development libraries I've been able to find for these cores.

As for problems the ARM-duino might run into- one of the attractions of the Arduino is you can get away with very little code, and there are many pre-written libraries. This is not the case with the Cortex M3, which is a pretty sophisticated device as far as 'embedded' goes.


Small curiosity: Is Arduino used purely by hobbyists, or is it being used in the industry anywhere?


It depends what you mean by industry.

No reasonably qualified electronic engineer would use the Arduino platform in a commercial design. Most managers would laugh at any EE who suggested such a thing. I am not aware of any mass produced (consumer, not hobbyist) product or device which uses the Arduino platform. In the industry of fashion and art (which I know very little about) many makers/creators/designers are incorporating Arduinos into art installations and fashion items, although from what I understand these are mostly one-off items.


This is simply not true. I work with quite a few of these reasonably qualified electronic engineers, EE's and managers who all love how fast we can turn out prototypes and concepts using the Arduino platform. True that the platform itself does not go into commercial designs, but the ATMega168 and 328 chips certainly do and priced quite competitively at quantity.


Why not use the Arduino for rapid prototyping then the once you figure the design out, lay out a board based on the Atmega chip? (or some of the lighter-weight chips that would run the same code...)?

It sounds like 8 years ago when "most managers" and "reasonably qualified" programmers would get laughed at for suggesting ruby or python for a serious production project.


The reason it doesn't get used for serious or complex projects is simply because of it's lack of capabilities. The big one is debugging and this is a huge reason for why you won't see EEs using these at their day jobs. Electronic engineers are accustomed to being able to step through code, watch variables and all the other niceties that in-circuit debugging offers. With Arduino you lose all of this, your flying blind with maybe a flashing LED or a serial output to help you out. Who knows how you will detect elusive bugs like out-of-bound array errors. The time you gain with some nice wrapper functions and libraries you will quickly lose when trying to debug a complex project. Features wise, you can do things most of the more advanced features which require bit manipulation of the AVRs registers like interrupts, timers, etc. with Arduino. Though at that point the lines are so blurred because half your code is AVR-GCC and half is Arduino. Why don't we see the simple consumer products using Arduinos? I don't know for sure but it's most likely because something simple is just as quick to code without the Arduino libraries.

Atmel and most other micro suppliers are now coming out with their own "frameworks" these days, which are similar to Arduino in providing libraries for common tasks with a similar level of abstraction to Arduino, without the loss of the higher level functionality like debugging. These are a lot more attractive to EEs than Arduino is.

It will be interesting to see how this changes over the next 5 or so years. By then most of the young engineers who grew up with Arduino or were even introduced to electronics with Arduino will have graduated University and will be working in the industry. It will be interesting to see the effects that this generation of new engineers have.


What are the interesting frameworks these days?


The closest ones I know of are FreeScale's PE (Processor Expert) which has been around a while and is quite decent; I've used it with the HCS08's.

TI started one for its MSP430's called Grace this summer, but it's very very primitive thus far.

Atmel also has one called FLIP for its USB-enabled MCU's to make them act as various USB profiles/devices.


ST has a very nice "Standard Peripheries Library" for their STM32 ARM Cortex M3 line which abstracts all the bit and register manipulation away in a very elegant manner. Atmel has the "AVR Software Framework" which I have heard good things about but haven't used it myself.

Nearly all the chip manufacturers I know of have some sort of framework/library for their Cortex M3 line (which is what is in the new Arduino).


Arduino's are definitely used at the proof-of-concept stage but will never make it in to production simply because they're too expensive for that.


Mostly hobbyists, but there are a few exceptions. For example, the Makerbot Thingomatic 3D printer uses an Arduino Mega as its mainboard. Makerbot had more than $1M in revenue in 2010.

I suspect that Makerbot sticks with the Arduino Mega because it makes their hardware hackable by their users, which is worth more to them than the reduction in parts cost (minus the non-recurring increase in engineering expense).


This reminded me that I've been thinking of playing with a Real-time OS. My impression is that it's possible to run something on an Arduino. Does anyone have any experience with this?


There are quite a lot of microcontroller RTOSes[1] for the AVR platform, which means you can run them on the Arduino (although you'll need to use avr-gcc not the Arduino IDE for these.)

http://www.femtoos.org/

http://www.barello.net/avrx/

This one actually looks like it might use the Arduino IDE: http://code.google.com/p/duinos/

(Also: GIYF: 'RTOS AVR' and 'RTOS arduino')

[1] The hard part is separating anything that's a serious & maintained project from something someone developed once as a toy/interest project and never used for anything.


I've been writing one with my little brother: https://github.com/splicer/arduin_os

It still has a ways to go, but it's able to context-switch between threads. Feel free to fork it if you want to contribute.


It's an 8-bit RISC chip, so it might be a little small. It's more of a micro-controller than a CPU, if you know what I mean.


Agreed. Also, it really just is a micro-controller. From what I understand the internal ram and flash plus all the other special functions (SPI, UART, ADC) are what make a micro-controller a micro-controller while a MPU or CPU have data and addressing buses used to talk to external devices. Micro-controllers incorporate a bunch of common functions into them that a CPU or MPU would need to talk to an external device for (while micro-controllers tend to lack said external buses).


really? i was under the impression it was a really fast 8051 clone.


The AVR is RISC, it's not a 8051 clone at all. See <http://en.wikipedia.org/wiki/Atmel_AVR>.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: