Overview
The Duet 3 Expansion board 3HC v1.0 3 channel version supports the following:
- 3 high-current stepper drivers
- 3 high current PWM-capable outputs (provisionally 5A each maximum)
- 3 medium current PWM-capable outputs (provisionally 3A each maximum), 2-pin
- 3 outputs for 4-wire fans (separate PWM control wire and tacho)
- 9 low voltage input/output connectors. Some of these have additional facilities, for example UART capability.
Connectivity to the Duet 3 Mainboard is over the CAN-FD Bus.
Features
- Powerful 32 Bit Processor: Atmel ATSAME51N: ARM Cortex-M4F microcontroller running at 120MHz, with 512Kb flash memory, 384Kb RAM and many peripherals.
- Three high-current advanced TMC5160 stepper drivers: SPI controlled will all the latest Trinamic features. Maximum motor current 6.3A peak per phase (4.45A RMS).
- One CAN-FD BUS for connection to the main board
- Triple extruders: 3 medium current heater channels for up to 3 extruders.
- 6 PWM controllable fan channels. 3 of these support 4 wire fans including tacho reading. These can be run from either the input voltage, from 12V, or from external power for added flexibility. Also one always-on fan connector supplied with VIN voltage.
- Fuse fitted for input power
- Automatic ADC gain calibration for thermistors allows for accurate and repeatable temperature setting. PT1000 sensors are supported in addition to thermistors. In addition PT100 and Thermocouples are supported through SPI daughter boards.
- Power monitoring to allow for state save on power fail.
- Support for the Duet3d Filament Monitors both magnetic and laser versions.
Connectivity
Wiring Diagram
The wiring diagram is here: Duet 3 Expansion 3HC Wiring Diagram
Duet 3 Expansion Board 3HC provides the following connectors:
Power
2-way barrier strip: two pins for main VIN and GND. VIN power is fused at 10A, individual outputs from the board could add up to >10A (e.g. OUT_0,OUT_1 and OUT_2 are each rated to 6A max) however the total board current should not exceed 10A.
CAN
Two RJ11 connectors labeled CAN IN and CAN OUT. In fact it doesn't matter which you use for the cable from the main board and which you use for the cable to the next expansion board, because they are wired in parallel.
Important! Just behind the RJ11 connectors is a 4-pin terminal block. On the last board in the CAN chain only (the one with a cable in only one of the RJ11 connectors), two jumpers must be fitted in that block to terminate the CAN bus. Jumpers must not be fitted in expansion boards that are not at the end of the CAN bus.
Stepper Motors
4-pin JST VH DRIVER_0 thru DRIVER_2: Stepper motor connections. (see note on JST VH connectors below)
High current outputs
2-pin JST VH or compatible headers labelled OUT_0 thru OUT_2: these are intended for extruder heaters or fans. Maximum recommended current 6A each. If you connect high-current inductive loads to these outputs, you must use external flyback diodes. (see note on JST VH connectors below)
Medium current/ 4 wire fan outputs
4-pin KK headers with offset spigot OUT_3 thru OUT_5: these are intended for PWM-controllable fans although they can be used for other purposes. Maximum recommended current 2.5A each. The connector fits a standard PC-type 4-pin PWM fan. Alternatively, a 2-pin fan may be connected between the V_OULCn pin (+ve) and the OUT_n_NEG pin (-ve). The positive supply to these connectors is the centre pin of the 3-pin jumper block labeled OUT3-OUT5_Select. 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. (see note on 12V max current below)
Medium current/ 4 wire fan outputs
2-pin KK headers labelled OUT7 thru OUT9: these are intended for fans. Maximum recommended current 2.5A each. Flyback diodes are built-in to these outputs. (see note on 12V max current below)
GPIO headers
5-pin KK headers labelled IO_0 thru IO_5: 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.
Caution! Check the pinout of these using the wiring diagram linked above before connecting anything to them.
Temperature connections
2-pin KK headers labelled TEMP_0 thru TEMP_2: connections for thermistor or PT1000 sensors.
2x5 header: This is for connecting PT100 and thermocouple interface boards
Other headers
2-pin KK headers labelled GND and V+: This is for powering an always-on fan or similar.
6-pin SWD connector: This is for firmware debugging and also provides a backup mechanism to program firmware.
LEDs
Diagnostic LED: when the expansion board starts up this LED will blank rapidly. If the expansion board is connected to a main board running compatible firmware, the LED on the expansion board will switch to blinking synchronously with the main board LED once time sync has been established across the CAN bus.
Power indication LEDs: There are 4 power indication LEDs:
- Blue: VIN (sensed after the fuse)
- Amber: 12V
- Red: 5V
- Green: 3.3V
Important Notes
JST VH connectors: The 4 wire motor and OUT_0 thru OUT_2 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. 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
Max 12V current :The two banks of Low Current outputs (OUT3-5, OUT6-8) can be separately selected to be powered by either VIN or internal 12V. Total 12V fan current draw must not exceed 800mA.
Max 5V and 3.3V current: Up to 800mA from 3.3V and 5V combined, of which no more than 500mA from 3.3V.
Firmware limitations: See Duet 3 firmware configuration limitations.
IO
There are 6 IO headers on board. Each has an input and output along with 3.3V, 5V and Gnd supplied. This enables them to support a wide range of endstops, probes, filament monitors and future low bandwidth devices.
RepRapFirmware 3 can be configured to map these ports to the appropriate functions as required.
Except as noted in the table below, an IO_x_IN pin can always be used to provide a digital input (e.g. for endstop inputs or filament monitors), and an IO_x_OUT pin can always be used to provide a digital output. On the version 0.6 and 1.0 boards the individual IO_x connectors have the following additional capabilities:
IO # | UART? | Analog in? | PWM out? | Notes |
---|---|---|---|---|
0 | yes | yes | no | In current firmware builds, dedicated to supporting a PanelDue, may not be used for any other purpose |
1 | yes | yes | yes | |
2 | yes | yes | no | |
3 | no | no | no | |
4 | no | no | yes | |
5 | no | yes | no |
Power distribution
VIN in the range 12V-32V must be provided to the Duet expansion board. The board produces onboard 12V, 5V and 3.3V, from VIN (12V will not be produced if only 12V is provided as VIN).
These voltages are divided for internal and external use. with external 3.3V and 5V going to IO and other headers, and external 12V if provided to the low current fan voltage selection pins.
Dimensions
''click on the image for a larger version"
Thermal tests
DC42 conducted thermal tests on the drivers running at 4.45A RMS (6.3A Peak) per phase:
This is the FLIR image after 10 minutes, with no fan cooling:
The reported MCU temperature was 62.4C. Adding a quiet 40x20mm Sunon fan brings the temperatures down nicely:
The reported MCU temperature came down to 43C. Ambient temperature during these tests was 27C.
4 Comments
I’m desperately in need of 2 Duet 3 Expansion 3HC’s where can I get them?
Kirk Wilson - Reply
please email sales@duet3d.com
Tony -
How to connect a laser filament monitor?
You write that there is support for duet filament monitors, but when i want to configure it with
M591 D0 P5 C"1.io2.in" R40:120 E3.0 S1
i’ll get
Error: M591: Remote ports not yet supported by this command
Monitor and extruder drive is connected to the same extension board.
Benjamin S - Reply
ok, i get it. I wanted to build a corexy with tool changer and connect the axes X,Y,Z1,Z2,Z3 and U (for tc motor) to the mainboard and all other extruders to the extension board(s).
At this moment, using a filament monitor with an extruder on an extension board is not supported -> So i have to connect some axes to the extension board to use a filament monitor. But: I cannot change X, Y and U, because stall detection is not supported on extension boards and i cannot change Z1, Z2 or Z3, because z probing is not supported on the extension board…
I wanted to use stall detection for X and Y to detect layer shifting problems while printing, but i think its the lesser evil compared to the other workarounds.
Hopefully any of the limitations is fixed in the near future.
Benjamin S -