Resurrection issue after firmware 2.03 update



  • Hi Everybody,

    We recently updated from firmware 1.21 to 2 and finally 2.03 (Release 2.03 (Duet 2 series), 1.24 (Duet 06/085)) to develop our first IDEX printer. Everything works awesome, dual print, ditto, mirror, heated chamber, filament run-out detection, Bltouch and grid compensation....except resurrection process.

    • Resurrection file is well generated
    • When M916 sent, resurrection process start correctly
    • Whole resurrection-prologue is well executed
    • When the tool reach is working temperature, printer get stuck to "changing Tool" ....

    Configuration file :

    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Fri Mar 08 2019 16:42:44 GMT-0300 (hora estándar de Argentina)

    ; General preferences
    G21 ; SEB Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Network
    M550 P"Fase 2 EXT Modo IDEX" ; Set machine name
    M551 P"sebi" ; Set password
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet
    M552 S1 ; Enable network

    ; Drives
    M569 P0 S0 ; Drive 0 goes forwards
    M569 P1 S0 ; Drive 1 goes forwards
    M569 P2 S1 ; Drive 2 goes forwards
    M569 P3 S0 ; Drive 3 goes forwards
    M569 P4 S1 ; Drive 4 goes forwards
    M569 P5 S1 ; SEB Drive 5 goes forwards
    M569 P6 S1 ; SEB Drive 6 goes forwards
    M584 X0 Y1:6 Z2 U3 E4:5 ; SEB Create the U axis and assign stepper driver 5 to it
    M350 X32 Y32:32 U32 Z32 E16:16 I0 ; Simi Configure microstepping without interpolation
    M92 X160.00 Y160.00:160.00 U160.00 Z1596.00 E640.00:640.00 ; SEB Set steps per mm
    ; Dynamic
    M566 X900 Y900:900 U900 Z50 E800:800 ; SEB Set maximum instantaneous speed changes (mm/min)
    M203 X18000.00 Y18000.00:18000.00 U18000.00 Z300.00 E1200.00:1200.00 ; SEB Set maximum speeds (mm/min)
    M201 X1000.00 Y1000.00:1000.00 U1000.00 Z150 E500:500 ; SEB Set accelerations (mm/s^2)
    ; Current
    M906 X1400.00 Y1400.00:1400.00 U1400.00 Z1400.00 E800.00:800.00 I60 ; SEB Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Axis Limits
    M208 X-225 U-200 Y-162 Z0 S1 ; SEB Set axis minima
    M208 X200 U224.3 Y155 Z500 S0 ; SEB Set axis maxima

    ; Endstops
    M574 X1 U2 Y2 Z0 S0 ; SEB Set active high endstops

    ; Z-Probe
    M574 Z1 S2 ; Set endstops controlled by probe
    M307 H5 A-1 C-1 D-1 ; Disable heater on PWM channel for BLTouch
    M558 P9 H5 F120 T9000 ; Set Z probe type to bltouch and the dive height + speeds
    G31 P500 X-26 Y20 Z1.9 ; Set Z probe trigger value, offset and trigger height
    M557 X-195:174 Y-141:150 P5 ; Define mesh grid

    ; Heaters
    ;BED
    M305 P0 T100000 B3950 C1.159962e-7
    ;M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
    M307 H0 A132.8 C169.6 D4.3 B0 V24.2 ;
    ;CHAMBER
    M141 H3 ; Assign chamber heater to heater 0
    M305 P3 T100000 B3950 R4700 C1.159962e-7 ; Set thermistor + ADC parameters for heater 3
    M307 H3 B1
    M143 H3 S60 ; Set temperature limit for heater 3 to 120C
    M570 H3 P600000000000000
    ;EXTRUDER 1
    M305 P1 T98640 B4632.86 C9.4861662E-08 R4700 H0 L0 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; Set temperature limit for heater 1 to 280C
    M307 H1 A1353.4 C338.3 D7.5 S0.8 V24.3 B0 ; PID with PWM=0.8
    ;M307 H1 A340.0 C140.0 D5.5 S1 V24.3 B0 ; PID with PWM=1
    ;EXTRUDER 2
    M305 P2 T98640 B4632.86 C9.4861662E-08 R4700 H0 L0 ; Set thermistor + ADC parameters for heater 2
    M143 H2 S280 ; Set temperature limit for heater 2 to 280C
    M307 H2 A1149.6 C270.5 D3.9 S0.8 V24.3 B0 ; PID with PWM=0.8

    ;M307 H2 A623 C150 D3.5 S0.8 V24.2 B0 ; PID when chamber at 50°C

    ; Fans
    M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H2 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S1 I0 F500 H3 T50:60 L150 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

    ; Tools
    M563 P0 D0 H1 S"Ex 1" ; 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
    M563 P1 D1 H2 X3 S"Ex 2" ; Define tool 1
    G10 P1 X0 Y10.15 Z0.13 ; Set tool 1 axis offsets
    G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C
    ;M563 P2 D0:1 H1:2 X0:3 S"Super Tool"
    ;G10 P2 X0 Y0 U-200 S0 R0
    ;M567 P2 E1:1 ; set mix ratio 100% on both extruders
    ;M568 P2 S1 ; turn on mixing for tool 2

    ;LEDs
    M106 P3 I-1
    M106 P4 I-1
    M106 P5 I-1
    M42 P23 S255 M42 P24 S255 M42 P25 S255

    ; Automatic power saving
    M911 S23 R22 P"M913 X0 Y0 E0 Z0" ; Set voltage thresholds and actions to run on power loss

    ; Filament Runout

    ;M591 D0 P1 C4 S1
    ;M591 D1 P1 C2 S1
    ; Custom settings are not configured

    Resurrect-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
    G10 P0 S150 R150
    T0 P0
    G10 P1 S150 R150
    T1 P0
    M116 P1
    M116 P2
    G91 G1 Z5 S2
    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
    G28 X0
    G28 U0

    Resurrect.g :

    ; File "0:/gcodes/Faraday/F6 A - Fase 2 Negra.gcode" resume print after print paused at 2019-08-23 09:17
    G21
    M140 P0 S70.0
    G29 S1
    T-1 P0
    G92 X64.198 Y-13.247 Z15.450 U64.198
    G60 S1
    M98 P"resurrect-prologue.g"
    M116
    M290 X0.000 Y0.000 Z-0.020 U0.000 R0
    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
    G10 P0 S0 R0
    T0 P0
    G10 P1 S195 R195
    T1 P6
    M106 S1.00
    M106 P0 S1.00
    M106 P2 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/Faraday/F6 A - Fase 2 Negra.gcode"
    M26 S8516095 P0.000
    G0 F6000 Z17.300
    G0 F6000 X64.198 Y-23.397 U64.198
    G0 F6000 Z15.300
    G1 F1920.0 P0
    G21
    M24

    Note : X or U homing process automatically homes Y before due to static end-stops

    Thanks for your help and sorry for my bad english.

    Simon from Argentina.!
    0_1566566648639_9bfe0baf-8fe6-4426-8408-f1070a77a25b.jpg



  • Just for the record,

    I ran in the exact same situation. The printer gets stuck in busy mode every time i try to resurrect from a power outage.

    Before running in this issue the system was refusing to complete the extrusion command from the prologue due to no tool being selected. The tool selection line generated by the system was set to :

    T-1 P0
    

    After running M122 (System Status), I noticed that the current Gcode executed was stuck at the first tool offset G10 command. See code below.

    === GCodes ===
    Segments left: 0
    Stack records: 4 allocated, 1 in use
    Movement lock held by http
    http is doing "M116" in state(s) 0 0
    telnet is idle in state(s) 0
    file is idle in state(s) 0
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon is idle in state(s) 0
    queue is doing "G10 L2 P3 X0.00 Y0.00 Z0.00" in state(s) 0 <------ STUCK IN BUSY MODE
    autopause is idle in state(s) 0
    Code queue is not empty:
    Queued 'G10 L2 P4 X0.00 Y0.00 Z0.00' for move 22
    Queued 'G10 L2 P5 X0.00 Y0.00 Z0.00' for move 22
    Queued 'G10 L2 P6 X0.00 Y0.00 Z0.00' for move 22
    Queued 'G10 L2 P7 X0.00 Y0.00 Z0.00' for move 22
    Queued 'G10 L2 P8 X0.00 Y0.00 Z0.00' for move 22
    Queued 'G10 L2 P9 X0.00 Y0.00 Z0.00' for move 22
    Queued 'G10 P0 S225 R225' for move 22
    

    After modifying my resurrect.g by disabling the G10 Tool Offset command, everything went well.

    ; Resurrect.g file content:
    G21
    M140 P0 S60.0
    T0 P0                         ; For some reason this line was set to T-1 P0.  
    G92 X109.706 Y148.431 Z70.550
    G60 S1
    M98 P"resurrect-prologue.g"
    M116
    M290 X0.000 Y0.000 Z0.550 R0
    ;G10 L2 P1 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P2 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P3 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P4 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P5 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P6 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P7 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P8 X0.00 Y0.00 Z0.00 Disabled by commenting
    ;G10 L2 P9 X0.00 Y0.00 Z0.00 Disabled by commenting
    G54
    G10 P0 S225 R225
    T0 P6
    M106 S1.00
    M106 P0 S1.00
    M106 P2 S0.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/holedwand.gcode"
    M26 S17110915 P0.765
    G0 F6000 Z73.100
    G0 F6000 X109.706 Y148.431
    G0 F6000 Z71.100
    G1 F1800.0 P0
    G21
    M24
    
    

    This might be a band-aid to another problem or wrong setting, but if you come across this issue, you may give this a try.



  • Hi Mirage,

    Thanks for answering !
    I take into account your comment, T-1 P0 is a strange command we have been finding about and we didn't seen nothing according on RepRap firmware publications....
    We finely redefined all prologue code and things started work normally, T-1 P0 is still here but seems not be a problem now during one Tool printing......

    We need further test in dual, ditto and mirror print to confirm that is 100% working correctly..
    Best Regards,

    Simon


  • administrators

    @Trideo for more information about T-1 P0 (and tool commands with P0 in general) see:

    https://duet3d.dozuki.com/Wiki/Gcode#Section_T_Select_Tool

    You may find using P0 helpful to have as user macros in order to switch the active tool without running the tool change macro files so you can switch which IDEX head is active without having the heatup, purge or whatever else you do with your IDEX tool before you start heating.


Log in to reply