duet recovery from ...
Clear all

duet recovery from smoke

5 Posts
1 Users
Posts: 321
Topic starter
Joined: 3 years ago

Ok I took a few months off the 3d printing so I could focus on getting drone pilot rated and it was a big success.

Now I am back and setting up hopefully 6 machines that are going to be lk1 base but with upgrades. 

1   duet wifi control
2   duel z axis
3  auto bed level of some type
4   quick change head assembly ( hotend and extruder as assembly with magnet mounts)
5  all enclosures with exhaust
6  better material management
7 video feeds
8   to be determined


Now to bring things to an update.  I had a complete setup with duet, duel z, paneldue, and bl touch working great. 
then I had to get it all wire tight and installed in a vent box and I shorted the board, This is the second time with the exact short.   

This then is the process of adding a new duet2 wifi from china with the 1.02 firmware    Below are some instruction links I followed   the process I will document  here




This is a difficult update and gets confusing. Especially  from 3.0 to 3.3.  There are 2 files you have to locate.  



When you are up and running the internet interface and try M997 S0 for firmware update you get these file missing errors   

Firstly understand you will have to connect the duet wifi with a USB data cable to get the first updates to the board. If you don't get a connection via serial port change the cable of find another computer. The YAT program has to find the duet board or your going to have to do a complete board erase and use BOSSA 

That gets real tricky and explaining it is difficult. The Duet website does a good job but it's confusing because thet try to instruct with different boards not just the duet wifi. 

I am trying to detail for only the duet2 wifi and configured for longer LK1

you cannot upgrade directly from version 1.x or 2.x firmware to 3.01 or later firmware


For updating your Duet from RRF v1.x to 2.x, see the legacy firmware update instructions. This gets down to reset the board completely with erase. It's a great experience and will take you a couple hours or days to get it humming. 


What I did was to grab 3 new duet2 wifi boards and updated all from 1.2 to 3.3  at the same time  I have a sd card with all the files if i can upload them I will if not just request them

This is my final files and the 2 missing  there should be everything here https://drive.google.com/drive/folders/1bjXCtonZIx33Jcmff43aCxHj6wrugxZC?usp=sharing

4 Replies
Posts: 321
Topic starter
Joined: 3 years ago

m115 to check version

M997 S0  firmware update 

starting the wifi requires uploading a seperate program to the wifi module

start by   turn wifi off, send m587 command string, turn wifi on 

m997 s1  wifi install

m552 s1  start wifi

m552 s0  stop wifi 

