Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

ARM-Based Arduino Competitor At SparkFun

timothy posted more than 3 years ago | from the arms-like-kali dept.

Hardware Hacking 106

Gibbs-Duhem writes "The LeafLabs Maple, an ARM device designed to be pin compatible with the Arduino, and with a strikingly similar and familiar development environment, has reached a new milestone — being carried by SparkFun. By swapping the popular 'avr-gcc' compiler with CodeSourcery's 'arm-non-eabi-gcc,' LeafLabs manages to provide a nearly identical programming experience to Arduino despite targeting a completely different architecture. Also, while some Arduino shields are incompatible due to certain capabilities being allocated to different pins, several of them are currently supported and there are more to come."

Sorry! There are no comments related to the filter you selected.

Goddamn faggots. (-1)

Anonymous Coward | more than 3 years ago | (#36201162)

Catch AIDS and die.

Re:Goddamn faggots. (-1)

Anonymous Coward | more than 3 years ago | (#36202208)

Will you please fuck me up the ass and give me AIDS?

none EABI? (1)

poizan42 (1689384) | more than 3 years ago | (#36201178)

Slightly offtopic, but the naming of the compiler seems strange to me. It indicates that it's not using EABI, but which ABI *is* it using then?

Re:none EABI? (1)

TheRaven64 (641858) | more than 3 years ago | (#36201210)

GCC target triples (which, in the spirit of Douglas Adams, have 4 elements) put the OS there. The first element is the CPU, then the vendor, then the OS, then the userland ABI. This just means a generic ARM EABI target.

Well, more or less. In typical GNU style, everyone who uses target triples puts different things in the different fields. Presumably they're putting eabi instead of something like linux in the third field because there it's running on the metal, with no OS, and gcc instead of gnu in the last field just to be special. And 'non' instead of the more traditional 'unknown' because they hate people who write the rest of the toolchain and have to interoperate with their stuff.

Re:none EABI? (1)

u17 (1730558) | more than 3 years ago | (#36205546)

Good explanation, but I'd like to offer one correction. The -gcc suffix is not part of the triple, that string is just the name of the compiler binary, as in /usr/bin/arm-non-eabi-gcc. The actual triple is arm-non-eabi.

it has to do with ARM IIRC (2)

decora (1710862) | more than 3 years ago | (#36202000)

http://www.oszoo.org/wiki/index.php/Debian_lenny_arm_small.aj.qcow2.zip [oszoo.org]

"
arm vs armel

Apparently there is some new version of ARM called EABI and instead of breaking compatability, debian decided to go with a whole new 'arch' to support the changes.

'armel' is the 'new arm'. 'arm' is apparently deprecated.

Please see http://www.debian.org/ports/arm/ [debian.org] and http://wiki.debian.org/ArmEabiPort [debian.org]
"

Re:it has to do with ARM IIRC (2)

TheRaven64 (641858) | more than 3 years ago | (#36202566)

You know, if you don't know what you're talking about, it's better to just say nothing. The armel designation is used to indicate little-endian ARM targets. EABI isn't a 'new version of ARM' (whatever that means), it's a new(ish - about 10 years old) ABI, which adds support for some things like sane exception handling - it's the ARM embedded ABI, contrasted with oabi (the old Linux ABI). Debian defaults to the softfp version, which is painfully slow on architecture that have a real FPU, but they're in the process of adding yet another target which defaults to hard floating point. This affects calling conventions (in softfp mode, floating point parameters are passed in integer registers), so you can't mix the two calling conventions without some glue that no one has bothered to implement.

Re:it has to do with ARM IIRC (1)

Darinbob (1142669) | more than 3 years ago | (#36204128)

The "el" is "endian-little". A completely silly thing to do to an ARM if you ask me. Maybe it's for compatibility, which is really the only reason to every use little endian outside of an 9-bit cpu.

EABI is "embedded Application Binary Interface". The ARM did not have a formal EABI like some other CPUs until relatively recently. So it really hasn't caught on that well except with newer projects that don't have to deal with compatibility.

Re:none EABI? (2, Informative)

Anonymous Coward | more than 3 years ago | (#36202048)

it should be "none", not "non", indicating that this compiler does not target any OS, just a blank EABI slate. The submitter got it wrong

Re:none EABI? (1)

cababunga (1195153) | more than 3 years ago | (#36203862)

There are only two ABIs for ARM. The older version, being the only version at that time, didn't have an official name. Unofficially it's sometimes referred to as OABI.

Re:none EABI? (1)

Darinbob (1142669) | more than 3 years ago | (#36204100)

It means it has no operating system. Basically they've swapped one GCC for another GCC with the difference being the command line options you give to "configure".

PIC Replacement? (0)

Doc Ruby (173196) | more than 3 years ago | (#36201188)

How about an ARM that is a pin-compatible replacement for a PIC (24F)? And how about some SW that ports PIC24F firmware to that ARM? I'd love to try upgrading my PIC24F board to ARM, without changing any of my other HW or SW. If that ARM can run Android with my PIC code embedded in it on my old PIC board, I'd get right on it in the lab.

Maybe an ARM with FPGA embedded in the SoC that can replace the PIC24F pin-for-pin (or superset the old pins), running Android, with the PIC simulated in FPGA. If that can run with at least a few thousand gates left over for other apps, I'd be compelled to try it.

Re:PIC Replacement? (1)

inflex (123318) | more than 3 years ago | (#36201338)

While Microchip have produced some amazing new PIC devices, the trouble is for them that in many ways they've lost a lot of market interest. There's plenty of BIG players still using them but on the hobby/enthusiast/learning front they've gone from being "dominators" to "has beens" in a very few short years and now many of the bigger players are moving over as well (the consumer-hobby market devices are now dominated by AVRs).

AVRs with their free development tool chain and sane hardware architecture has won this round. That said, Atmel's God AWFUL distribution policies and ever-steepening prices are starting to push a lot of us small-medium sized production houses to alternatives such as MSP430's, things like Atmel Tiny13A at $1 when a vastly more potent MSP430 is at $0.50 makes a difference over a few hundred builds.

Re:PIC Replacement? (-1)

Anonymous Coward | more than 3 years ago | (#36201498)

Hmmm....do I target a bunch of freetard hobbyists or large scale OEMs... let's have another meeting.

Re:PIC Replacement? (2)

cynyr (703126) | more than 3 years ago | (#36201522)

can we do both at the same time, allowing those highschool kids to play with our stuff, go to school, and then come out knowing our stuff really well? Lets discuss at the next meeting.

Re:PIC Replacement? (1)

inflex (123318) | more than 3 years ago | (#36201566)

Joy, replying to AC.

Today's students/hobby/small-scale producers are tomorrow's big scale/OEM, that's in part how Microchip PICs became so entrenched in the first place.

Re:PIC Replacement? (1)

TheRaven64 (641858) | more than 3 years ago | (#36202600)

Those big OEMs? They're hiring people with experience developing for microcontrollers. The people who got experience doing 'freetard bobbyist' things are much cheaper than the ones that went on training courses using expensive hardware - and more plentiful. If you can spend a few tens of kilodollars training your team to use an architecture that they've never played with, or use the one that they learned to work with as teenagers and have acquired (largely at their own expense) years of experience working with, which would you pick?

Re:PIC Replacement? (0)

Anonymous Coward | more than 3 years ago | (#36203356)

While Microchip have produced some amazing new PIC devices, the trouble is for them that in many ways they've lost a lot of market interest. There's plenty of BIG players still using them but on the hobby/enthusiast/learning front they've gone from being "dominators" to "has beens" in a very few short years...

So true. They seem to be more interested in selling add-on stuff than promoting interest amongst hobbyists in their latest chips.

I really wanted to try out their PIC32 MIPS SoC because we used to do a lot of MIPS stuff at work. They have a reasonably priced starter kit but they hobble it with some proprietary in-circuit programming/debug scheme. Last time I checked, the special dongle (costs money) that you need to program/debug it only worked with Windows. They don't provide access to the JTAG port of the PIC32 on their starter kit so I can't use any of the expensive tools I have at work, or the cheap tools I already have at home. You can get access to the JTAG port but you'll have to buy a breakout board (costs more money) to plug the starter kit into. Good luck trying to home-brew your own - they use expensive, hard to find, connectors that are difficult to work with on the starter kit.

Several of the Engs that I work with purchased inexpensive ARM based starter kits for playing around. When we needed a micro-controller in one of our designs at work, it was a no-brainer to go with an ARM instead of the PIC32. All our newer designs are ARM based now. I still like MIPS arch over ARM, but I have to make a living and put food on the table.

Re:PIC Replacement? (2)

admiralranga (2007120) | more than 3 years ago | (#36201372)

Its not a PIC24F but there is one (at least) http://www.digilentinc.com/Products/Detail.cfm?NavPath=2,719,895&Prod=CHIPKIT-MAX32 [digilentinc.com] after I find something fairly permanent for my arduino pro mini to do, I might get one.

Re:PIC Replacement? (1)

Doc Ruby (173196) | more than 3 years ago | (#36202292)

Er, that product is a PIC that's compatible with Arduino sockets. I'm talking about an ARM that's compatible with PIC sockets. No Arduino anywhere.

Re:PIC Replacement? (0)

Anonymous Coward | more than 3 years ago | (#36203036)

There isn't an ARM that is pin-compatible with the PIC24. Microchip's PIC32 is probably the closest as it uses the same peripherals. The PIC32 is MIPS arch but very competitive, performance-wise, with the ARM7 and smaller Cortex.

Re:PIC Replacement? (1)

Doc Ruby (173196) | more than 3 years ago | (#36203086)

Thanks. Now to see whether our PIC24F firmware will run or be straightforwardly ported to PIC32.

Mini Beagleboard (1)

lobiusmoop (305328) | more than 3 years ago | (#36201190)

Kinda looks like a mini version of the Beagle Board [beagleboard.org] , fills the gap between 8-bit Arduino and the powerful (but >$100) Beagle.

So you take an ARM (-1)

Anonymous Coward | more than 3 years ago | (#36201198)

Dumb it down, and then what? What's next? "We take this Intel i7 and make it compatible with an 8 bit microcontroller! Previously, multi-core 64 bit processors were hard to use to make motors spin and LEDs light up, but NOW"

Seems faintly ridiculous, along the lines of just doing something for the sake of saying we did it, like a manned Moon landing.

Re:So you take an ARM (1)

klingens (147173) | more than 3 years ago | (#36201272)

Who cares as long as this gives me a much more powerful hardware at lower prices thanks to the volume shipped of these new things?
Currently a Beagle board costs >100$ while a Seagate Dockstar which has a more powerful hardware costs less than half at the next electronics store.

Re:So you take an ARM (1)

Anonymous Coward | more than 3 years ago | (#36201342)

So you just want more powerful hardware to do the same thigns as before, just so you can say you have powerful hardware? Ah, I see now, it's for kids. When I want to do something, I choose the best tool for the job and leave it at that. If I want to dick around with a few I/O pins, I just choose a microcontroller for the purpose and learn, you know, how the thing works. I don't buy some arbitrary processor with a retard-layer on top...

"Look at this blinking LED! It's a 72MHz processor doing that! HA!"

do not make fun of my lamborghini hammer (1)

decora (1710862) | more than 3 years ago | (#36202020)

nor of my Monster mouse cable

Re:So you take an ARM (1)

Anonymous Coward | more than 3 years ago | (#36202136)

I want the cheapest thing around that can do some digital audio processing on audio coming in from an electret microphone through an OPamp circuit that I have designed. It has to cost less than $50 including shipping and programming tools.

Your suggestion to buy an 8-bit microcontroller without hardware multipliers is not helpful for reasons that should be obvious to anyone who knows anything about signal processing.

The Maple board is a couple of beers too expensive, but I will probably buy it anyway. Or maybe I'll get one of the other boards that people have so kindly suggested in the comments. This article, with it's measly 44 comments, has been the most useful Slashdot article in 2011 for me.

Now bugger off and go whine somewhere else!

Re:So you take an ARM (0)

Anonymous Coward | more than 3 years ago | (#36203406)

Learn to read, dickmuffin.

"Your suggestion to buy an 8-bit microcontroller without hardware multipliers"

Where did I say that, honey? I said choose the tool appropriate for the job. Fine, so you know what tool you need. Are you going to buy an overkill processor with a retard-layer on top, or are you going to learn to use the correct tool for the job? Guess what cutie-pie, you PAY for the retard-layer even when you don't use the full retard. Oy, kids these days.

BTW, it's means IT IS. Surprising the amount of people who seem so smart with their digital signal processing and multipliers can't handle the smallest symbol on the keyboard. OOOHHH, an APOSTROPHE! AARGH I'M SCARED!? DO I press it or not!? What should I DOOOOO?

Re:So you take an ARM (3, Insightful)

Glock27 (446276) | more than 3 years ago | (#36201276)

Dumb it down, and then what? What's next? "We take this Intel i7 and make it compatible with an 8 bit microcontroller! Previously, multi-core 64 bit processors were hard to use to make motors spin and LEDs light up, but NOW"

Seems faintly ridiculous, along the lines of just doing something for the sake of saying we did it, like a manned Moon landing.

I think you're looking at it the wrong way. This gives you a fairly powerful (well, 72 MHz) 32-bit processor in a small package, that's quite inexpensive. It's true that the amount of flash memory and RAM is small, although you could probably interface to more flash if you had to. However, what is nice is that the programming is easy, you have large registers, and you can do some fairly serious processing.

If you need less power, you can always just use the original Arduino line, or something even less powerful.

Having more choices and capability available is always a good thing.

Re:So you take an ARM (1)

Osgeld (1900440) | more than 3 years ago | (#36203358)

yea so does about a half dozen boards

Re:So you take an ARM (1)

Savantissimo (893682) | more than 3 years ago | (#36204790)

Compared to Arduino's Atmel (2,32kB) the Maple STM32/ARM (20, 120kB) has way more RAM and flash (also far more than the TI MSP430 series, while not requiring that much more power). The Maple RET6 gives 64kB SRAM /512kB flash and DACs rather than just PWM for only $10 more than the regular version. A version with FPGA on-board is in development. The Maple Mini which is just 2.02 x 0.72 inches and emulates a 40-pin DIP for breadboarding should be shipping in a few days.

Maples are capable of driving QVGA LCDs, doing modest signal processing (see LeafLabs wiki for a guitar pedal project), controlling motors, doing data-logging and complex control and much more.

While they can be pressed into service for doing traditional computing, microcontrollers are distinguished mainly by their built-in peripherals such as timers, ADC, DAC,sensors, encoders, communications etc. The STM / Cortex devices do very well on this measure, particularly the higher-end parts. The Maple forums are active and helpful; some ongoing topics are on using real-time OSes and interfacing with SD card flash memory.

For a cheaper start to working with the STM ARM chips Mouser [mouser.com] carries a rather nice-looking, hackableboard [st.com] with USB, LCD, blinkenlights, buttons, and capacitive touch sensor slider for just $15.

98% BIOS compatible (1)

inflex (123318) | more than 3 years ago | (#36201212)

Almost-compatible, that worked out really well in the PC market years ago.... not.

I think they should just market and develop these things entirely within their own realm (sure, bring along the Arduino 'easy programming' layer), the ARMs have so much more to offer over the AVR Megas (that said, AVR Megas/Tinys are GREAT, use them all the time for our production runs).

Still who knows, maybe it'll work more as a 'bridge' to ease the transition over for people who need more than what the current range of Mega chips can offer, I can just imagine #electronics and #avr being filled now with people going "WTF won't this shit work? Stupid AVR/ARM!" (oh wait, we already get that all the time).

No, it doesn't run Linux (2)

YA_Python_dev (885173) | more than 3 years ago | (#36201280)

Before you ask, this thing has 20 kB of RAM (yes, that's kilo, not mega), still better than the 2 kB of the Arduino but do not think of this as the same ARM that runs in your phone.

And, yes, you can still do quite a lot of stuff in 2 kB of RAM (I created a pretty complicated protocol translator at work with an Arduino that even ran in the old ones with only 1 kB RAM).

Re:No, it doesn't run Linux (1)

inflex (123318) | more than 3 years ago | (#36201302)

Are you talking -flash- or RAM? Even the mega168 only has 1K RAM (but obviously 16K flash).

It's surprising what you can cram into 512 bytes flash and 32 bytes RAM eg, AVR Tiny5.

Re:No, it doesn't run Linux (1)

inflex (123318) | more than 3 years ago | (#36201410)

God damnit - yes, of course you're talking RAM... sorry about that (I blame rapture!)

Re:No, it doesn't run Linux (1)

Savantissimo (893682) | more than 3 years ago | (#36204818)

Yes, 16k SRAM, 4k EEPROM, 128k flash (120k accessible). Souped-up version has 64k SRAM, 512k flash (plus dual 12 bit DACs and some other improvements). The ARMs are 32 bit and the STM-made version in the Maple has many other advantages over the 8-bit Atmels in the Arduino.

Re:No, it doesn't run Linux (1)

AdamHaun (43173) | more than 3 years ago | (#36202714)

Well, it is the same architecture (ARMv7) -- just a Cortex-M3 instead of a Cortex-A8. It's not quite an iPhone, but 72MHz and 128kB of flash is nothing to sneeze at for small embedded projects.

Arduino competitor? (2)

TuringTest (533084) | more than 3 years ago | (#36201320)

Great! But does it have all the characteristics required [makezine.com] to compete with the Arduino?

I've seen only technical bullet points in TFA, and technical bullet points are not the reason why the Arduino matters.

Re:Arduino competitor? (1)

drinkypoo (153816) | more than 3 years ago | (#36201568)

From a quick glance through the maple docs [leaflabs.com] the answer appears to be yes.

Re:Arduino competitor? (1)

Savantissimo (893682) | more than 3 years ago | (#36204872)

It uses the same software as the Arduino so far as the new user can tell. Shields are mostly compatible, and nearly all the rest could be made so with a few jumper wires. The format of the headers is the same. (for the main model, at least) The extra RAM, flash, and peripherals make more projects possible than the Arduino. Maple is 100% open source, including the hardware, and while it isn't yet as big as Arduino's, the developer community seems active and helpful, both to novices and experts.

What is Arduino? (1)

Cheburator-2 (260358) | more than 3 years ago | (#36201326)

Am I the only one who doesn't get what is this post about? What is Arduino and why is it so important?

Re:What is Arduino? (1)

inflex (123318) | more than 3 years ago | (#36201352)

Pretty much every non-electrical-engineering-background geek who tries their hand at electronics now is doing so using an Arduino device. To put it in OS terms, it's like the Ubuntu of Linux ;)

What a device that does XYZ when you give it data 'A', then grab and Arduino and viola, you're an instant EE.

If you detect a hint of cynicism in my post, you're right - while we love seeing many new people coming into the world of electronics design, at the same time it's a real fright when you see some of the hack-job designs that are produced ( again, in computing terms, a bit like when OpenSource first became popular and Freshmeat was filled with a billion "me too" apps which frequently crashed or just were plain awful :) ).

Re:What is Arduino? (0)

Anonymous Coward | more than 3 years ago | (#36201546)

It's not just for non-EE geeks. The Arduino boards are probably the most value for money dev boards for AVR.

Buy an Arduino, hook it up to your normal AVR ISP programmer and get rid of the Arduino bootloader. Done! Now you can code in C or Assembly if you don't speak C.

Re:What is Arduino? (2)

cynyr (703126) | more than 3 years ago | (#36201578)

right but we need to start somewhere... I would agree, with the ubuntu statement, which is why I'm not sure i would use one. It feels like very quickly i would run into wanting to do something but couldn't because my hands were tied (no pre-up hook for networking devices for example). At which point i would have to go buy a "real" microcontroler....

Now can i provide a PWM signal to a 4 pin 12Vdc computer fan with an arduino? because it is looking like a 555 timer won't make the high frequencies(24khz i think) that the PWM fans need.

Re:What is Arduino? (1)

inflex (123318) | more than 3 years ago | (#36201628)

As AC mentioned above, there's no restriction on using the hardware -without- the "easy coding" Arduino layer. Many of us do buy Arduino dev boards simply because it's a faster pretested/prefabbed/CHEAPER way of getting the microcontroller we want that we code the way we want (usually in ASM or C) without any of the Arduino software hindering us. Doing things that way means you can have a simpler daughterboard that's specific to your task at hand and you've got an easy module to replace/upgrade if need be.

Re:What is Arduino? (1)

betterunixthanunix (980855) | more than 3 years ago | (#36201732)

it is looking like a 555 timer won't make the high frequencies(24khz i think)

What sort of 555s are you using? Getting a 24kHz signal from a 555 should not be a difficult thing to do.

worse is better (1)

decora (1710862) | more than 3 years ago | (#36202030)

theres an old uhm article about why the C language and/or Unix became popular, i think its called 'Worse is better'.

Re:What is Arduino? (1)

hbackert (45117) | more than 3 years ago | (#36202314)

Now can i provide a PWM signal to a 4 pin 12Vdc computer fan with an arduino? because it is looking like a 555 timer won't make the high frequencies(24khz i think) that the PWM fans need.

Yes you can. Not exactly 24kHz. But 32kHz. Which works very well with the Owltech fan (4 pin) I have. http://www.formfactors.org/developer%5Cspecs%5C4_Wire_PWM_Spec.pdf [formfactors.org] says: 21-28kHz. When I use lower frequencies I can hear a buzzing. It worked at 500Hz just fine, with the exception of the slight but annoying noise. Running the fan at 32kHz PWM works fine. No noise, and the fan spins fast and slow as required.

Re:What is Arduino? (1)

Darinbob (1142669) | more than 3 years ago | (#36204342)

Yes, this is a small 8-bit processor with extremely little memory, you're not going to be doing much with networking. You'd have to look at a 16 or 32-bit processor (PowerPC, ARM, MIPS, x86, SH, etc). I think PWM is the sort of stuff these CPUs can be good at, depending on application. You don't need the 555 timer chip, just use the PWM peripheral on the processor itself.

Re:What is Arduino? (1)

betterunixthanunix (980855) | more than 3 years ago | (#36201696)

My how times have changed. I remember tinkering with electronics in high school, and mostly what I have to show for it is a box of random parts and a whole lot of burnt out ICs, including a number of microcontrollers (oh, yeah, and a bachelor's in EE, which is how I learned how to actually use all those parts; there were plenty of burnt out ICs involved there too...).

Re:What is Arduino? (1)

Eponymous Coward (6097) | more than 3 years ago | (#36201370)

I'm sure you're not the only one who doesn't get it, but so far you are the only one to complain about it rather than look it up or just move on with your day.

Re:What is Arduino? (1)

BasilBrush (643681) | more than 3 years ago | (#36201402)

Before worrying about that too much, you should find out what Wikipedia and Google are.

Re:What is Arduino? (0)

Anonymous Coward | more than 3 years ago | (#36201642)

What the fuck is the internet?

Re:What is Arduino? (0)

Anonymous Coward | more than 3 years ago | (#36201684)

You can think of it as a series of tubes.

intetnet is not jsut ordianry tubes (1)

fregare (923563) | more than 3 years ago | (#36203508)

It is composed of very special pipes that are called SEWAGE pipe that interconnect various interSewers such as FarseBook and Dwitter.

Re:What is Arduino? (0)

Anonymous Coward | more than 3 years ago | (#36201730)

I admit I've been gone a little while but before I left Arduino meant a board with an AVR chip, not the AVR chip. And tool chains were things that had to do with programming chips, not boards. So any way I look at it there's a lot of really sloppy, misleading speech above this comment and the question "what is an Arduino" is appropriate.

Saying something "look it up, asshole" is possibly appropriate sometimes but not right here

Re:What is Arduino? (0)

Anonymous Coward | more than 3 years ago | (#36201828)

It's very damn appropriate to tell the guy to look it up. Typing "Arduino" into Wikipedia would've explained all of that, and faster and better than waiting for responses here. And, he wouldn't have had to see people say "look it up, asshole"

Spending a few minutes looking something up and reading about it is just the right thing to do.

Re:What is Arduino? (0)

Anonymous Coward | more than 3 years ago | (#36201954)

OK, look up Asberger's Syndrome

Re:What is Arduino? (0)

Anonymous Coward | more than 3 years ago | (#36203082)

Only if you learn to spell it, retard. Or use the incredibly complex COPY and PASTE when a word has more letters than your tiny squirrel-like brain can handle.

Re:What is Arduino? (3, Insightful)

vadim_t (324782) | more than 3 years ago | (#36201936)

It's a microprocessor on a small board with digital and analog inputs and outputs, a serial port, easy programmability via USB, easy to use IDE and library of useful functions. The board accepts from 7 to 12V, and has pins that output the input voltage, 5V and 3.3V, which is very convenient.

There are different versions of it, but the pinouts are standarized and it's made in a way that additional modules can be plugged on top of it, to provide functions like storage on SD cards or wifi.

Why is it important? Because it allows people with near zero experience in electronics to make something that works.

You can buy a microcontroller cheaply. But you'll need to spend many hours reading the datasheet, understanding how to hook it up, and how to program it. You'll end up working with a huge mess of wires on a breadboard, and need additional hardware for programming it.

With an Arduino, you plug it into an USB cable and in less than 5 minutes you'll have your blinking LED. From there, you can say, buy a wifi shield and a solar panel shield, simply stack them, hook up for instance a temperature sensor to an analog pin, and with a bit of code you can poll that sensor over wifi.

Projects done with it will likely be much more expensive than strictly necessary, but you'll be able to easily do things that would otherwise need a decent understanding of electronics.

Re:What is Arduino? (1)

Darinbob (1142669) | more than 3 years ago | (#36204228)

It's basically just an 9-bit CPU (one of a number of AVR ATmegas) on an evaluation board. The real reason it is popular (other than because it's already popular) is that it has a lot of no-solder connections to add your own peripherals plus it has a dumbed down graphical programming environment. A serious hobbyist is going to skip the environment, but at that point they can find cheaper or more powerful evaluation boards as well.

Essentially it's the Visual Basic of the hardware world.

Other ARM-based Arduinos. (4, Informative)

Rufty (37223) | more than 3 years ago | (#36201340)

I've got a LeafLabs Maple. And a Cortino [bugblat.com] . And an ARMimte Pro [coridiumcorp.com] . They're all ARM processors on an Arduino footprint board.(There's also Xduino [xduino.com] , but I haven't tried one.)
The Maple aims to be as Arduino-like as possible; even to the extent that you should eventually be able to copy running code from the Arduino IDE, paste into the very similar Maple IDE, hit compile and upload and you're good. It's not quite there yet, but if you're just developing for the Maple it's nice now.
The Cortino is a much more traditional embedded system. It's got an uploader. (Windows executable only.) And, well, that's it. Find your own compiler and runtime. I think I remember finding that the upload protocol was something standard, but I ended up using OpenOCD [berlios.de] and soldering in the JTAG header. One brick wall of a learning curve, but I was so pleased at getting it to blink morse!
The ARMite PRO is the Arduino-footprint offering in a range of boards. They are preloaded with a BASIC interpreter, but solder on a jumper and you can upload via a FTDI USB serial cable. I think it's just the same as the Arduino lilypads.
Fun to play with; I need to get an Xduino now!

Re:Other ARM-based Arduinos. (0)

Anonymous Coward | more than 3 years ago | (#36204848)

Don't forget the Netduino and Netduino Plus ARM-based boards in Arduino form factor, very nice. I junked the .NET and put FreeRTOS on mine...

Netduino (1)

Anonymous Coward | more than 3 years ago | (#36201814)

I would also consider Netduino [netduino.com] . It's a bit cheaper and, like the Maple, it is probably capable of doing a lot of the things you're thinking of doing if you feel Arduino is holding your hobby project back. It uses the .NET Micro Framework.

Wait, is this Slashdot?

*Runs*

whats next the VB Duino? (1)

decora (1710862) | more than 3 years ago | (#36202040)

sounds like some kind of disease...

I'll take mine with a dash of AVR (2)

TechyImmigrant (175943) | more than 3 years ago | (#36201822)

Given the choice for a bit of microcontroller hacking, I would take the AVR every time over an ARM. The ARM instruction set and processor model is a huge kludge. The AVR's is quite neat and clean. I've designed ARMs into a few chips and I've yet to meet an engineer who has chosen ARM because they liked the ARM, it's always because higher management have brought into the hype. The details suck.

Re:I'll take mine with a dash of AVR (1)

Anonymous Coward | more than 3 years ago | (#36202350)

I can't disagree strongly enough, and this is factually incorrect in almost every way. Besides the fact that 98% of cell phones use ARM CPUs [cnet.com] , the STM Cortex-M3 specifically has an incredibly versatile set of peripherals and power management abilities. Not to mention a hundred times the RAM and FLASH, and >5x the performance. While you might disagree with the rest of the world, it doesn't make you right. The instruction set is annoying if you're programming in assembly, but certainly less annoying than the 8051, and in any case CodeSourcery has put the effort into the ARM GCC port to make it a MUCH more mature platform for C/C++ than avr-gcc.

Re:I'll take mine with a dash of AVR (1)

thegarbz (1787294) | more than 3 years ago | (#36205472)

Really? Make it right? The guy posted a personal opinion. How can a personal opinion be factually incorrect?

Mind you I couldn't agree more with him. Coding for AVR is simple and neat. Small embedded applications are far easier to code for an AVR than an ARM. The only reason one would pick ARM is if they are forced into it by the required featureset or management, and I have seen a LOT of applications with an ARM chip which could be satisfied on an ATTINY, probably taking advantage only on economies of scale, otherwise why spend the money on that more expensive processor.

As for the maturity of a platform.... what is not 100% mature about AVR? Every function to every AVR chip has a library in avr-gcc. Or are you again confusing the compiler ability with the feature set of the microcontroller?

Re:I'll take mine with a dash of AVR (0)

Anonymous Coward | more than 3 years ago | (#36206126)

I've coded for both ARM, AVR 8-bit and AVR 16-bit and I found the ARM instruction set far more regular and easy to work with, e.g. it generally doesn't have restrictions on which register you can use with a given instruction.
The separate address spaces on the AVR was also frequently a PITA.

Reasons I might consider an AVR over an ARM would be price, power consumption or form factor -- but it's not a given that an AVR is going to win out over ARM at those points for any specific task.

Re:I'll take mine with a dash of AVR (2)

Arlet (29997) | more than 3 years ago | (#36202722)

Having written plenty of code for both ARM and AVR, I have to disagree here. The ARM instruction set is very nice, powerful, and easy to learn. In comparison, the AVR isn't bad, but I certainly wouldn't favor it. The biggest problem with the AVR is the strict Harvard architecture, which means there's no good way that you can make a routine on the AVR that accepts either a pointer to RAM (such as a variable string) or pointer to Flash (such as a constant string).

Besides, you can write many interesting programs without ever having to know the instruction set or the processor model.

Re:I'll take mine with a dash of AVR (1)

Darinbob (1142669) | more than 3 years ago | (#36204370)

AVR is tiny. ARM is much larger with a 16 or 32 bit bus and can have vastly more memory. They're meant for very different purposes. If you're going to need a large CPU anyway, and the ARM can also handle the microcontrolling part, then the ARM is the right choice.

However many systems use both. Large 32-bit CPU with a small 8-bit CPU on the same board.

Why not an MBED? (0)

Anonymous Coward | more than 3 years ago | (#36201994)

Why not a mbed instead? It's super user-friendly and has more I/O. http://www.mbed.org You just plug it into your computer and it appears as a flash drive. In the drive is a link to open up the mbed website which has all the compilers/tools/documentation and when you compile a program you just save it back to the flash drive and push the button on the top of the controller.

Re:Why not an MBED? (0)

Anonymous Coward | more than 3 years ago | (#36202310)

Short answer : it's proprietary.

Last time i checked, you had to be connected to their server during development because the compiler is on NXP's servers. I bet in 5 years it will not work anymore.

GCC is free and is not limited in size or scope. You can hack into the various Arduino stuff, not just the source code that runs on the target but also the tool. You can archive and use it in 10 years to support legacy code that you deployed ...

Another question ?

Re:Why not an MBED? (1)

timthorn (690924) | more than 3 years ago | (#36203994)

You can develop for mbed with GCC - it takes regular binaries, and the mbed website walks through how to use alternate toolchains. However, the project was developed in order to reduce the barrier to entry of developing embedded software. It's extremely easy for a novice to get started.

Psoc5? (0)

Anonymous Coward | more than 3 years ago | (#36202188)

I would really liked a psoc5 based xduino....added analog and digital hd blocks and buildin dac are awsome. Granted, it would be advanced board.

ARM is not needed (2)

alvieboy (61292) | more than 3 years ago | (#36202516)

I actually had some conversation yesterday about this [having ARM powering microcontrollers and small embedded].

I don't think this will succeed, and I believe there are a few reasons for it. I also created an "Arduino" clone, based on a different processor, called ZPUino [alvie.com] , and although the programming environment, libraries and so on can be nearly the same, specifics to the SoC are always tricky to implement and to provide viable alternatives.

Why standard ARM will not replace Arduino:

    * Lack of internal ADC
    * Power consumption
    * Latencies and jitter in execution path and in memory access path. This is very important.
    * Lack of proper GPIO and common Arduino devices (timers, PWM, so on, so on)
    * You cannot build one yourself.

Arduino follows the KISS model. Introducing complexity here is not welcomed. Arduino is meant to be used by non-experienced programmers, hardware hobbyists and DIY aficionados.

Why would you use an ARM, with a few megs RAM, a few megs flash, to blink a LED ?

Álvaro

Re:ARM is not needed (2)

AdamHaun (43173) | more than 3 years ago | (#36203026)

The SoC on this board has an internal ADC along with timers, PWM, and GPIOs. Not sure what you mean about latencies and jitter. Shouldn't a 32-bit CPU handle code and data accesses better than an 8-bit CPU? I'm not really a CPU architecture guy, so please correct me if I'm wrong.

According to the datasheets, this STM ARM chip at 3.3V consumes a bit over half the power of the ATMega328 from an Arduino Uno running at 5V despite the former's CPU/memory advantage. Dynamic power is proportional to the square of supply voltage, so a 3.3V chip is going to have a big advantage over a 5V chip, all else being equal. A low-voltage chip is also easier to run off of a solar panel or small battery. If you want to go below nominal, the STM has an even bigger advantage at 2.0V. There are Arduinos that run at low voltages, but they have to run at lower frequencies. An AVR still wins for many needs, but not all.

ARMs come in all sizes. On Slashdot you usually hear about them as a netbook CPU, but there are plenty of low-end chips available too. This board is designed for higher performance, but it's not excessive. If you can get more flash and RAM for roughly the same price and power consumption, why not take it?

I don't use Arduinos so I can't speak for the overall system design, but I don't see any reason why you can't use an ARM SoC as the core of a hobbyist platform. It might not always be the best choice, but it does seem like a valid choice.

Re:ARM is not needed (1)

Arlet (29997) | more than 3 years ago | (#36203386)

Shouldn't a 32-bit CPU handle code and data accesses better than an 8-bit CPU? I'm not really a CPU architecture guy, so please correct me if I'm wrong.

He means that ARM SoC usually have some jitter in the instruction timing This could be caused by cache fills, or by more complex memory buses, such as a bus which is also shared by a separate DMA controller. Because of the higher bus speeds, there is usually more delay, and this means longer burst access. So the DMA could be doing a long burst, while the CPU has to wait. Also, the Flash may not be running at 72 MHz, but maybe at 18 MHz, and have a 128 bit wide interface + a small cache.

In practice, this is only a problem in the most demanding applications, where you cannot tolerate sub-microsecond jitter. For those applications, it is unlikely that the slow AVR is better suited.

Re:ARM is not needed (1)

Darinbob (1142669) | more than 3 years ago | (#36204414)

True, a 1MHz AVR is not what you use when you have to worry about sub-microsecond jitter. If you hate the ARM with caching inconsistencies then you get an ARM without caching instead of a performance oriented ARM.

Re:ARM is not needed (1)

rasmusbr (2186518) | more than 3 years ago | (#36203102)

I suppose that the idea is that people will use the Maple board to make things that are more complex than your typical Arduino project. There are highly experienced people who know how to create advanced systems and algorithms, but who don't know how to work with electronics. Someone like that could use a Maple board to create an autonomous vehicle, or a music instrument, or anything that you can cram inside a 128 kB program memory and 20 kB RAM.

I like your project, and I look forward to hearing more about it. But I think the first two bullets on your list could probably be used to argue against using an FPGA with a soft CPU. Where can I find a low-cost FPGA with internal ADC? Does your soft CPU have better performance per watt than an ARM?

Re:ARM is not needed (1)

Arlet (29997) | more than 3 years ago | (#36203324)

If all you want is a blinking LED, you don't need an ARM, but if you want to have a blinking LED controlled by a built-in web server, an ARM will work nicely.

And why worry about some timing jitter when you're blinking a LED ? What kind of project are you doing that a few dozen nanoseconds is going to matter ?

Re:ARM is not needed (1)

Darinbob (1142669) | more than 3 years ago | (#36204396)

The issue is probably not with "replacing". Real world systems do not choose one over the other, they use both. Some systems have a lot of processors under the hood. ARM + PIC + DSP, etc.

But does it run RISC OS? (0)

Anonymous Coward | more than 3 years ago | (#36202580)

n/t

Re:But does it run RISC OS? (1)

BLAG-blast (302533) | more than 3 years ago | (#36203048)

Ah, somebody who remembers ARM's beginning.

From the SparcFun page:

In the past, ARM processors were notoriously unfriendly in non-professional environments due to proprietary tool chains and unfamiliar instruction sets. Because of this, they were conspicuously absent from classrooms and hobbyists’ workbenches.

ARM start off in the classroom in form of the Archimedes A3xx, the instruction set is simple and easy to learn, I've always found it very easy to get specs for an ARM chip (at least the ARM part, often combined with another chip on the same silicon, can't speak for the none ARM parts). I learnt the ARM instruction set in 1989 as teenager and pretty much every thing I learnt is still relevant. The

Anyway, long live Acorn Risc Machine!!!! Long live Acorn Risc Machine!!!! Long live Acorn Risc Machine!!!!

Screw Sparkfun (0)

Anonymous Coward | more than 3 years ago | (#36203014)

and their 600% noobie rape markups for stolen designs

Re:Screw Sparkfun (1)

Tacvek (948259) | more than 3 years ago | (#36203298)

While you sound like you might be a troll, I'm going to give you the benefit of the doubt.

I've not personally ordered anything from SparkFun, but from what I can see their prices are competitive for their products (as long as you buy them directly from SparkFun, and not through an intermediary like Amazon).

Sure, if you have the facilities to manufacture PCBs locally then you may come out cheaper buying the parts yourself. There is no guarantee though due to shipping costs, and not buying the parts in bulk.

However, I've not noticed any price gouging, nor any stolen designs. Perhaps I am missing something.

Re:Screw Sparkfun (0)

Anonymous Coward | more than 3 years ago | (#36203410)

compare components, compare tools ie their soldering iron is a 45$ china crap you can buy on google all day long

as far as ripped off designs every single page is littered with them, they copy / paste right out of datasheets and slap copyright sparkfun on them, hell their arduino offering is a uno without uno packaging and says directly on the front "arduino uno brought to you by sparkfun electronics" and lets not get started on their open hardware plans, where you make the board and they dont even have to give you the privliage of putting your name on it before they start mass production of it with zero design effort or development cost or pesky royalties

but tbh they used to be worse, they were selling 49 cent components for 4.99$

Re:Screw Sparkfun (1)

Tacvek (948259) | more than 3 years ago | (#36206314)

For the Arduino Uno, AFAIK they pay the licensing fee to be an official secondary manufacturer of the device. (They are/were primary manufacturer of Arduino Pro, Arduino Pro Mini, and Arduino Lilypad.)

One soldering iron they sell is the Hakko FX888 for $99. Other suppliers sell it at $80-$100. For example Adafruit Industries sells it at $95. Another is the AOYUE 2900, which they sell at MSRP (~$100). They also sell the AOYUE 2901 at MSRP (~$80). The last iron they sell is cheaper than $45, so I know you are not talking about that.

As for Open Source Hardware, yes it does give anybody permission to make and sell it. That is part of the point. Nevertheless, open source hardware projects like he Arduino are able to capitalize on their trademarks, so places like Sparkfun are willing to pay a reasonable royalty to be able to use the trademark.

Further, Open Souce hardware licenses can require attribution.

Waste of money (1)

scribblej (195445) | more than 3 years ago | (#36203800)

Considering digilent just announced THIS yesterday, ...

http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,892&Cat=18

Arduino Uno/Mega compatible, 80mhz, moar pins, on-board ethernet.

$50.

This other thing is crap in comparison.

Re:Waste of money (1)

rasmusbr (2186518) | more than 3 years ago | (#36204022)

That does look like a good deal.

The PIC32 chip runs at 80 MHz, it has 512 kB program memory, and 128 kB RAM, a 10-bit 16-channel 1 MS/s ADC, 4 32-bit timers, 1 16-bit timer, Ethernet, USB. Everything you need to make a powerful embedded wired network system.

The $27 version is not bad either. Damn. I could go on at the risk of sounding like a salesman...

What's the drawback?

Re:Waste of money (1)

Osgeld (1900440) | more than 3 years ago | (#36204200)

I have a couple pic32 boards, I like avr's better but those things pack a pretty decent punch, and since its a real MCU it can handle more load on the pins and those pins are 5 volt tolerent (well the non ADC pins are) and much more GP

course I am basing that vs my arm M3 board

Re:Waste of money (0)

Anonymous Coward | more than 3 years ago | (#36204796)

It isn't crap, it is different. Check also the arm-based Netduino that has a lot more RAM and costs less. I junked the .NET stuff and put FreeRTOS on my Netduino.

Re:Waste of money (1)

Savantissimo (893682) | more than 3 years ago | (#36204976)

That's a very nice board, but Maple certainly isn't crap by comparison. The Maple is cheaper, maybe more well-supported, nearly as fast. Many will prefer ARM to PIC - it is certainly more popular professionally. The peripherals are also different - while Ethernet and CAN could be vital for some things, the ST ARM has dual 12-bit ADCs while the PIC chip only has 1 10 bit ADC. The upcoming Maples will also have just as much flash as the PIC plus 12-bit DACs. Maple looks better for many purposes.

Re:Waste of money (0)

Anonymous Coward | more than 3 years ago | (#36206376)

Uh, those boards from Digilent require MPLAB from Microchip to program them and won't work with anything else. Why, oh why, won't they break out the JTAG port on the PIC32? It's like they go out of there way to lock you into using their tools when there are tons of mature tools (both open and closed source) to work with MIPS.

Exactly the same except where it's different? (1)

Have Brain Will Rent (1031664) | more than 3 years ago | (#36204356)

designed to be pin compatible

plus

are incompatible due to certain capabilities being allocated to different pins

So are the shields incompatible with the Arduino? Or is the ARM device not pin compatible with the Arduino?

ERROR ERROR ERROR DOES NOT COMPUTE ERROR ERROR ....

Re:Exactly the same except where it's different? (1)

Savantissimo (893682) | more than 3 years ago | (#36205000)

Most shields are compatible, most others can be made compatible with jumper wires. Take a look at the LeafLabs site, they mention some that have been tested. The forums there might be able to help you out if you have a specific shield in question.

Re:Exactly the same except where it's different? (1)

Have Brain Will Rent (1031664) | more than 3 years ago | (#36205014)

Yeah, it's just that the summary was ambiguous (I know... welcome to /.)...

OR... (0)

Anonymous Coward | more than 3 years ago | (#36204748)

You could get a Netduino: http://netduino.com/netduino/specs.htm

Pin-compatible with the Arduino, and you get to use Visual Studio with the .NET Micro Framework. Very easy to get up and running.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?