Arduino Goes ARM
mikejuk writes "The whole world seems to be going in ARM's direction. The latest version of Windows 8 will run on ARM processors, Raspberry Pi is a $25 ARM based machine and now the open source Arduino platform has a new member — the ARM-based Arduino Due announced at the Maker Faire in New York. The Due makes use of Atmel's SAM3U ARM-based process, which supports 32-bit instructions and runs at 96Mhz. The Due will have 256KB of Flash, 50KB of SRAM, five SPI buses, two I2C interfaces, five serial ports, 16 12-bit analog inputs and more. This is much more powerful than the current Uno or Mega. However, it's not all gain — the 3.3V operating voltage and the different I/O ports are going to create some compatibility problems. Perhaps Intel should start to worry about the lower end of the processor world."
I dig this idear!
FTA (bold = my emphasis):
We’re going to be demoing the board and giving away some boards to a selected group of developers who will be invited to shape the platform while it’s been created. After Maker Faire, we will begin selling a small batch of Developer Edition boards on the Arduino store (store.arduino,cc) for members of the community who want to be join the development effort. We plan a final and tested release by the end of 2011
I can't wait to experiment with these puppies.
PS: I don't reply to ACs.
Atmel is the manufacturer of the ARM processor for the Due, not Amtel. The misspelling is propagated from the original article.
Can someone explain the difference here? I mean, will this allow bigger / better projects? I'm not a programmer and only vaguely familiar with some of the projects done with Arduino. I love the idea of a upgrade as much as the next person, but I was wondering if someone could give me a context of what can be achieved here that couldn't have before?
Restore the madness of youth's lechery
As somebody who is looking for a more powerful prototyping platform on the cheap I look forward to this. But I would not use it for a majority of my hobby projects, which do not need a lot of this power.
Most arduino projects only use a few I/O pins and very little processing power. Many hobby projects could be made with a much weaker pic processor, and many could get by on the basic 8 pin pics. Many people don't know that the simpler solutions exist, because they only see arduino stuff all over the web. The full development board is way overkill.
Additionally, with current arduino setups, it is fairly simple to make a clone around an ATmega chip. All parts are soldered easily through hole, and the schematic is easy. With a 32 bit surface mount chip, the schematic gets complex enough that most hobbyists are now scared off by the hard soldering and the crazy layouts. The open source, easy to clone nature of Arduino that made it what it is today is incompatible with the new high-end boards, and people will have to pay more for the official dev boards, or something else professionally fabbed.
there are dozens of arm board, some for as little as 10 bucks (ST) I just dont have the faith in this product.
And this goes nicely with the Microchip PIC32 (MIPS-based) Arduinoid chipKIT boards that went public at the Bay Area Maker Faire: http://themakersworkbench.com/?q=node/421
Lacking <sarcasm> tags,
Perhaps Intel should start to worry about the lower end of the processor world.
This has always belonged to the likes of Motorola and others. Comparing ARM to x86 is like comparing apples and oranges. At one point people will wake up and realize that after reading a book and playing Angry Birds, tablets are rather limited. I know a lot of people suffering from buyer's remorse after buying tablets. They have their uses, they have their niche market, but at one point when you make a tablet do everything a laptop or desktop does, you end up with a (bad) laptop or a desktop.
Seven puppies were harmed during the making of this post.
I don't believe Raspberry Pi is available yet (see http://www.raspberrypi.org/faqs/, first line), but I'm seriously considering picking one up when it's available. Arduino is definitely an amazing platform, but I just don't need something quite that low level. I'm currently toying with turning one of those cheap $10 "cameras" into a wireless surveillance cam. As far as ARM goes, I'm not deep enough into the hardware to care either way anyway.
I miss my Motorola 68k.
This is very good news for the hobbyist community. While there are already a few ARM-based boards out there (Leaflabs Maple) they do not have a large community and are not compatible with all the Arduino stuff out there. An ARM-based Arduino fills nicely the gap between the small Arduino and much more powerful boards like the Beagleboard which have very different power and space requirements.
I am very interested what kind of operating system the Arduino team is using for the Due. While it makes sense to only equip the smaller ones with a bootloader the Due could run a small realtime OS with networking, threads and a file system which would make larger applications easy to put together. Does somebody have any information on the software running on the Due?
Intel is making plenty of money, but they definitely see ARM as long term threat, which is part of the reason they've been focused on power consumption and performance per watt the last 5 years.
make imaginary.friends COUNT=100 VISIBLE=false
Really? They should start to worry only now? If I were them, I'd be right in the middle of worrying, not simply starting to do it.
I'm a minority race. Save your vitriol for white people.
The classic thing that happens with disruptive technology is:
Microsoft understands this and they made darn sure that Linux wasn't allowed to establish a beach head in netbooks. Intel could use the same tactics to fight off ARM processors. Both companies probably won't be able to fight off their respective disruptive technologies forever though.
http://en.wikipedia.org/wiki/Disruptive_technology
It's Atmel's SAM3U, not Amtel.
five SPI buses
I read that as five spouses and thought: Fuck, what is it doing? Making a harem?!? Then I realized two things: We're talking about a mobo and second, I need more caffeine.
I call it 'The Aristocrats'
Intel released the XScale to Marvell back in 2006. Is that what you mean? Besides, Itanium has better predication.
I recall maybe ten years ago people talking about how everything was going from C to just about anything else. But the reality is that C/C++ is still on the ground floor doing the heavy lifting.
I suppose if you're stranded on a ship in the doldrums, you shake your fist at the sky above rather than the ocean beneath, which makes perfect sense until someone follows up with the attention grabbing headline "Ocean Spurned".
I've used the SAM7XC512 before which was a pretty fat SOC with 128KB SRAM. This chip stacks up nicely (twice the speed, half the SRAM) and it really does have 5 SPI ports on the data sheet.
Why couldn't this have come along 3 months ago before I had to develop a load of in house dev boards for ! Dual i2C buses and a nice fast clock would have been an ideal off the shelf solution.
In related news I'm probably going to be buying 10 of these the day they are released, hopefully on the works account.
ARM's relaxed/weak memory consistency model is not an issue for non-concurrent programming since the compiler takes care of you. But when you're making parallel programs and you're concerned with performance and using lock-free algorithms, ARM is a nightmare in trying to figure out the appropriate memory barriers yet not overuse it and kill performance. X86 has much more limited reordering and even there it takes some serious thought in making sure your lock-free code is correct.
"Politicians and diapers must be changed often, and for the same reason."
this is very very good news!
as someone who has ran out of SRAM on a mega2560 and was looking at the next atmel chip up's evalulation board, this is the best news of the year so far....
I'll take the one made by Amstel.
If you're running WIndows and one of your processes explodes, like Firefox seems to almost daily, and starts trying to burn up the entire CPU, it used to be a real problem, because the user interface became unresponsive. With dual-core, what usually happens is that one core gets burned up by Firefox, but the other one's available for other processes, like driving your UI or running mail or killing Firefox.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Xilinx is marketing Zynq, a new line of chips containing ARM-9 with embedded FPGA peripheral. Arduino is remarkable because its HW design is open-source, and reproducible without a license. So is there an Arduino "IP core" that can be configured on a Zynq FPGA, and then Arduino code run on that?
How about using that Arduino in FPGA on ARM to replicate the functions of this new Arduino/ARM chip? Would code targeting the Arduino/ARM chip "just work" on the Arduino/FPGA/ARM chip?
--
make install -not war
The specs on this seem to be better than what Digilent's UNO 32 is:
Microchip® PIC32MX320F128 processor
80 Mhz 32-bit MIPS
128K Flash, 16K SRAM
42 available I/O (I think that includes 16 analog)
The price of this is also $25 and the software is based on arduino's code. The voltage is also 3.3 like the announced one instead of the UNO's 5.0V.
Personally, we will probably be sticking to Digilent as the company is about a 30 minute walk of where I work (which saves on shipping costs).
I don't think that Intel will be worried that something moved from one non-Intel platform to another non-Intel platform, especially in a market segment that Intel does not compete in. Those Atmel/ARM chips run under $5 per chip, soemtimes under $1. Intel has the Atom chips around $50 at the low-end.
Arduino's current Uno design burns an entire Atmega chip converting USB to less-useful serial, matching what they used to do with a more specific serial chip, and it's difficult to really use the USB through that interface. The new Arduino Leonardo follows on that by using one of Atmega's newer chips that does USB functions as well as general processing in one chip, so it makes it easier to do a lot of the functions they mentioned, like keyboard and mouse protocols. The catch is that all of Atmel's AVR chips with the USB functions are in surface-mount packages, unlike the friendly DIPs that the 168 and 328 used, or 8-pin DIPs like the 45 and 85. It's a much cleaner and more efficient design, but I've got mixed feelings about the loss of user-accessibility compared to popping a chip into the Arduino and reprogramming it.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Typo in original article.
What the heck is Arduino?
Never say never. Ah!! I did it again!
That's what Sophie Wilson said.
(with apologies to the awesome Ms Wilson)
The only downside is that it's BGA, but if somebody else puts it down on a board for me, that's sweet.
After we're done slashdotting arduino.cc, go take a look around. Arduino makes an open hardware and software design for an 8-bit microcontroller board with a bunch of pins for analog and digital input and output, with a friendly C-based integrated development environment. Even if you're an artist and not an electronics engineer, it's a friendly easy-learning-curve environment for building electronics that respond to sensors, and taking technology that used to be opaque magic and turn it into transparent crafts you can understand.
Typical kinds of things people do with Arduinos are blink LEDs, use all sorts of input sensors for distance or temperature to control blinking LEDs, move servos or other motors, build simple robots, sew them into clothing so you can blink LEDs in time to music or when you wave your arms, turn on your lawn sprinklers when your plants are dry, that kind of stuff.
What this new release does is two main things - there's one new 8-bit board that's simpler, cheaper, and a bit more powerful, and there's another new board that has a 32-bit CPU and a lot more sensor I/O. The 8-bit designs are a somewhat limited programming environment (which is enough for a lot of things, and can be an intellectual puzzle if you like that sort of thing). The 32-bit design will let you do much more powerful projects, which may be especially useful for music or video, and it's still cheap and friendly.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
mikejuk's submission paragraph states: "However, it's not all gain — the 3.3V operating voltage and the different I/O ports are going to create some compatibility problems. "
I respectfully disagree. Firstly, there are already a lot of 3.3v based Arduinos on the market. I own a JeeNode (see Jeelabs in EU, Modern Device in the USA). The JeeNode can run a 434MHz wireless radio transceiver and temperature sensor for MONTHS on a single 3.3v boosted AA battery. You could not do that with 5V.
Adafruit has a tutorial on converting Arduino Unos over to 3.3v, from 5v. It's popular.
Mostly all sensors these days are 3.3v.
But most most actuators (like stepper motors) require MORE than 5V. Sure, there's some relays requiring a mere 5v.. and very few work on 3.3v... but most relays require 6V or higher. The usefulness of 5V is diminishing, so what you really want is just enough power to activate a transistor or relay.
(Some Arduino compatible chips run great at 1.8v, and sensors do also... there will come a time someday where it may make sense to run at less than 3.3v)
I see Arduino more as a collection of standards and open hardware. There are dozens of Arduino designs all of which vary slightly in terms of electrical and physical (pinout, etc) compatibility. But this too is a good thing... the Arduino platform is all about ADAPTABILITY.
It's probably Javascript - I'd normally blame Flash, but that's generally wrapped up in Plugincontainer,exe these days, and the CPU count shows up in Firefox.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Does this have proper 2.5mm pin spacing throughout?
The most annoying thing about the regular arduino is the fact that you can't use standard protoboard for home made shields.
Please tell me they have fixed this problem.
Sparks:Gadget:Beer Maker
There is one problem with this. Yes, you can prototype on arduino very well, but suppose you tested everything and want to deploy your project on a dedicated board. I can't see hobbysts soldering QFP packages and making 3+ layer PCBs at home somehow. Compare that to soldering a DIP socket on a possibly one-sided board.
Maybe one project - one arduino isn't a problem for some. For me it's way to pricey and not a good solution to add a quite big board with a lot of redundant circuitry to every project.
Next thing - what about the mods, arduino forks, fully compatible alternatives? There won't be so many now.
An I2C solution to every problem, my ideal arduino would have 4 pins, 2 of which would be for the supply.
Second of all, why the hell would Intel have something to fear from a 96 MHz Cortex-M3 part? This makes no sense, since this isn't even a segment Intel is actively pursuing. What might be competitive with Intel's offerings could be something like an Cortex-A15 part (which AFAIK there are none of on the market as of now) or even a Cortex-A9 part with some of the low-end Atoms. However, the Cortex-M3 definitely has absolutely nothing to do with any of Intel's offerings, so this clearly demonstrates a lack of understanding of how microprocessors work in the market (and how ARM and something like Arduino falls into the real-world marketplace) on the part of the submitter.
It looks like Arduino has followed Netduino's lead...
The Netduino has an Atmel AT91SAM7X512 microcontroller, which has an ARM7TDMI (ARMv4) core running at 48MHz, 512kB flash and 128kB sram.
The Arduino Due has an Atmel AT91SAM3U4E microcontroller, which has an ARM Cortex (ARMv7) core running at 96MHz, 256kB flash and 48kB sram.
Unfortunately, the GPIO is on the APB, which means IIRC a minimum 7 cycle access time - you can't bit-bang faster than 12MHz.
Now that 24 bit 192k audio is the norm for motherboards, I'd like to see this on a small cheap board BTW --- how much is the Due going to sell for?
An Arduino with a really great CPU gets us only part way. While more processing on the Arduino will be a fantastic jump in the right direction, it still is an issue with regards to I/O. This Arduino should have an option to solder on for example an Atmel FPGA which can be programmed by the CPU and in addition has X number of pins from the FPGA which are already level adjusted for 5V using 3.3v to 5v tri-state buffer chip.
:)
This is just my two cents
Since over a year, I know the Maple Arduino from leaflabs.com that has a 72MHz ARM Cortex M3 chip for a lower price than the Mega 2560. Some versions include even analog outputs. So what is new here?
A small OS should have no problem with 50K of RAM. We don't want to run linux on it but networking and a file system would be really help to get small applications up and running. With the current Arduino you can talk to an SD card but this is far away from an call to open(). So while I love the small Arduino a little support from an OS could really help and fill the gap between an embedded linux system and the 8 bit microprocessors.
We at http://kidsruby.com/ have gotten Ruby running on one of these. We showcased our work at this past http://gogaruco.com/ vid here: http://confreaks.net/videos/637-gogaruco2011-kidsruby-think-of-the-children These are extremely lightweight in terms of processing, but we got both debian and archlinux up and running after just a bit of work. We have further optimizations planned and are very excited to be working with the RaspberryPi team.
What word rhymes with buried alive?
Amazing amount of power, would have blown most pre 1993's desktop computers out of water.