The Arduino Due Is Finally Here

After a years-long wait, an ARM powered Arduino is finally due. The Arduino Due will finally be released this coming Monday.

On board the Arduino Due is an Atmel-sourced ARM Cortex M3 microcontroller running at 84 MHz. The Due has an impressive list of features including a USB 2.0 host, compatibility with the Android ADK (lest you still need an IOIO), 12 analog inputs with 12-bit resolution, 2 analog outputs running at 12 bits, a CAN interface, and more input pins than you can shake a stick at.

For a full list of features, you can grab this PDF we picked up when we saw the Due at Maker Faire NYC

This hardware update to the Arduino platform makes a lot of very cool builds very possible for even the beginner hardware hacker. Of course the Due will be used for controlling drones and UAVs, laser cutters and 3D printers, and playing WAV files from the analog outputs. The much improved hardware opens up a lot of other possible builds including making your own guitar pedals – DSP is a wonderful thing – and reading the telemetry from your car in real-time via the CAN bus.

Although it’s not available right now, you will be able to buy an Arduino Due for $49 USD this coming Monday at your favorite electronics retailers. 

81 thoughts on “The Arduino Due Is Finally Here

      1. *Record scratching sound*

        The Due will continue to work with all Arduino shields — add-on boards and circuitry like motion sensors and LED light arrays — that conform to the official Arduino Revision 3 layout. However, the Due operates at 3.3V whereas AVR-based Arduinos operate at 5V, meaning some third-party shields that don’t follow the R3 specs to the letter may not be compatible, depending on their voltages. It also means those looking to use the Due in existing applications should adjust their voltage or risk damaging their board.

        Some third party? You mean, pretty much all of them?

      2. Yes. They mean pretty much all of them. But not to worry, official Arduino Revision 3 layout has been on display for months! You could of filed a complaint if you wanted to, they were “displayed” in a locked file cabinet in the dark basement of the local planning office!

    1. Yes – logic 1 (positive logic) is == VCC.

      You can use a variety of voltage level sifters, such as a 74HC06 (which has the disadvantage of also inverting the signal, but has open-collector outputs).

      Besides, the ARM (in most cases) can sink/source only small amounts of current per pin, so buffering the signals is a good idea.

      1. The Ruggeduino

        The Ruggeduino is a ruggedized Arduino-compatible microcontroller board. Features include overcurrent and overvoltage protection on all I/O pins and 5V/3.3V outputs, ESD protection on all I/O pins and USB port, total microcontroller overcurrent protection, and operation at up to 24V. Fully assembled and ready to work right out of the box. Works with the Arduino GUI and is compatible with Arduino shields and libraries.

        There needs to be a DUE version of this, stat!

      2. @Hack Man:

        The STMicros STF1xx/2xx ARM series have 5V tolerant input pins. I suspect most ARM chips have the same (this is a guess), and not to argue with what you said (Thanks for the info!).

        The problem comes when trying to drive a 5V output with a 3.3 out pin. That is when you need a buffer. There are many in the 74xx TTL and 4000 CMOS line – and you get the ability to drive more current than the pin can drive itself. Depending on switching speed, you could even use a unity-gain opamp, but most have a very slow switching time (and the fast ones can be spendy).

        You made this very point about some shields that expect 5V inputs not working with this board.

      3. You really don’t want to use a unity gain opamp to level shift GPIO.

        The problem with a unity gain opamp is that it is “unity gain”, meaning 3.3v in, 3.3v out.

        There are other problems with this configuration, namely problems with rail to rail output stages and saturation recovery time.

      4. @Ken:

        The comment about using a unity-gain on a GPIO was a bit :^) – and after I mentioned it, I realized it could confuse the unwary and those new to the game.

        Mea Culpa

        For individual pins, converting from 3.3 to 5V with a good load: there are good FET circuits out there. For several pins, use a 74xx or (better) 4000 series buffer – just be sure to look on the datasheet to see what a “1” input is relative to VCC. (see the 74F06 as an example)

        Perhaps @Ken could provide a link to a good FET circuit – I only play EE on TV; I suspect Ken are one…

      5. I would recommend against using 4000 series CMOS parts. They are being increasingly harder to find and are very slow.

        Use 74HCT parts. They are cheap, available, and can maintain good worse case VOH and VOL values under their rated load.

        If you can get them for cheap, 74AHCT parts are even better.

      6. @Ken: Thank you for the clarification – my basic point was the ARM is CMOS logic, so the interface logic should also be CMOS, not TTL.

        The “CMOS cookbook” by Don Lancaster is a good reference. A bit spendy ($40 on amazon). Also, lots of good stuff via Google…

      7. Shifting the voltage is fine and all but shield slot in the connector, and then you’d need a voltage shield between the shield, making it more bulky.

        Still, since it is indeed known that things are moving to 3.3 for quite a while, in fact in many areas in the world of electronics this happened many years ago, I think it’s pretty much unavoidable and with this at least you also get the boost of higher speed and more capabilities with it at the same time.

    2. I’d expect that somebody would create an “adapter” shield which would take the 3.3v signals and buffer them to 5v signals (& vice-versa) to standard arduino headers, so you just use the adapter as a shim between the “due” and your 5v logic shield(s).

    1. That’s absolutely right however one must consider all that mystics, dumb-developer-readiness and popularity (or public awareness) to understand the price. Also don’t forget those shields! So I guess it will be sold successfully to hobbyist. Certainly in greater numbers than those extremely cheap TI’s and ST’s Cortex-M4 kits with FPUs and other nice things.

      I hope I’m not bashing Arduino too much. As a newbie many years ago I started with PIC and a LED on a breadboard and a few (10?) external components that were needed for programmer connected to a serial port. After blinking the LED my second project was small matrix display right away, that I accomplished to make without help of any tutorial. Today kids just start with commands like digitalWrite(A0, HIGH) not knowing what they are actually doing. That may be okay but we have Raspi for that. It is also cheaper if I’m not mistaken.

      1. Agree, but the Arduino is still real C with a lot of the horrible stuff hidden and is therefore a good a start. Having an easy environment to get up to speed is even more important when you move to ARM platforms as they are significantly harder to program than the AVR/PIC.

        If ARM SOC manufacturers used a *common* BIOS layer in ROM to isolate the constantly evolving hardware from the programmer (Like the PC did back in 1981) everyone, noob and expert alike, would be a lot better off

      2. The raspberry pi is a single board computer. The Arduino is a microcontroller. There are relatively large differences between the two, and each has their purpose. They are not competing products. The raspi is not an alternative to the arduino.

      1. Even at that price TI is pretty much giving them away (I have two of them :P), arduinos are more expensive because no one is subsidizing them. If you add to the raw components the costs of manufacturing outside of China and quality control, the 49USD price tag sounds reasonable to me.
        I understand it’s still more expensive than some alternatives but, for complete begginners, the Arduino’s “newbie-friendliness” and lots of online support are probably worth the extra $.

      2. stop complaining with europe manufacturing prices,

        when it is a single board with no box or mechanical assembly, when it is fully automated and you have at least 1K boards to produce, such a board will cost you no more than 2€ to assemble here in Belgium

    1. It’s better because it’s an Arduino. Just the privilege of being an artist and making sketches in Wiring, instead of a mere programmer writing programs in C++, is worth at least $299.95 retail value all by itself. Do not question Arduino Team, order now and pay your Dues.

      Mwaaaaahahahaha!

      1. I think you are partially incorect, the way i thought it worked was that you cant sell the launchpad. But that doesn’t stop you from developing a commercial product with launchpad. You need to get boards made anyhow, it would look pretty bad if you product get cracked open and there was a launchpad inside it.

      2. Correct. You can’t incorporate a launch pad into a commercial product, but you can develop on it and even program your mcus with it.

        I really want to like arduino for their open-sorceness, but Ti essentially gives away dev boards, offers free samples of most of their hardware and openly publishes full board schematics and masks. That’s pretty cool for an evil corporation

      3. @matt:

        You can use an intro board in a commercial product – no law against it. Just not economically valid after some number of units.

        Depends also on how “professional” you want to look when someone pops the lid.

    1. It is another micro controller like all the M series Arm’s. So doesn’t run linux (or Androids jvm) as such… though you may be able to get a kernel on there.

      The reference to Android is relating to the board being able to be a USB host. You can then can plug an android device in to the board and do stuff with it. Otherwise you are reliant on bluetooth or some web/cloud bridge to talk between the micro controller and a device.

      The Arduino mega ADK had the same (or similar) functionality.

      1. Ahh so its not a real ARM processor. I was thinking it had far more capability than it had.

        Still bummed there is not a mesh of this and the Pi. I want a Pi that has all that DIO and ADC’s on it. a perfect real robotics platform.

      2. @fartface

        >Still bummed there is not a mesh of
        >this and the Pi.

        The beagle bone has a lot of different stuff on it’s SoC and it has a standard SRAM style bus too if you want to connect a bunch of memory mapped stuff. The only real downside is the over muxing of the pins.

    2. Why the hell does everyone want to install Linux on everything? I’ve been a programmer for over 25 years. I’ve built PCs. I thought about installing Linux at one time to try it out but immediately came to a screeching halt when I found out there were 50 different distributions of it and no way to know how they all differed from one another unless I wanted to spend weeks studying them all.

      And more recently I was in a situation where I needed to access data on my PC when it crashed and all I had available was a 100mb thumbdrive, and no way to burn a CD, and I thought hey, Linux is used on all these old crappy devices, I’ll bet there’s a Linux distribution out there that I can install on this thumb drive and access the data on my drive. Yeah. Hours later, after much googling I had zero luck. I found only a couple disributions small enough, still had no frigging clue what made them different from one another, and I could get neither one to install properly.

      Oh and my damn mac that I got used had Linux installed on it, and every time it boots and I select windows I still get a damn linux menu where I have to select windows again and I still haven’t figured out how to get rid of the thing. I haven’t spent a ton of time looking for a solution to that to be honest but I did look for an hour or two and no solution immediately presented itself.

      So there you have it. A programmer, who grew up with DOS, can’t even figure out how to install Linux. Or uninstall it without screwing up the rest of his system for that matter. Open source is great when it results in good software like Firefox, but Linux is the devil.

      Why would you ever want to use precious CPU resources on such a low powered device by running a full fledged OS anyway.

      1. Linux is just another tool, a very powerful tool. As for full fledged install, you need to spend a little more time with Google. You can do anything from a minimal install with almost nothing on it or a full install of every thing.

      2. I’m going to give you the benefit of the doubt and assume you’re not a troll.
        a) Linux is about freedom, and freedom implies choice. When in doubt, go with whatever’s the most popular. That way if you have issues, there’ll be a larger community to help you. I suggest Kubuntu or Linux Mint. Wikipedia gives pretty good summaries of the distros as well.
        b) Small distros (PuppyLinux came to mind first) are extremely niche, and getting nicher. Today you can buy a 4 GB USB for $5 – a full live cd image only takes up 700 MB and is usually far easier to use if you’re new to Linux.
        c) Sounds like you need to correct the settings in GRUB. If you’re using it as your bootloader, the settings are probably in /boot/grub. If not, just use the Windows installation disc to write in the default bootloader – there’s a tool for it you can run from the Recovery Console.
        d) I’m a programmer, I grew up with DOS too. I had almost no issues picking up Linux, and was pretty competent with it after two years of use. The plural of anecdote is not data. Don’t expect everything to be obvious; you have to actually put some effort in to understand how things work. The sheer size of an operating system means there’s a lot to find out, and because Linux is more transparent than other OSs there are more components to recognize, though you don’t normally need to unless something goes wrong. Powerful tools always have a steep learning curve – they take some time to master.
        e) The main reason people install Linux on unusual devices is because they can. Hell, that’s why most hacks are done. That said, there are some valid reasons for wanting to run Linux, like driver support. It is *much* easier to use existing drivers than it is to write your own.

      3. I’m not a programmer(working on it), 18 years old, installed Linux 5 years ago, best thing that ever happened to me… just give Linux Mint, a unbiased try and you will Love it. -just my 2 cents

      4. Rant as it may be, I understand your frustration. I have a single Linux project I’d like to try, and I haven’t been able to find an answer to what seems to be a simple question:

        Where can I buy a *guaranteed* compatible, currently manufactured, and inexpensive USB composite video capture device?

      5. @R

        To be honest, if you want freedom, you don’t go with linux, us use something that is based on a BSD, rather than a GNU licence. Then you have freedom to do with it what you want….

        I think the above commenter has more issues with boot loaders than linux itself… but possible can’t tell the two apart.

      6. LinuxHater,

        Looks like you’ve already had many responses here. I’m not trying to add fuel to the fire, but I did read what you wrote and have a couple comments.

        For the situation where your computer broke down and you needed to salvage the data off of it, there are quite a few distributions that have guides on how to create a Live USB image from Windows or another OS. Ubuntu has one.

        Upon booting the Live USB, your drives should have been automatically detected. If they weren’t already mounted and accessible via the file manager, you could have found the Disk Utility program by either pressing the ‘Super’ key on your keyboard and then typing “Disk Utility” if it was a version of Ubuntu with the Unity Desktop Environment. It it was an earlier distribution, its likely that the main Desktop Environment was GNOME 2 and Disk Utility could have been found though the menus at the top of the screen. From the Disk Utility, mounting your hard drives is very simple – only takes a couple of clicks. From here, you would have been able to explore all your drives and additional ones for copying your data to.

        Anyways, I hope you were able to get that data off. I’ve heard of rescue CDs that run DOS, so maybe that is what you used to get the data off.

        As for Linux on your Mac, that is always a recipe for disaster. Its a sorry situation that Apple’s hardware doesn’t have a lot of FOSS or even freely available drivers. The result quite a few things under Linux don’t work. Apple’s UEFI compounds the problem. For all the guides I’ve seen for Linux on Apple Hardware, each one focuses on the efforts of an individual very driven to install Linux on their specific model of Apple computer. Universal support for Apple Hardware is a pipe dream. Sorry to hear that your Windows installation was inaccessible.

        I do hope you get at least one good Linux experience under your belt. If you’re a former DOSer and are comfortable in a CLI environment, then maybe you’d be interested in Arch Linux. The installation of Arch Linux doesn’t use install wizards like many other distros. Instead, you run a Live Arch Linux environment and actually use shell scripts to manually write the OS to the machine’s hard drive and set it up. There is quite a bit of documentation out there for doing interesting things, like at least installing a GUI, as well as support for problems.

  1. Has anyone spotted a UK retailer for it (as of Monday obviously), or is I going to still be awaiting?

    Please lets not carry on the microcontroller war, its a little tired, lets all go back to football hooliganism, like the good old days.

  2. from wired.com: “The long-awaited Arduino Due just hit the market, replacing the 8-bit, 16MHz brain of the popular Uno microcontroller prototyping platform with a 32-bit, 84MHz processor, while augmenting inputs and capabilities all around.”

    It is true?? Why? Sixteenth steps with A4988 doesn’t works?

  3. ups. wrong copy paste :(

    from wired.com: “The Arduino Due and its Atmel SAM3X8E means your DIY 3-D printer can produce finer resolution, along with other improvements.”

    It is true?? Why? Sixteenth micro steps with A4983/A4988 doesn’t works?

  4. 12 bit ADC/DAC? Looks like it won’t be finding a home in home theater projects, at least not for audio processing.

    That’s as bad/worse as those LC Macs and cheap PCs with 32 bit CPUs on 16 bit busses.

    1. Unless it’s capable of doing what cheap CD players do with a 1 bit DAC, process the data faster than realtime then buffer the output into a RAM holding area.

      ‘Course it would be much simpler if the thing has 16 bit ADC/DAC capability.

    2. Consider that DAC is an R/2R network, just like if you were to construct a DAC on your own from discrete resistors – only much smaller.

      And at that tiny size, the accuracy of the resistors is limited by the manufacturing process. No point in putting another four bits in, if they’re going to so inaccurate as to be useless.

      Using a better process, or laser-trimming the network, would allow for more usable bits. But that adds additional expense to an already expensive chip, which isn’t necessarily meant for hi-fi audio in the first place. So it’s no wonder 16-bit DACs on MCUs aren’t too common, that the number of DACs are limited (or absent), and that good-quality dedicated DACs are expensive.

      There are always workarounds. The one-bit DACs already mentioned. Interfacing with an external DAC via I2S. Even extending the internal DAC with an addition four bits of carefully trimmed R/2R network. I’ve seen a similar technique used to combine two 8-bit DAC outputs into a single 16-bit, I think Analog Devices had an app note on it.

    1. The 5v pin will let you draw 5v from USB (or a 5v voltage regulator if using external power) but the MCU runs off the 3v3 regulator. Other arduino models also have a 3v3 regulator, but the MCU runs off 5v.

    1. Knowing Atmel there is errata somewhere stating it only works with packets smaller than 32bytes :-)

      I wonder if it has hardware 4bit SDIO. If it does I will finally start using arduino (/cry).

    1. “Available on Monday… at your favorite electronics retailer” seems a bit premature. I’m on the east coast, US, and nobody here is selling them yet. One vendor even stated “they’re on order and we’ll sell them when they arrive”. This is not like a new iPhone release with people waiting in line. I’m guessing Monday is wishful thinking.

  5. Who needs atmel ARMs when we have nice&shiny stm32 for a lot less.

    People without Windows machines? People who want the bootloader source code to use in their own OH projects which they can prototype on the Due?

    1. So you’re saying the small minority of non-Windows users should dictate hardware choices? For non-existent reasons, since I’m pretty sure there are both Linux toolchains and open-source bootloaders already available for the STM32?

  6. Nicely done. . . Personally I’m no fan of Arduino but this is as good of a solution as any ARM development system out there and the Android ADK compatibility is a big plus.

    What is the word on debugging with this thing? That is one aspect of the Arduino IDE that has always turned me off.

    – Robot

  7. Think one may be able to get hand on of these by 22 OCT 2013. Too bad. I can’ remember who, but it was one of my regular retailers, taking preorders for 5 units available in ‘about’ 7 days (I have doubts). If anyone finds a likely source, please post; I am sure I am not the only one looking.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.