Baby stepping / Resurrection issue



  • Hi there,

    Board: Duet WiFi 1.02 or later + DueX2
    Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 2.04 (2019-11-01b1)
    Duet WiFi Server Version: 1.23

    We are experimenting some strange behavior when doing resurrection print after power failure.

    As shown on picture below, everything works well only when baby stepping = 0 (we did like 5 resurrections successfully on the center part), when negative baby stepping value print restarts to stuck, and to far away when baby stepping is positive value.

    Resurrect.g (negative baby stepping case)
    ; File "0:/gcodes/Calibacion cion cion/test resurection.gcode" resume print after print paused at 2019-12-03 15:29
    G21
    M140 P0 S60.0
    G29 S1
    T-1 P0
    G92 X-14.802 Y-2.181 Z5.700 U222.000
    G60 S1
    G10 P1 S0 R0
    G10 P0 S200 R200
    T0 P0

    M98 P"resurrect-prologue.g"
    M116
    M290 X0.000 Y0.000 Z-0.200 U0.000 R0
    T-1 P0
    T0 P6
    G10 L2 P1 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P2 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P3 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P4 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P5 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P6 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P7 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P8 X0.00 Y0.00 Z0.00 U0.00
    G10 L2 P9 X0.00 Y0.00 Z0.00 U0.00
    G54
    M106 S1.00
    M106 P0 S1.00
    M106 P3 S0.00
    M106 P4 S0.00
    M106 P5 S0.00
    M106 P6 S0.00
    M106 P7 S0.00
    M106 P8 S0.00
    M116
    G92 E0.00000
    M83
    M23 "0:/gcodes/Calibacion cion cion/test resurection.gcode"
    M26 S319283 P0.000
    G0 F6000 Z7.500
    G0 F6000 X-14.802 Y-2.181 U222.000
    G0 F6000 Z5.500
    G1 F2499.0 P0
    G21
    M24
    Resurect-prologue.g
    M291 P"Punto de recuparaciĆ³n encontrado! Click Ok para lanzar el proceso" R"Power Failure Resurrection" S3
    M280 P5 S160 ; Alarm Release and Push-Pin UP
    M116 H1
    M116 H2
    M117 Waiting for temperature Bed
    M116 H0 ; wait for temperature Bed
    M291 P"To continue printing make sure parts are still sticked to the bed and click Ok" R"Power Failure Resurrection" S3
    T0 P0
    G91 ; relative positioning
    G1 Z5 F6000 ; lift Z relative to current position
    G1 X3 U-3 S2 F3600 ; Home X, U
    G1 S1 Y325 F3600 ; move quickly to Y axis endstop and stop there (first pass)
    G1 Y-5 F6000 ; go back a few mm
    G1 S1 Y325 F720 ; move slowly to Y axis endstop once more (second pass)
    G1 S1 X-445 U445 F3600 ; move quickly to X axis endstop and stop there (first pass)
    G1 X5 U-5 F6000 ; go back a few mm
    G1 S1 X-445 U445 F360 ; move slowly to X axis endstop once more (second pass)
    G1 X3 U-3
    G90

    Resume.g
    ; resume.g
    ; called before a print from SD card is resumed
    G90 ; absolute positioning
    G1 X-222 Y-162 R1 Z5 F12000 ; Go to park
    G1 X-222 U222 Y-162 R1 Z5 F12000 ; Go to park
    G1 X-222 Y-162 R1 Z5 F12000 ; Go to park
    M83 ; relative extruder moves
    G1 E30 F300 ; extrude 20mm of filament
    G1 X-222 U222 Y-100 F12000 ; Unpark
    G1 R1 X0 Y0 F12000 ; go back to the last print move
    M98 P"0:/macros/5- Control LED/LED Azul"

    20191203_162157.jpg

    Thanks for your help,

    Simon



  • @Trideo Babystepping is a tool to save a running print, and it is especially useful if you want to verify the printers Z-offset in practice. But it is not meant to be permanently applied, baby steps are always reset to zero on a reboot - which is exactly what you observe.

    So, when you know how many baby steps you need for a good first layer, adjust your Z=0 accordingly to get rid of any manual corrections of the Z-height.



  • @infiniteloop said in Baby stepping / Resurrection issue:

    But it is not meant to be permanently applied

    No, but it should probably be reapplied after a resurrection.



  • @Phaedrux said in Baby stepping / Resurrection issue:

    No, but it should probably be reapplied after a resurrection.

    Yep, as I said: to save a running print. It is a manual intervention, not a replacement for a proper Z-offset.


  • administrators

    @Trideo said in Baby stepping / Resurrection issue:

    M98 P"resurrect-prologue.g"
    M116
    M290 X0.000 Y0.000 Z-0.200 U0.000 R0

    You are right, it should be applied. The above code in your resurrect.g file indicates that it does get set, assuming that you had -0.2mm of babystepping applied to that print when you interrupted it.



  • @dc42 @Phaedrux @infiniteloop Thank you for answering. I understand that baby stepping is not mean to be permanently applied.
    A beta tester using our new printer noticed this behavior so I started to investigate and I saw within the resurrection code the M290 command that applies the baby stepping value (in this case yes @dc42 -0.2mm) so I thought "Oh it should be works"...


Log in to reply