(the M587 command is where you tell the wifi your network ssid info.  Look at available wifi and record your ssid   it is imperative you do the semi colon correct or the command will be rejected. do a cut and past if you have to 

make sure your putting the ssid and password inside double quote characters

M302 S1
allows cold extrusion, but that only works if filament is not glued to extruder.

Posts: 321
Topic starter
Joined: 3 years ago

From this point on its alot of configuration stuff. It's not an easy read but it's here for reference and learning

I ran into a real head scratcher losing the extruder. At first I was getting real light plastic coming out. I decided to update the hot end complete and it still was not improved. Turns out it was a weak motor but what an experience, I was about to replace the duet thinking I messed up the driver chips because I installed duel z axis motors. I wanted to be able to independently drive each motor thinking this would be the best way to relly get the bed level. Well it turns out to have been pretty difficult and I never was able to get it to work correctly. I found myself in the end just twisting the second axis screw to level the bed. so much for fancy algorithms and coding. 
I secided to remove the second z motor and go back to the orignal setup and this is when the extruder quit completely. So the duel setup uses the 2nd extruder driver and you have to configure the duet to see it that way, of course you could just plug in the motor into slave mode by removing jumpers but I wanted the complex setup. Removing the motor from the e1 driver confused the system somehow. Just before removing the duet for replacement I added 

M584 X0 Y1 Z2 E3        ;driver 0 controls the X motor, 1 controls Y, 2 controls Z , and 3 for the extruder and the extruder came to life


; Drives
M569 P0 S1 ; physical drive 0 goes forwards
M569 P1 S0 ; physical drive 1 goes backwards
M569 P2 S1 ; physical drive 2 goes forwards
M569 P3 S0 ; physical drive 3 goes backwards
M569 P4 S1 ; physical drive 4 goes forwards
M584 X0 Y1 Z2 E3:4 ; set drive mapping
M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z400.00 E93.00:400.00 ; set steps per mm
M566 X1200.00 Y1200.00 Z24.00 E300.00:24.00 ; set maximum instantaneous speed changes (mm/min)
M203 X9000.00 Y9000.00 Z180.00 E6000.00:180.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z100.00 E5000.00:100.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z800 E1000:800 I50 ; set motor currents (mA) and motor idle factor in per cent
M584 X0 Y1 Z2:4 E3 ; two Z motors connected to driver outputs Z and E1
M671 X-20:220 Y0:0 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
M84 S30 ; Set idle timeout

; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X300 Y300 Z400 S0 ; set axis maxima
M208 X-5:305 Y0:300 ; X carriage moves from -5 to 305, Y bed goes from 0 to 300

; Endstops
M574 X1 S1 P"!xstop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin !xstop
M574 Y1 S1 P"!ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin !ystop
M574 Z1 S2 ; configure Z-probe endstop for low end on Z

; Z-Probe
M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X-35 Y10 Z2.5 ; set Z probe trigger value, offset and trigger height
M556 S50 X0 Y0 Z0 ; set orthogonal axis compensation parameters
M557 X15:290 Y15:290 S20 ; define mesh grid

; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S150 ; set temperature limit for heater 0 to 150C
M308 S1 P"e0temp" Y"thermistor" T100000 B4092 ; configure sensor 1 as thermistor on pin e0temp
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S275 ; set temperature limit for heater 1 to 275C

; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on
M950 F2 C"fan2" Q500 ; create fan 2 on pin fan2 and set its frequency
M106 P2 S1 H1:0 T45 ; set fan 2 value. Thermostatic control is turned on

; Tools
M563 P0 D0 H1 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C

Posts: 321
Topic starter
Joined: 3 years ago

; bed.g
; called to perform automatic bed compensation via G32
; generated by RepRapFirmware Configuration Tool v3.1.4 on Sun Aug 02 2020 19:54:07 GMT-0600 (Mountain Daylight Time)
M561 ; clear any bed transform
G29 ; probe the bed and enable compensation

M561 ; clear all bed compensation

G28 ; home all axis

G90 ; absolute positioning

G1 X220 Y290 Z5 ; move probe to center of the bed

G30 ; set Z0 position with the probe

G1 Z10 ; return to 20mm height

G30 P1 X10 Y295 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors

G30 P0 X0 Y295 Z-99999 ; probe near a leadscrew, half way along Y axis

G1 X220 Y267.5 Z10 ; move probe to center of the bed

G30 ; set Z0 position with the probe

Posts: 321
Topic starter
Joined: 3 years ago
  • G29 Run file sys/mesh.g, or if that file isn't found then do G29 S0
  • G29 S0 Probe the bed and save height map to file
  • G29 S1 Load height map from file
  • G29 S2 Clear height map
  • G29 S3 P"filename" Save height map to file
  • G30 Probe the bed at a single point (can be used to measure Z probe trigger height)
  • G31 Set Z probe trigger height, threshold and offsets from the print head reference point
  • G32 Run sys/bed.g file. You can put commands in bed.g to perform mesh bed levelling, e.g. M401 followed by G29 S0 followed by M402.
  • M374 Save height map to file
  • M375 Load height map from file (same as G29 S1)
  • M376 Set bed compensation taper height
  • M401 Deploy Z probe (runs sys/deployprobe#.g file where # is the Z probe number, or file sys/deployprobe.g if that file isn't found).
  • M402 Retract Z probe (runs sys/retractprobe#.g file where # is the Z probe number, or sys/retractprobe.g if that file isn't found)
  • M557 Define the probing grid
  • M558 Set Z probe type, dive height, probing speed, travel speed between probe points, and probe recovery time
  • M561 Clear height map (same as G29 S2)

©2023 LocalAd


We're not around right now. But you can send us an email and we'll get back to you, asap.

Log in with your credentials


Forgot your details?

Create Account