Recovering from Failure: Getting Your Duet 3 Back Online
Setting up and troubleshooting a Duet 3 Mainboard 6HC can be a complex process, especially when things go wrong. This guide walks through the steps taken to recover from a system failure, correct machine positioning, and get the Duet 3 running properly.
Identifying the Issue
The main problem encountered was that the machine incorrectly recognized the bed size as 150x150, even though the real bed size was 350x350. This led to:
- Incorrect movements and homing behavior.
- The toolhead crashing into corners when moving to expected positions.
- The machine reporting the wrong coordinates after homing.
Step 1: Checking Machine Limits in config.g
The M208 command in config.g defines the machine’s minimum and maximum travel limits. The incorrect values were causing the firmware to restrict movement to a 150x150 workspace.
✅ Fix: Correct M208 Configuration
The following settings were updated in config.g to reflect the real machine limits:
M208 X0 Y0 Z0 S1 ; Set axis minima (home at 0,0)
M208 X350 Y350 Z300 S0 ; Set axis maxima (full bed range)
This ensures that the machine correctly understands the physical workspace.
Step 2: Correcting Steps Per Millimeter (M92)
The printer’s steps per mm settings determine how far the machine moves per step. Incorrect values can cause movement scaling issues, where:
- A command to move 350mm only moves the machine 150mm.
- Positions appear correct numerically but do not match physical reality.
✅ Fix: Adjust M92 Steps Per mm
M92 X80.00 Y80.00 Z400.00 E708.00 ; Adjust steps per mm
Reducing the X and Y steps per mm doubled the travel distance, fixing the scaling issue.
Step 3: Verifying Homing Behavior
After correcting the bed size and steps per mm, the machine still reported incorrect positions after homing. The solution was to force the firmware to recognize (0,0) at the correct location.
✅ Fix: Update homeall.g to Properly Reset Position
G1 H1 X-350 F3000 ; Home X (Move to X minimum)
G92 X0 ; Set X coordinate to 0 after homing
G1 H1 Y-350 F3000 ; Home Y (Move to Y minimum)
G92 Y0 ; Set Y coordinate to 0 after homing
This ensures that the printer knows that the front-left corner is (0,0) after homing.
Step 4: Testing and Verification
Once all the above changes were made, the following tests were performed:
-
Home all axes and verify that the machine correctly reports (X0, Y0, Z0):
G28 M114✅ Expected output:
X:0.000 Y:0.000 Z:XXX -
Move to the center of the bed (X175, Y175):
G1 X175 Y175 F3000✅ The toolhead moves to the exact center.
-
Test full movement range to ensure no unexpected limits:
G1 X350 Y350 F3000✅ No crashes, machine moves correctly.
-
Test Z probing behavior to confirm correct offset application:
G30✅ Z-probing works at the correct position.
Conclusion
Recovering from a misconfigured Duet 3 setup requires a methodical approach:
- Fix machine limits (
M208). - Correct movement scaling (
M92). - Ensure homing properly resets positions (
G92). - Run movement tests (
G1 X/Y&M114).
By carefully troubleshooting each aspect, the machine was fully restored to operational status. If you encounter similar issues, following these steps should help diagnose and correct misconfigurations efficiently.
🚀 Happy Printing!
