From RepRap
Revision as of 11:15, 27 April 2015 by Dc42 (talk | contribs) (Added links to other resources)
Jump to: navigation, search
Crystal Clear action run.png

Release status: working

Think3DPrint3D DUET Arduino DUE Compatible 3DPrinter Controller.jpg
Duet - Arduino Due Compatible 3D Printer Electronics
CAD Models
External Link

The Duet was developed by Andy and Tony from Think3dPrint3d in conjunction with RepRapPro and with much advice from Chris Palmer (Nophead)

The Duet is a 3D Printer controller board that is compatible with the Arduino Due. This 3D Printer controller combines the Arduino Due microcontroller with 4 stepper motor controllers, Ethernet, Hi-Speed SD card slot and more.


The Duet runs the 32 bit, ARM core SAM3X8E microprocessor, as found on the Arduino Due. This is a step change from preceding controllers using 8 bit microprocessors and leaves loads of overhead to do cool things (like running a webserver or running delta bots much faster). The Duet comes with Ethernet built in allowing it to run as a network printer controller, along with USB and an SD card (fully SD 2.0 compliant). In addition it takes the Duex4 expansion board for a further 4 stepper channels - for a total of 8 axis controls (3 axis + 5 extruders for example). A more in-depth description can be found in this blog post. The PanelDue is a compatible colour graphics touch screen control panel.

The wiring for the Duet and Duex4 expansion board is as shown:

Duet Duex4 wiring.svg

Minor changes have been made to the Duex4 resulting in version 0.2a, as detailed in this blog post: link Duex4 v02a minor updates

Open hardware

The Duet hardware design is licensed under the CERN OHW License 1.2: the design is free to be distributed and modified within the terms of this license. All the design files are available on Github. The Duet was completely designed using the Open Source software package KiCAD so hacking and building on this design is accessible to all.


The Duet runs RepRap Firmware, a new C++ firmware by Adrian Bowyer. The software supports receiving GCode from over the USB serial port, from the SD card and from the ethernet interface. Additionally, the firmware can be uploaded using software packaged with the Arduino IDE or Eclipse (see below).

RepRapPro have released a video showing the web interface in use with the Ormerod printer. Forum user dc42 has published a series of blog posts showing how to use the Duet to control a Mini Kossel printer.

The software is adding new features daily, for example support for multiple extruder printing - see the T3P3 github, RepRapFirmware, multi extruder branch. The dc42 fork includes Delta and CoreXY printer support - see https://github.com/dc42/RepRapFirmware/tree/dev.

The Think3dPrint3d blog has a post on how to setup Eclipse to modify and compile the firmware with printer specific options, the ultimate aim to to have all printer specific options set by g-code.

Where to get it

Think3DPrint3D Duet & Duex4

Reprap Austria Duet & Duex4

RepRapPro Duet

Here is a picture of a 4 colour print from the Duet and Duex4 expansion board combo, and a picture of the set-up:

Think3DPrint3D DUET and Expansion board 5 Extruders.jpg Kraken scene.jpg


RepRapPro guide for commissioning Duet-based printers, including updating firmware: https://reprappro.com/documentation/commissioning-introduction/commissioning-duet/. You may also find their wiring diagrams for the Ormerod, Huxley and Mendel useful.

Gcodes: http://reprap.org/wiki/G-code (there is a table showing which firmwares support which gcodes, and this is kept up to date for the Duet/RepRapFirmware).

Preconfigured config.g files for various printers: https://github.com/reprappro/RepRapFirmware/tree/test/SD-image and https://github.com/dc42/RepRapFirmware/tree/dev/SD-image

Short guide to using dc42 firmware fork: https://github.com/dc42/RepRapFirmware/blob/dev/Notes%20on%20dc42%20fork%20of%20RepRapFirmware.pdf

Wiring and commissioning a Duet on a delta: https://miscsolutions.wordpress.com/2015/01/04/upgrading-the-mini-kossel-to-duet-electronics-part-1-hardware/

Official RepRapPro firmware binaries: https://github.com/reprappro/RepRapFirmware/tree/master/Release

dc42's fork firmware binaries: https://github.com/dc42/RepRapFirmware/tree/dev/Release

zombiepantslol's fork firmware binaries: https://github.com/zombiepantslol/RepRapFirmware/tree/dev/Release

zombiepantslol's DuetWebControl web interface (works with dc42 fork and zombiepantstlol fork of RepRapFirmware): https://github.com/zombiepantslol/DuetWebControl

General support: http://forums.reprap.org/list.php?13 or the Ormerod forum http://forums.reprap.org/list.php?340 (most of the thousands of Duet boards in the field are in Ormerods)

PanelDue to Duet wiring: https://miscsolutions.wordpress.com/paneldue/

Duet schematic: https://github.com/reprappro/Duet/blob/master/Duet/Duet_06_Schematic.pdf

Further reading