Z Crash after changing filament
-
A request for some help please.
Generally my Cartesian printer is working well.
My board and firmware is reported in DWC as: Duet WiFi 1.02 or laterFirmware: RepRapFirmware for Duet 2 WiFi/Ethernet 2.05.1 (2020-02-09b1)
Duet WiFi Server Version: 1.23.The problem is that if I use my macros to unload and load filament and then start a print, bed.g and the custom start code in Prusa SLic3r runs normally, the head moves to its staring position and waits for the set temperatures and then the head crashes into the bed and seems to want to carry on downwards without stopping.
I also have the same problem if I cancel a print and the start again from DWC (v 2.0.4).
If I load a print from 'cold' everything is OK, as soon as the temperatures are correct the head moves and starts to print as expected.
The work round is that I have to switch the printer off and restart after changing filaments. Not a big issue until I forget!
I am sure I will be asked for the macros and gcode so here goes:
Unload Macro:
;Unload Filament
M291 P"Wait while nozzle heats up to 100C"
T0 ;Select Tool 0
M104 H1 S100 ;Set temp to 100C
M116 ;Wait for Temp
M291 P"Unloading Filament"
G1 E-20 F600 ;Unload 10mm of filament
G1 E-550 F3000 ;Unload 200mm of filament
G1 E-40 F300 ;Unload 10mm of filament
G4 P1000 ;Wait one second
M400 ;Wait for moves to complete
M292 ;Hide the message
G10 S0 ;Turn off the heater again
M291 P"Unload Complete"
Load Macro:
;Load Filament
M291 P"Homing All"
G28
G31 P500 Z20
M291 P"Wait while nozzle heats up to 180C"
T0 ;Select Tool
M104 S180 ;Set temp to 180C
M116 ;Wait for temp
M291 P"Feeding Filament"
G1 E200 F600 ;Feed in 20mm of filament at feedrate 600
G1 E310 F3000 ;Feed in 550mm of filament at feedrate 3000
G1 E100 F300 ;Feed in 40mm of filament at feedrate 300
G4 P1000 ;wait one second
M400 ;Wait for moves to complete
M292 ;Hide the message
G10 S0 ;Turn off the heater again
M291 P"Load Complete"
G28Duet Start.g
; Start
G28 ;Home all
G32 ;executes bed.g
M83 ;extruder relative mode
G1 X30 Y5 ;moves to X30 Y5
M572 D0 S0.1Custom g Code in SLic3r:
M140 S[first_layer_bed_temperature] ; set bed temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
M104 S[first_layer_temperature] ; set extruder temp
M109 S[first_layer_temperature] ; wait for extruder temp
G92 E0 ; Set Extruder position to 0
G1 Z0.1 F1000 ; Move Z to 0.1
G1 X60.0 E4.0 F1000.0 ; prime
G1 X100.0 E8.5 F1000.0 ; prime
G92 E0 ; Set Extruder position
T0
M116 ; Wait
M572 D0 S0.1 ; set pressure advanceAnd finally my config.g (without networking info)
; General preferences
M111 S0 ;Debugging off
G21 ;Work in millimetres
G90 ;Send absolute coordinates...
M83 ;but relative extruder moves
M555 P2; Set firmware compatibility to look like Marlin; Axis Limits
M208 X0 Y0 Z0 S1 ;Set axis minimum
M208 X220 Y220 Z125 S0 ;Set axis maximum; Endstops
M574 Z0 S0 ;Define active low and unused microswitches
M574 X1 Y1 S1 ;Define microswitch - normally closed (S1) at low end (X1)
M558 P1 A4 H2 R0.05 S0.03 F120 T6000 ;Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds
G31 P500 X-25 Y25 Z2.3 ;Set Z probe trigger value, offset and trigger height; Mesh
M557 X30:190 Y30:190 S160
;G29 S1; Drives
M584 X3 Y2 Z0:1 E4 ;two Z motors connected to driver outputs 2 and 4 (E1)
M569 P0 S1 ;Z goes forwards (S1)
M569 P1 S1 ;Z goes forwards (S1)
M569 P2 S1 ;Y Axis goes forwards (S1)
M569 P3 S0 ;X Axis goes backwards (S0)
M569 P4 S0 ;Extruder goes backwards (S0)
M92 X80.56 Y80.31 Z392 E417 ;Set steps per mm
M350 X16 Y16 Z16 E64 I1 ;Configure microstepping with interpolation; Speeds
M201 X900 Y900 Z200 E3000 ;Accelerations (mm/s^2) (E= Extruder)
M203 X15000 Y15000 Z100 E3600 ;Maximum speeds (mm/minute)
M566 X900 Y900 Z200 E3000 ;Maximum Jerk speeds mm/minute; Heaters
M143 S300 ;Set maximum heater temperature to 300C
M570 S150 ;Set maximum heating time to 150s
M305 P1 T100000 B4725 C7.06e-8 R4700 L0 H0 ;Set thermistor + ADC parameters for heater 1 hot end
M305 P0 T100000 B3950 C0 R4700 S"Bed" ;Set thermistor + ADC parameters for heater 0 bed; Tools
M563 P0 D0 H1 S"Hot End" ;Define tool 0
G10 P0 X0 Y0 ;Set tool 0 axis offsets
G10 P0 R0 S0 ;Set initial tool 0 active and standby temperatures to 0C; Fans
M106 P1 S1 I0 F500 H1 T45 ;Extruder fan (P1), Fan is turned on at 45deg (T) Full Spped (S) Thermostatic on (H)
M106 P0 H-1 S0 C"Part Cooling Fan" ;Part Cooling Fan Switched off (S0) (switched on by Slicer); PID
M307 H1 A560 C182 D7.8 S1.00 V24.3 B0
M307 H0 A134 C889 10.9 D9.7 B0; Leadscrews
M671 X-70:270 Y100:100 S1.5 F1.0 ;leadscrews position relative to bed S= max correction (1mm) F= Fudge factor; Motor Currents & Time Out
M906 X1000 Y1000 Z1000 E800 I30 ;Set motor currents (mA) and motor idle factor in per cent (I)
M84 S30 ; Set idle timeout; CPU Temp Compensation
M912 P0 S-10.6 ;CPU Temp CompensationAny help to resolve my problem and any suggestions to refine my macros and config will be appreciated.
John S -
@jmshep In your config.g, you have a G31 which sets the probe trigger height to 2.3. In your load macro, you have a G31 which sets the trigger height to 20. That'll be what bu**ers things up. When you cycle the power, it cures the problem because that runs config.g which resets the probe value to 2.3.
-
Thanks for the reply. I will make the changes and report back.
-
I am indebted to you it now works as intended. No excuses but that line was supposed to be G1 20 to raise the nozzle so that I could remove any excess filament.
-
@jmshep No worries - glad that fixed it.