At Maker Faire NYC this weekend, Arduino's Massimo Banzi announced that the long-awaited ARM-based Arduino, called the DUE, would be out in November.
Engadget reports:
The Due is roughly the size of the Mega 2560, but swaps the 16MHz, 8-bit processor found in your standard issue Arduino for a 96MHz Cortex-M3 [Corection: it's 84MHz by default but can be overclocked to 96]. Predictably, the Due is a much more capable development platform, and could easily replace multiple AVR-based Arduinos in products like DIY Drones' UAVs. The Due isn't expected ship till at least November in large quantities, but preview boards are currently being handed out to select developers.
I was there and spent a lot of time with the Arduino team discussing the latest details, including debugger and USB interfaces. We've been working with them for a year on this, and some of the APM team helped with the Due software. Right now the APM team is focused on the PX4 board and bringing ArduCopter and ArduPlane to that ASAP, but that ARM-based and RTOS-based code will also be the foundation of a future Due-based APM board.
Given the delays in Due, we're going to wait until it's out and the community can spend some time with it before pushing out a new APM board; the transition to ARM is not trivial for Arduino, and we've already got a great ARM platform with PX4. But we are working closely with the Arduino team and are committed to Arduino as one of our platforms for the future. It's less about the hardware power and more about the ease-of-use of the programming toolchain and the inclusivity of the community, and Arduino has served us very well on that.
A full video of the Arduino/AVR presentation at Maker Faire is here:
Here are the technical specs, from this PDF:
Comments
I've updated the post with a PDF of technical specs. the Flash is 96k (64k + 32K) and it can support 2MB of dataflash.
Robert: at 45:00 in the above video, Massimo says it has 512k flash memory and 64k RAM.
Also, in David Mellis' presentation earlier in that speech, he points out that the new Arduino IDE is designed to support a wide range of hardware. Right now they're starting with the Atmel M3 chips, but it will support other manufactures and architectures (such as ST and ARM 7/9) easily.
I don't think that is an a big improvment the px4 and vbrain use micro controller with more resource , 1 Mbyte Flash 192 kbyte ram and an integrated FPU ... so why downgrade to arduino due ... that's an option ... but not so interesting ... i think that we need to investigate more on Linux based embedded systems for expansion of our project as raspberry .... I'm working on a new interesting linux based platform for expand our great drone ....
Hmmm... it looks like the Due will have the same number of I/O pins as Mega. So that's good. But I'm surprised that it only has 256k of flash memory. The same as Mega. We're already knocking on that door with Arducopter so there's not a lot of room for expansion on this?
Veikko, just a guess, but I would think they are setting it up that older sketches can be uploaded to the new board with little issue. There are exceptions, but that seems to be how the other boards were built. You only run into problem such as... if you make a program for a Mega, which has 4 UARTS, and you use UARTS 2, 3, or 4, and then you try to compile it for a 328, you'll get an error because the other UARTS don't exist. Ditto if you assign functions to pins on a Mega, that don't exist on a 328.
I have no idea how many UARTS the ARM will have, or if it will have more or less I/O pins than the Mega.
As an experienced software engineer, I personally think that Arducopter has long ago grown well beyond what should run on an Arduino. Software-wise, Arducopter should have been based on an RTOS. Hardware-wise, it should have been freed from all the limitations of the 8 bit AVR processor.
Or, more bluntly said, a project the size & complexity of Arducopter is not for novice programmers!
So, unless I'm mistaken and Arduino Due will include an RTOS, I believe that forcing compatiblity with Arduino will serve no good to this project.
Dror
Is there a roadmap for the various projects available? For example I was not aware that ArduCopter was in the process of being ported to the PX4. Seeing the Arduino platform expand to other processors is very exciting!
I'm looking forward to it. As a beginner programmer, I really appreciate the ease of use of the Arduino platform. Hardcore guys find it limited and all manner of other negative adjectives. But for me, I like the ease of writing a program (using an easy language) and then plugging it into my computer with a USB cable and programming it.
No FTDI cables or AVR programmers. No need for a Linux operating system. No fuss. It just works.
It does what it was set out to do, and that is bring the potential of micro-controllers to non-programmers.
I'm curious... the 16MHz Atmega processor timing precision is limited to 4uS. It's pretty good for most applications, but it limits the maximum RPM which you measure to about 150,000rpm assuming 1 pulse per revolution, for example. Any idea how much faster the new processor will be?
Basically what I'm getting at is the Arduino micros() function has a precision of 4uS. With the ARM, will we get a nano() function?