Wiring diagram
Revision 1.0 and 1.01
click on the image for a large version
Revision 0.6
click on the image for a large version
Revision 0.5
click on the image for a large version
Caution! On v0.5 boards the GND and V_FUSED legends on the underside of the board are the wrong way round! The ones in the wiring diagram above are correct. This is the same for the jumper block OUT7 - OUT9 that provides power to these connectors respectively (see below).
Caution! On v0.5 boards, do not connect anything to the OUT pin of the IO_5 connector, because on the prototype boards this pin is used to signal to the Raspberry Pi. The IO_5_OUT pin will be available on later version boards.
Wiring Notes
CAUTION! | The pinout of the 5-pin connectors is not the same as on the 5-pin Z-probe connector on the Duet Maestro! It has been changed to reduce the risk of shorting +5V to +3.3V. |
---|---|
CAUTION! | On v0.5 boards the GND and V_FUSED legends on the underside of the board are the wrong way round! The ones in the wiring diagram above are correct. This is the same for the jumper block OUT7 - OUT9 that provides power to these connectors respectively (see below). |
CAUTION! | On v0.5 prototype boards, do not connect anything to the OUT pin of the IO_5 connector, because on these boards this pin is used to signal to the Raspberry Pi. The IO_5_OUT pin is available on v0.6 and later boards. |
- The 4 wire motor and OUT1, OUT2 and OUT3 are JST VH series connectors. They require a minimum of 22AWG wire (20AWG or 0.5mm2 recommended. Most NEMA17 size stepper motor wire will will not be thick enough to use in the normal way; but you can double the stripped part of the wire back on itself to bulk it up, and put a small length of heatshrink sleeving over the insulation to bulk up the insulation. You will need a suitable crimping tool for the crimp pins, for example Engineer PA21 (use the 2.2mm jaw opening to crimp the bare wire and the 2.5mm on to crimp the insulation). Alternatively you can solder the wire to the crimp pin
- The default 5V power configuration is Internal-5V-EN jumpered, 5V->SBC jumpered (the Duet is powering the SBC) , SBC->5V not jumpered. If you want the SBC to provide 5V to the Duet then remove the jumper from Internal-5V-EN and place a jumper on SBC-5V (leaving the 5V->SBC jumper in place). NOTE this bypasses the 5V protection and a fault on the SBC may damage the Duet. See Duet 3 Mainboard 6HC Hardware Overview
- The two banks of Low Current outputs (OUT4-6, OUT7-9) can be separately selected to be powered by either VIN or internal 12V. Total 12V fan current draw must not exceed 800mA.
- The separate OUT0 Power in allows for a different voltage to be supplied for the OUT0 high current output (e.g for a large bed heater). If this is not required VIN power must be applied to both the POWER IN and the OUT0 POWER IN terminals for OUT 0 to be powered.
- The SBC_3.3V is purely to ensure logic levels are the same between the Duet and the SBC. Do not attempt to use this pin to apply, or draw, 3.3V.
Description of Connections
Duet 3 Mainboard 6HC provides the following connectors:
Header | PCB label | Function |
---|---|---|
1 x 6-way barrier strip: | POWER IN, GND, VIN | Two pins for main VIN and GND |
OUT 0 POWER IN, GND, V_OUT0 | Two pins for the VIN and GND supply for the OUT_0 terminals | |
OUT 0, V_OUT0, OUT0- | Positive and negative OUT_0 terminals. OUT_0 is intended to drive a bed heater. The ground side of OUT_0 is switched by the mosfet and the positive side is protected by a 15A fuse. If using the OUT0 terminal to drive a SSR, take note that their polarity is opposite to the polarity of the VIN terminals. There is no flyback diode on this output, so if you connect a high-current inductive load, you must use an external flyback diode. | |
1 x 3-pin KK connector | EXT 5V | Open drain mosfet output for controlling an ATX-style power supply or a SSR. The +5V pin can also be used to provide external 5V power. A small amount of 5V power can be drawn from this pin (through an internal 220 ohm resistor), so that the control terminals of an SSR can be connected directly between the +5V and PS_ON pins. |
Note: on the v0.5 board this connector is rotated 180 degrees compared to the intended orientation on later version boards. | ||
6 x 4-pin JST VH connector | DRIVER_0, DRIVER_1, DRIVER_2, DRIVER_3, DRIVER_4, DRIVER_5 | Stepper motor connections. (see note on JST VH connectors) |
3 x 2-pin JST VH connector | OUT 1, OUT 2, OUT 3 | These are intended for extruder heaters or fans. Maximum recommended current 6A each. These outputs are protected by flyback diodes. |
3 x 4-pin KK connectors with offset spigot | OUT 4, OUT 5, OUT 6 | These medium current outputs are intended for PWM-controllable fans. The connector fits a standard PC-type 4-pin PWM fan. Alternatively, a 2-pin fan may be connected between the V_OUT_LC_1 pin (+ve) and the OUT_n_NEG pin (-ve). |
Note: These outputs are protected by a flyback diode connected to V_OUT_LC_1. Do not mix loads connected to V_OUT_LC_1 with the jumper set to 12V and loads connected to V_FUSED on the same bank. | ||
1 x 3-pin KK header | OUT4-OUT6_SelectV | The positive supply to the OUT 4, OUT 5 and OUT 6 connectors is the centre pin of the 3-pin jumper block labeled OUT4-OUT6_SelectV. A jumper in the top position will power them from the fused VIN supply. Alternatively you can connect a 3-terminal buck regulator to the 3-pin jumper block to supply the required voltage to the centre pin. |
3 x 2-pin KK connectors | OUT 7, OUT 8, OUT 9 | These are intended for fans. Maximum recommended current 2.5A each when supplied by VIN. |
Note: These outputs are protected by a flyback diode connected to V_OUT_LC_2. Do not mix loads connected to V_OUT_LC_2 with the jumper set to 12V and loads connected to V_FUSED on the same bank. | ||
1 x 3-pin KK header | OUT7-OUT9_SelectV | The positive supply to the OUT 7, OUT 8 and OUT 9 connectors is the centre pin of the 3-pin jumper block labeled OUT7-OUT9_SelectV. A jumper in the top position will power them from the fused VIN supply. Alternatively you can connect a 3-terminal buck regulator to the 3-pin jumper block to supply the required voltage to the centre pin. |
1 x 3-pin KK connector | SERVO, OUT 10 | v0.5 boards only. This provides a 5V servo-compatible control signal and 5V power. |
1 x 2-pin KK connector | VFUSED | This is for powering an always-on fan or similar. |
Caution! On v0.5 boards the GND and V_FUSED legends on the underside of the board are the wrong way round! The ones on the top are correct. | ||
Note: on the v0.5 board this connector is rotated 180 degrees compared to the intended orientation on later version boards. | ||
1 x 2-pin KK connector | RESET_EXT | For an external normally-open reset switch. |
1 x 2-pin KK connector | 12V | Provides 12V power for a PWM-to-0 to 10V converter. |
1 x 3-pin KK connector | LASER/VFD | v1.0 and later boards only. This provides 5V power and a 5V level signal for a TTL-compatible input to a laser controller, a PWM-to-0 to 10V converter (for variable-frequency drives), or a servo. The control signal for this output is shared with OUT9, so don't use OUT9 if you use this connector. |
4 x 2-pin KK connectors | TEMP_0, TEMP_1, TEMP_2, TEMP_3 | Connections for thermistor or PT1000 sensors. |
1 x RJ45 network connector | Ethernet | 100BaseT Port. non MDIX connect to an Ethernet switch, hub or MDIX enabled laptop port. If connecting to a non MDIX enabled port use a crossover cable. Orange LED on Ethernet port indicates Ethernet enabled, green LED indicates network activity |
9 x 5-pin KK connectors | IO_0, IO_1, IO_2, IO_3, IO_4, IO_5, IO_6, IO_7, IO_8 | These are for endstop switches, Z probes, filament monitors, servos, and other low-voltage I/O functions. Each connector provides both 3.3V and 5V power. The inputs will tolerate up to 30V. The outputs are 3.3V signals levels with 470R series resistors. |
1 x 4-pin KK connector | DS_LED | This is to connect and power DotStar LED strips. |
Caution! The total current draw of the Raspberry Pi (including any attached USB devices), DotStar LEDs and other devices powered from the 5V and 3.3V rails on the Duet must not exceed 3.0A. | ||
1 x 6-pin JST ZH (ZHR-6) connector | SWD | This is for firmware debugging and also provides a backup mechanism to program expansion boards. |
1 x 2x13 header | SBC | This is for connecting a single board computer (SBC) such as a Raspberry Pi. |
1 x 2x5 header | TEMPDB | This is for connecting PT100 and thermocouple interface boards. |
1 x RJ11 CAN connector | CAN_OUT | RJ11 CAN connector and permanent termination resistor, so it must be at one end of the CAN bus |
LED indications
Label | Colour | Function |
---|---|---|
V_FUSED | Blue | Indicates presence of fused VIN power |
12V+ | Amber | Indicates presence of 12V power from on-board regulator |
5V+ | Red | Indicates presence of 5V power from on-board regulator |
3.3V+ | Green | Indicates presence of 3.3V power from on-board regulator |
USB | Red | Indicates presence of 5V power from USB |
OUT_0 | Red | Next to the OUT 0 connector, indicates when on |
OUT_1 | Red | Next to the OUT 1 connector, indicates when on |
OUT_2 | Red | Next to the OUT 2 connector, indicates when on |
OUT_3 | Red | Next to the OUT 3 connector, indicates when on |
DIAG | Red | Diagnostic LED. See description below |
Diagnostic LED This blinks continuously when the Duet 3 Mainboard 6HC is running normally, about half a second on and half a second off. Any expansion board also has a diagnostic LED. When the expansion board starts up this LED will blank rapidly. If the expansion board is connected to a Mainboard running compatible firmware, the LED on the expansion board will switch to blinking synchronously with the Mainboard LED once time sync has been established across the CAN bus.
Pin names
For more information on pin names, see RepRapFirmware 3 overview
RepRapFirmware 3 uses pin names for user-accessible pins, rather than pin numbers, to communicate with individual pins on the PCB. In RRF 3 no user-accessible pins are defined at startup by default. Pins can be defined for use by a number of gcode commands, eg M574, M558, M950.
The Duet 3 series uses the pin name format "expansion-board-address.pin-name" to identify pins on expansion board, where *expansion-board-address* is the numeric CAN address of the board. A pin name that does not start with a sequence of decimal digits followed by a period, or that starts with "0." refers to a pin on the Duet 3 Mainboard 6HC.
Pin location | RRF3 Pin name | Notes |
---|---|---|
Outputs | ||
OUT 0 | out0, bedheat | High current output, bed heater |
OUT 1 | out1 | Medium current outputs, hot ends |
OUT 2 | out2 | |
OUT 3 | out3 | |
Outputs (4-pin) | ||
OUT 4 | out4 | Fans, pumps. 2.5A limit per pin on VIN, 800mA limit total on internal 12V |
out4.tach | ||
OUT 5 | out5 | |
out5.tach | ||
OUT 6 | out6 | |
out6.tach | ||
Outputs (2-pin) | ||
OUT 7 | out7 | |
OUT 8 | out8 | |
OUT 9 | out9, laser, vfd | Pin shared with VFD/Laser/Servo drive header |
OUT 10 / SERVO | servo, out10 | v0.5 boards only. |
Temperature inputs | ||
TEMP 0 | temp0 | |
TEMP 1 | temp1 | |
TEMP 2 | temp2 | |
TEMP 3 | temp3 | |
Input/Outputs | ||
IO_0 | io0.in | Endstops, Z probes, filament monitors etc |
io0.out | ||
IO_1 | io1.in | |
io1.out | ||
IO_2 | io2.in | |
io2.out | ||
IO_3 | io3.in | |
io3.out | ||
IO_4 | io4.in | |
io4.out | ||
IO_5 | io5.in | |
io5.out | ||
IO_6 | io6.in | |
io6.out | ||
IO_7 | io7.in | |
io7.out | ||
IO_8 | io8.in | |
io8.out | ||
SPI CS | ||
TEMPDB | spi.cs0 | Temperature daughterboard connector, for Thermocouple and PT100 boards, Accelerometer etc |
spi.cs1 | ||
spi.cs2 | ||
spi.cs3 | ||
Miscellaneous | ||
EXT 5V | pson | For controlling an external PSU or SSR |
Revision History
Revision v1.01a
- DNP the jumpers for 5V power between the Duet and the SBC. A more modern SBC (e.g. RPi 4) needs too much 5V power, especially with a screen, to make it sensible to supply from the Duet. Similarily the spare 5V power budget on the SBC may not be sufficient for the Duet. In addition some SBCs require >5V on the 5V rail to not give a under voltage warning.
- Minior component changes that do not impact functionality.
Revision v1.01
- Improved ADC calibration
- Provide additional protection on the 5V_INT rail and 5V supply protection.
- Added buffers between the SBC and the Duet. 3.3V on the SBC is sensed on pin 17 of the GPIO header.
- Changed the labelling of the motor outputs from DRIVER_N_{A2 A1 B2 B1} to DRIVER_N_{A+ A- B+ B-}
- Minor changes to improve EMI
Revision v1.0
- Added a 3 pin Molex KK header for Laser/VFD with a 5V buffered signal (out9) shared with the out9 output.
- Removed termination resistor from second CAN bus so the board does not have to be at the end of the second CAN Bus.
- minor changes to improve EMC performance
- minor changes to molex KK footprint outlines
Revision v0.6
- Removed dedicated hobby servo connector as multiple IO ports can drive a hobby servo.
- Added a second CAN Bus tranceiver and connected it to PINs 2,5 of the RJ11 port
- Swap polarity of CANL and CANH signals to match expansion board. (Pin 3 for CANH pin 4 for CANL)
- Removed the second JST VH terminal from Driver 2 because the jumper method will not work as there are not jumper available for that pitch of connector.
- Added jumpers to allow 5V from or to the SBC.
- Added pull down resistors on STEP lines to prevent ghost stepping on startup.
- Connected Yellow LED on Ethernet connector
Revision v0.5
Prototype board, no longer supported
7 Comments
I have never 3D printed anything and have built my first printer from scratch. My question pertains to the OUT_0 terminals and how they connect to a heated bed.
I had a hard time understanding some of the information:
''6-way barrier strip: two pins for main VIN and GND;''
I understand that two of the terminals accept the main VIN and GND for the system.
two pins for the VIN and GND supply for the OUT_0 terminals;
Do you mean that the main VIN and GND supply power to the adjacent OUT_0 _INPUT terminals without having to jump a set of pins or anything?
I’m only curious because I noticed it was able to take a higher voltage as input than the main VIN/GND terminals, which made me think there might be an option to switch between the two using a jumper.
OUT_0 is intended to drive a bed heater.
I know I’m in the right area, at least.
Christopher Hoblet - Reply
If you are using OUT_0 then you need to supply power to OUT_0 _INPUT. This can either be the same VIN as supplied to the main board or a separate power supply. It is designed this way to allow for a different voltage to be used on OUT_0 (for example for a high powered heated bed).
If you have more questions please use forum.duet3d.com for support.
Tony -
This came with smaller crimp pins as well and they are not labeled. Know the size?
drack - Reply
Since this is popping up more often lately and I don’t want to fry my drivers: How to connect the steppers? Stepper motors (at least the ones we mostly use) have two coils and the two leads for each coil are continuous. Does one coil have to be connected to A1 and A2 OR A1 and B1 on Duet Boards? It seems like there is no uniform guideline to this and the color coding does not help either since the wires you get can either be a twisted pair or no twisted pair from the motor side to the driver side. Also the designation and color coding isn’t even the same for all the Duet Boards: the Duet 2 for instance has the sequence 1B 1A 2A 2B and the Duet 3 has A2 A1 B1 B2 but both have the same color sequence (BLK/GRN/BLU/RED) in their respective wiring diagrams. Could someone please explain the designation for the coils once and for all? Thanks a bunch!
Marius Schild - Reply
On all Duet 2 and Duet 3 boards the coils are in pairs. (first pair on pin 1 and 2, second pair on pin 3 and 4). It is not a problem if the order is reversed, as long as the pairs are kept together - it will just make the motor run the opposite direction which can be changed with M569. The labelling difference comes from how the driver chip datasheets originally labelled pins (Letters or numbers to designate coils). We have decided to standardise on A+,A-,B+,B- (or B-.B+,A-,A+) on the labelling of our new boards, no matter what the stepper driver manufacturer calls them, however this has not made it into the wiring diagrams and silkscreen of boards already in production yet.
Colour coding (Black,Green,Blue,Red or the reverse) appears to be fairly common now with 3d printer stepper motors but you are right, its not a given and its important to check the motors
Tony -