Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Z Crash after changing filament

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    2
    5
    210
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • jmshepundefined
      jmshep
      last edited by

      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"
      G28

      Duet Start.g
      ; Start
      G28 ;Home all
      G32 ;executes bed.g
      M83 ;extruder relative mode
      G1 X30 Y5 ;moves to X30 Y5
      M572 D0 S0.1

      Custom 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 advance

      And 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 Compensation

      Any help to resolve my problem and any suggestions to refine my macros and config will be appreciated.
      John S

      deckingmanundefined 1 Reply Last reply Reply Quote 0
      • deckingmanundefined
        deckingman @jmshep
        last edited by

        @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.

        Ian
        https://somei3deas.wordpress.com/
        https://www.youtube.com/@deckingman

        jmshepundefined 1 Reply Last reply Reply Quote 1
        • jmshepundefined
          jmshep
          last edited by

          Thanks for the reply. I will make the changes and report back.

          1 Reply Last reply Reply Quote 0
          • jmshepundefined
            jmshep @deckingman
            last edited by

            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.

            deckingmanundefined 1 Reply Last reply Reply Quote 0
            • deckingmanundefined
              deckingman @jmshep
              last edited by

              @jmshep No worries - glad that fixed it.

              Ian
              https://somei3deas.wordpress.com/
              https://www.youtube.com/@deckingman

              1 Reply Last reply Reply Quote 0
              • First post
                Last post
              Unless otherwise noted, all forum content is licensed under CC-BY-SA