Arduino Due (released Oct 22, 2012) Compatibility

http://hackaday.com/2012/10/03/finally-an-arm-powered-arduino/

Far removed from the legions of 3D printers featured at this year’s Maker Faire in New York was a much smaller, but far more impressive announcement: The ARM-powered Arduino DUE is going to be released later this month.

Instead of the 8-bit AVR microcontrollers usually found in Arduinos, the DUE is powered by an ATSAM3X8E microcontroller, itself based on the ARM Cortex-M3 platform. There are a few very neat features in the DUE, namely a USB On The Go port to allow makers and tinkerers to connect keyboards, mice, smartphones (hey, someone should port IOIO firmware to this thing), and maybe even standard desktop inkjet or laser printers.

The board looks strikingly similar to the already common Arduino Mega. That’s no mistake; the DUE is compatible with existing shields, so connecting a RAMPS board for your 3D printer should be a snap.

Here’s a PDF (http://hackadaycom.files.wordpress.com/2012/10/due.pdf) the Arduino and Atmel guys were handing out at their booth. A few DUE boards have already made it into the hands of important people in the Arduino community, including 3D printer guru [Josef Prusa]. Sadly, the folks at Arduino didn’t think media personalities needed a DUE before its release, so you’ll have to wait until we get our hands on one later this month for a review.

@hackaday.com

charlie_dream: http://hackaday.com/2012/10/03/finally-an-arm-powered-arduino/

Far removed from the legions of 3D printers featured at this year’s Maker Faire in New York was a much smaller, but far more impressive announcement: The ARM-powered Arduino DUE is going to be released later this month.

Instead of the 8-bit AVR microcontrollers usually found in Arduinos, the DUE is powered by an ATSAM3X8E microcontroller, itself based on the ARM Cortex-M3 platform. There are a few very neat features in the DUE, namely a USB On The Go port to allow makers and tinkerers to connect keyboards, mice, smartphones (hey, someone should port IOIO firmware to this thing), and maybe even standard desktop inkjet or laser printers.

The board looks strikingly similar to the already common Arduino Mega. That’s no mistake; the DUE is compatible with existing shields, so connecting a RAMPS board for your 3D printer should be a snap.

Here’s a PDF (http://hackadaycom.files.wordpress.com/2012/10/due.pdf) the Arduino and Atmel guys were handing out at their booth. A few DUE boards have already made it into the hands of important people in the Arduino community, including 3D printer guru [Josef Prusa]. Sadly, the folks at Arduino didn’t think media personalities needed a DUE before its release, so you’ll have to wait until we get our hands on one later this month for a review.

@hackaday.com

That kind of statement by who every originated it will most likely lead to damaged Due boards very quickly I suspect. The Due will be mechanicaly compatible to the standard shield layout, but the Due beings a 3.3 volt board is not compatible with older 5 volt only shields and this is bound to cause problems with begineers buying wrong shields or trying to use their existing shield boards. The Arduino team has added a new shield pin sense Rev 3 boards that can be used by newer shield designs to possibly support both 5 and 3.3 volt controller boards, but there will always be a potential trap there in my opinion. But maybe I'm being to negative, maybe the Due's shield input pins will all be '5 volt tolerent', or perhaps the damage is just in theory rather then in reality? I don't know for sure, but it will be interesting to see how this all works out.

Lefty

maybe the Due's shield input pins will all be '5 volt tolerent'

I wouldn't bet on it, the SAM is in no way 5v tolerant (4v on a good day) so that would need extra circuitry, possible but not obvious from the photos and I can't see them adding 54 level converters or even 54 current-limiting resistors.

I think the Due will drive most shields (voltage wise, maybe not with current) and if not then no real harm done unless too much current is needed from IO pins, but any shield that returns 5v (probably just about all of them) has a good chance of shafting the SAM3. That will be a very expensive plug in and impossible for the average user to fix.

I will also be interested to see how this all works out.


Rob

Graynomad:

maybe the Due's shield input pins will all be '5 volt tolerent'

I wouldn't bet on it, the SAM is in no way 5v tolerant (4v on a good day) so that would need extra circuitry, possible but not obvious from the photos and I can't see them adding 54 level converters or even 54 current-limiting resistors.

As there are very limited amount of mega shields I would only do it for the 18 standard pins. Another option could be to market a "gobetween shield" that does this.

Graynomad: ...but any shield that returns 5v (probably just about all of them)...

One of my favorite shields for high power engines is : http://www.robotpower.com/products/MegaMoto_info.html. I'm not a hardware guy but as far as I can see this one should work fine on the due. It only feeds back on the analog pins for power consumption and that is limited to 3.3V.

If it is low power I use the adafruit motorshield https://www.adafruit.com/products/81 which -again as far as I can see" ok with 3.3 volts as there is no feedback from the shield.

I'm not sure of the gps shield I have. https://www.adafruit.com/products/98

So it sure is not all of them :D

Best regards Jantje

Graynomad:

the SAM is in no way 5v tolerant (4v on a good day) so that would need extra circuitry, possible but not obvious from the photos and I can't see them adding 54 level converters or even 54 current-limiting resistors.

@Graynomad: (1) Would the method of level converter or a resistor array allow compatibility with BOTH 5V shields AND 3.3V shields though?

(2) And if so, why didn't they add it on the Due board itself? (I see quite a bunch of free space on the board!)

It certainly looks like going straight to Due, will be getting beginners in way over thier heads, I wonder how many of the UNO Based tutorials would cause damage to the lower current, lower voltage Due ?

Duane B

rcarduino.blogspot.com

One other thing to watch out for, the Arms 'double' is 64-bit, while the AVR compiler treats 'double' as the same as 'float'. If you have structures with doubles in them, the structure size will grow, and obviously the ranges handled will be different. If you have an application that goes down and unpacks/packs fp numbers, you will need to take this into account.

This is the sort of thing that may bite people in the arse, and the reason you shouldn't really use int/char/etc for your variable types.

Up 'till now it hasn't mattered, but it may do with the Due. Of course it has more RAM so you may not notice of you're arrays double in size :)

@giantsfan3 (1) I guess series resistors would help with the 5v inputs to the ARM, it's not my preferred method though, I would consider that more of a cover your arse measure to limit the current in case of a stuff up.

(2) Dunno, price I suppose. Arduinos are not designed to have robust IO and that's fair enough. It may be though that the Due will be placed in harm's way a lot. Jantje seems happy that his shields will be OK so maybe it's not really a problem. But how many users can analyse that?

I wonder how many of the UNO Based tutorials would cause damage to the lower current, lower voltage Due ?

This is the sort of thing that may be a problem, a simple high-side switch to 5v and poof.


Rob

I just don't get the Due concept. I just feel I must be missing something obvious. Someone please explain it to me.

Surely, if I need more processor, then its because I'm doing something fundamentally unsuited to an operating system-less device like the Arduino. I.e., image processing, DSP, MP3 playing etc. If I need an OS I'd have Linux on a Raspberry Pi.

Arduino is a device for electronic hobbyists. 16 million things a second is faster than I've ever needed an Arduino to perform.

Si: I just don't get the Due concept. I just feel I must be missing something obvious. Someone please explain it to me.

Surely, if I need more processor, then its because I'm doing something fundamentally unsuited to an operating system-less device like the Arduino. I.e., image processing, DSP, MP3 playing etc. If I need an OS I'd have Linux on a Raspberry Pi.

Arduino is a device for electronic hobbyists. 16 million things a second is faster than I've ever needed an Arduino to perform.

I agree that 8 bit AVR chip based boards would still be the best entry point into the arduino world for most begineers, especialy for those new to the electronics side of the hobby. However the small SRAM space and limited clock speed on the 8 bit AVRs does rule out many valid hobbyist level projects that really can't be performed on the existing arduino hardware. A ARM based arduino board will open up new applications that simply can't be performed with a existing AVR based board without external harware required that a ARM based board may not require. It not a one or the other based choice, but rather matching the avalible hardware to the task.

My fear is that too many begineers will choose a Due over a Uno based on their possible future requirements rather then picking the best board for their entry into this hobby. The experts will already know how to select the best board for each specific project or application, but too many begineers will 'over buy' based on the wrong reasons.

Lefty

However the small SRAM space and limited clock speed on the 8 bit AVRs does rule out many valid hobbyist level projects that really can't be performed on the existing arduino hardware.

Maybe I am lacking imagination, but how about some examples?

My fear is that too many begineers will choose a Due over a Uno based on their possible future requirements rather then picking the best board for their entry into this hobby.

Definitely, a lot of people tend to buy the latest and best, even if it isn't the right one.

Maybe I am lacking imagination, but how about some examples?

Well you are lacking in imagination I guess. :smiley:
But don’t expect me to unlease my vast imagination for free, my ideas might be my ticket to vast fame and fortune. :wink:

That aside, I will probably not be an early buyer of a Due board. I did buy one of those Teeney 3.0 ARM based boards but mostly to support Paul’s project and I won’t be suprized if it sits in my ‘get to it box’ for some time even when it arrives later this month. :wink:

Lefty

Si: I just don't get the Due concept. I just feel I must be missing something obvious. Someone please explain it to me. Surely, if I need more processor, then its because I'm doing something fundamentally unsuited to an operating system-less device like the Arduino. I.e., image processing, DSP, MP3 playing etc. If I need an OS I'd have Linux on a Raspberry Pi.

@Si: But doesn't that mean that ALL ARM Cortex M3 and various other companies' 32-bit microcontrollers, have no applications?

Even based just on their popularity, I am sure there must be many advantages and applications to a 84 Mhz, 32-bit architecture that make it suitable somewhere in between the domain targeted by 8-bit AVRs and the domain targeted by, e.g., Raspberry Pi.

retrolefty: My fear is that too many begineers will choose a Due over a Uno based on their possible future requirements rather then picking the best board for their entry into this hobby. The experts will already know how to select the best board for each specific project or application, but too many begineers will 'over buy' based on the wrong reasons.

Lefty

I dunno, that assumes you expect people to have a different processor for each project. I suspect a lot of hobbyists are like me, and only have a few processors (or just one), and then builds things to get a specific action and then tears it down, and goes on to the next project. For example, on the UNO, I've bought several proto-shields so that I could keep the stuff wired up, but switch to the next project.

I see a lot of posts about people wanting to do video and audio on their embedded systems, so I don't think it is something you need to run an OS for. I certainly have projects I want to do that involve video that are hard to do with Arduinos, and I'm certainly thinking that the Arms I just bought (teeny 3.0, radioblock, raspberry pi) might fill the bill.

Also, it sounds rather like the 'old' timers that complain about newbies having it so easy, and that everybody should go through the steps they did. I started programming on IBM punch cards, but I don't expect kids starting out these days to go back to cards.

@Si: But doesn't that mean that ALL ARM Cortex M3 and various other companies' 32-bit microcontrollers, have no applications?

Not amongst Hobbyists I expect.

Still waiting for the flood of examples ;)

MichaelMeissner:

retrolefty: My fear is that too many begineers will choose a Due over a Uno based on their possible future requirements rather then picking the best board for their entry into this hobby. The experts will already know how to select the best board for each specific project or application, but too many begineers will 'over buy' based on the wrong reasons.

Lefty

I dunno, that assumes you expect people to have a different processor for each project. I suspect a lot of hobbyists are like me, and only have a few processors (or just one), and then builds things to get a specific action and then tears it down, and goes on to the next project. For example, on the UNO, I've bought several proto-shields so that I could keep the stuff wired up, but switch to the next project.

I see a lot of posts about people wanting to do video and audio on their embedded systems, so I don't think it is something you need to run an OS for. I certainly have projects I want to do that involve video that are hard to do with Arduinos, and I'm certainly thinking that the Arms I just bought (teeny 3.0, radioblock, raspberry pi) might fill the bill.

Also, it sounds rather like the 'old' timers that complain about newbies having it so easy, and that everybody should go through the steps they did. I started programming on IBM punch cards, but I don't expect kids starting out these days to go back to cards.

Ok, but lets focus a bit. What would be your recommendation to a newbie to the hobby (with little or no electronics or software experiance) as to which would be their best choice to enter the arduino world once the Due is in fact avalible. I vote Uno, you vote ?

Lefty

Hi,

I guess there will be a lot of frustrated beginners wrecking Dues.

As for applications for the Due, I have in mind a psuedo modular synth - lots of oscillators, wavetables, analog inputs, some sort of low tech interface and a simulated patch panel.

16 bit audio should be very fast in a 32 bit mcu leaving enough cpu to implement the connections in the simulated patch panel for real in software.

Duane B

retrolefty: Ok, but lets focus a bit. What would be your recommendation to a newbie to the hobby (with little or no electronics or software experiance) as to which would be their best choice to enter the arduino world once the Due is in fact avalible. I vote Uno, you vote ? Lefty

Right now (October 2012), the Uno. However, I imagine by the January time frame, it would be probably be the Due. There is a saying in parts of the US, that pioneers are the ones with arrows in their back, and anybody that buys a Due on day one is a pioneer. But after the initial problems are sorted out, I see the current 8-bit chips going being more of a niche market. Will it happen overnight? Certainly not, but it will happen.

MichaelMeissner:

retrolefty: Ok, but lets focus a bit. What would be your recommendation to a newbie to the hobby (with little or no electronics or software experiance) as to which would be their best choice to enter the arduino world once the Due is in fact avalible. I vote Uno, you vote ? Lefty

Right now (October 2012), the Uno. However, I imagine by the January time frame, it would be probably be the Due. There is a saying in parts of the US, that pioneers are the ones with arrows in their back, and anybody that buys a Due on day one is a pioneer. But after the initial problems are sorted out, I see the current 8-bit chips going being more of a niche market. Will it happen overnight? Certainly not, but it will happen.

I fully agree with this. Certainly for newbies the stabilized due will be the platform of choice. It just makes everything easier. For instance it takes away the problem of memory management for small projects. You can do some really bad coding and still have enough cpu left not to notice. It just makes the start easier and the old farts like me will do the hard work on the small slow 8 bit chips. At least that means I will have a job until I die ;-) Best regards Jantje

Here’s a f’example.

I’ve been working on a framework that is basically a HAL like the Arduino (and does implement the Arduino functions) but has a lot more, such as string parsing, FIFOs etc.

Last I looked it was about 20k in size, a bit large for a Uno but no problems for a chip with a lot of flash. Now of course you don’t have to go to an ARM to get a lot of flash, but with the smaller ARMs available for < $2 I just reckon it’s easier to use them. Hopefully I can drop this code onto the Due when it arrives but it’s not worth porting it to a Uno.


Rob