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

    Pause.g Resume.g problems

    Scheduled Pinned Locked Moved Unsolved
    Gcode meta commands
    8
    58
    3.7k
    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.
    • dc42undefined
      dc42 administrators @Deluxe 600
      last edited by

      @Deluxe-600, what happens when you press the Resume button?

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      Deluxe 600undefined 1 Reply Last reply Reply Quote 0
      • Deluxe 600undefined
        Deluxe 600 @dc42
        last edited by Deluxe 600

        @dc42 The printing head goes back to the saved position lowers to the print and then "G0/G1: insufficient axes homed" error and cancels the print. I can change whatever i want in the "resume.g" file but nothing changes.

        1 Reply Last reply Reply Quote 0
        • Deluxe 600undefined
          Deluxe 600
          last edited by

          This is just weird. If i create a macro for resume in which i have :

          T0 ; activate tool again
          M116 ; wait for all temperatures.
          M98 P"homex.g" ;
          M98 P"homey.g" ;
          M106 P0 T1 ; restores the previous fan speed
          G1 E10 F3600 ; extrude 10mm of filament
          G1 R1 X0 Y0 Z5 F4000 ; go to 5mm above position of the last print move
          G1 R1 X0 Y0 ; go back to the last print move
          M83 ; relative extruder moves

          It does all it should but then it just moves above the print and pauses.
          Then i have to push the "Resume" button in the interface. It homes again and then starts printing....but if i dont run the macro first it doesnt home or wait for the tool to heat up. It just moves above the print and then throws an error messeage. I realy dont know what to do 😞 . Im fighting it for the last 4 days.

          1 Reply Last reply Reply Quote 0
          • Phaedruxundefined
            Phaedrux Moderator
            last edited by

            The button is checking to see if any axis are unhomed and will not run if it's unhommed. Which is why when you force resume.g to run and it runs the homing macros you can then use the button the second time.

            Can you try splitting out the homing from the resume.g file?

            As I suggested before, create a macro that contains a G92 command to set the current location for X Y Z. If your pause.g moves the axis to a certain location, and your axis stay stable when the motors are off, then you can use that same position. No rehoming needed.

            Then you can run that macro to set the axis as homed, and then you can use the resume button. Remove any homing calls from resume.g.

            Z-Bot CoreXY Build | Thingiverse Profile

            Deluxe 600undefined 1 Reply Last reply Reply Quote 0
            • Deluxe 600undefined
              Deluxe 600 @Phaedrux
              last edited by

              @Phaedrux I will definetly try that and let you know. CAn i have one more question? When pausing i would like to turn off the part cooling fan but also somehow save the value it was on so i can resume cooling when resuming the print. I was trying to figure it out using M106 R1 or R2 but no luck so far. Thanks

              1 Reply Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                I would have thought M106 R1 or R2 would have worked. How are you turning the fan off in pause.g? M107?

                Z-Bot CoreXY Build | Thingiverse Profile

                Deluxe 600undefined 1 Reply Last reply Reply Quote 0
                • Deluxe 600undefined
                  Deluxe 600 @Phaedrux
                  last edited by

                  @Phaedrux M106 S0

                  1 Reply Last reply Reply Quote 0
                  • Phaedruxundefined
                    Phaedrux Moderator
                    last edited by

                    Try using M107 in pause.g to turn off the fan and then M106 R1 to return it to it's last speed in resume.g

                    Z-Bot CoreXY Build | Thingiverse Profile

                    Deluxe 600undefined 1 Reply Last reply Reply Quote 0
                    • Deluxe 600undefined
                      Deluxe 600 @Phaedrux
                      last edited by Deluxe 600

                      @Phaedrux said in Pause.g Resume.g problems:

                      M107

                      I put M107 is the pause.g but the cooling fan still didnt turn back on 😕 . Dont understand why. Also i have tried the G92 but it didnt have any effect, when pressing the resume button the print head just went above the print and then i got the "G0/G1: insufficient axes homed" error again.

                      Here is what i changed

                      ; pause.g
                      ; called when a print from SD card is paused
                      ;
                      M83 ; relative extruder moves
                      G1 E-10 F3600 ; retract 10mm of filament
                      G91 ; relative positioning
                      G1 Z5 F360 ; lift Z by 5mm
                      G90 ; absolute positioning
                      G1 X20 Y525 F6000 ; go to X=20 Y=525
                      M18 X Y E ;turn off X,Y,E steppers
                      G10 P0 R20 ; Set standby temp of tool 0 to 20*
                      T-1 ; put tools in standby
                      M107 ; FAN off

                      ; resume.g
                      ; called before a print from SD card is resumed
                      G92 X20 Y525 ; axis position
                      T0 ; activate tool again
                      M116 ; wait for all temperatures.
                      G1 E20 F500 ; extrude 10mm of filament
                      G1 R1 X0 Y0 Z5 F4000 ; go to 5mm above position of the last print move
                      G1 R1 X0 Y0 ; go back to the last print move
                      M83 ; relative extruder moves
                      M106 R1 ; FAN on

                      1 Reply Last reply Reply Quote 0
                      • Phaedruxundefined
                        Phaedrux Moderator
                        last edited by

                        Don't put G92 into the resume.g file. As I said, put it in a separate macro and then run that manually before pressing resume button.

                        Z-Bot CoreXY Build | Thingiverse Profile

                        Deluxe 600undefined 1 Reply Last reply Reply Quote 0
                        • Deluxe 600undefined
                          Deluxe 600 @Phaedrux
                          last edited by

                          @Phaedrux Yeah that works. But i cant figure out that print fan, any ideas?

                          1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator
                            last edited by

                            Post your config.g

                            Z-Bot CoreXY Build | Thingiverse Profile

                            Deluxe 600undefined 1 Reply Last reply Reply Quote 0
                            • Deluxe 600undefined
                              Deluxe 600 @Phaedrux
                              last edited by

                              @Phaedrux

                              Here 🙂

                              ; Configuration file for Duet Ethernet (firmware version 1.16 or older)
                              ; executed by the firmware on start-up
                              ;
                              ; generated by RepRapFirmware Configuration Tool on Thu May 03 2018 12:19:37 GMT+0200 (Střední Evropa (letní čas))

                              ; General preferences
                              G90 ; Send absolute coordinates...
                              M83 ; ...but relative extruder moves

                              ; Network
                              M111 S0 ; Debug off
                              M550 Deluxe600 ; Machine name (can be anything you like)
                              M551 inman. ; Machine password (used when you connect Duet Web Control or via FTP)
                              M540 PBE:EF:DE:AD:FE:ED ; MAC Address (only needed if you have more than one Duet 0.6 or 0.8.5 on the same network)
                              M552 S1 ; IP address (0 = use DHCP)
                              M554 192.168.0.220 ; Gateway (not used yet)
                              M553 P255.255.255.0 ; Netmask
                              M555 P2 ; Set output to look like Marlin
                              M575 P1 B57600 S1 ; Set auxiliary serial port baud rate and require checksum (for PanelDue)

                              ; Drives
                              M569 P0 S1 ; Drive 0 goes forwards
                              M569 P1 S1 ; Drive 1 goes forwards
                              M569 P2 S1 ; Drive 2 goes forwards
                              M569 P3 S1 ; Drive 3 goes forwards
                              M584 X0 Y1 Z2 E3 ; set drive mapping
                              M350 Z16 X16 Y16 I1 ; Configure microstepping with interpolation
                              M350 E32 I0 ; Configure microstepping without interpolation
                              M92 X50 Y50 Z800 E280 ; Set steps per mm
                              M566 X480 Y480 Z19.2 E270 ; Set maximum instantaneous speed changes (mm/min)
                              M203 X12000 Y12000 Z720 E7200 ; Set maximum speeds (mm/min)
                              M201 X1000 Y1000 Z850 E5000 ; Set accelerations (mm/s^2)
                              M906 X1650 Y1650 Z1650 E700 I1 ; Set motor currents (mA) and motor idle factor in per cent
                              M84 S5 ; Set idle timeout

                              ; Axis Limits
                              M208 X0 Y0 Z0 S0 ; Set axis minima
                              M208 X545 Y545 Z700 S0 ; Set axis maxima

                              ; Endstops
                              M574 X1 S1 P"!xstop" ; configure active-high endstop for low end on X via pin xstop
                              M574 Y2 S1 P"!ystop" ; configure active-high 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" A2 H3 F100 T6000 ; set Z probe type to bltouch and the dive height + speeds
                              G31 X0 Y0 Z1.45 ; set Z probe trigger value, offset and trigger height
                              M557 X0:500 Y40:500 S100:100 ; define mesh grid

                              ; Heaters
                              M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; 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 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
                              M140 H0 ; map heated bed to heater 0
                              M143 H0 S100 ; set temperature limit for heater 0 to 100C
                              M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; 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

                              ; Fans
                              M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
                              M106 P0 S1 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 S0.5 H1 T45 ; set fan 1 value. Thermostatic control is turned on
                              M950 F2 C"fan2" Q500 ; create fan 2 (bed) on pin fan2 and set its frequency
                              M106 P2 S1 H0 T50

                              ; Tools
                              M563 P0 D0 H1 ; 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

                              ;LED control
                              M950 P5 C"e1heat" ;set e1heat as a GPIO output pin
                              M501
                              M107

                              Phaedruxundefined 1 Reply Last reply Reply Quote 0
                              • Phaedruxundefined
                                Phaedrux Moderator @Deluxe 600
                                last edited by

                                @Deluxe-600 said in Pause.g Resume.g problems:

                                G31 X0 Y0 Z1.45 ; set Z probe trigger value, offset and trigger height

                                You may want to add your X Y offset for your BLTouch. Unexpected things can happen if you don't.

                                @Deluxe-600 said in Pause.g Resume.g problems:

                                ; Tools
                                M563 P0 D0 H1 ; Define tool 0

                                Try adding F0 to your tool definition to make sure it's using fan0 for the part fan.

                                Z-Bot CoreXY Build | Thingiverse Profile

                                Deluxe 600undefined 1 Reply Last reply Reply Quote 0
                                • Deluxe 600undefined
                                  Deluxe 600 @Phaedrux
                                  last edited by Deluxe 600

                                  @Phaedrux The bl touch has a mechanical offset so its ok, but thank you 🙂 . I added the F0 to the tool definition (now looking like this"M563 P0 D0 H1 F0" correct?) . Doesnt seem to change anything, the fan still doesnt turn back up. Any other ideas what could i try? This is realy strange.

                                  1 Reply Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators
                                    last edited by

                                    How did you set the fan speed before the pause: did you use M106 with or without the P parameter? If you used it without (the usual way that slicers generate it) then your pause/resume code looks OK to me.

                                    Duet WiFi hardware designer and firmware engineer
                                    Please do not ask me for Duet support via PM or email, use the forum
                                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                                    Deluxe 600undefined 1 Reply Last reply Reply Quote 0
                                    • Deluxe 600undefined
                                      Deluxe 600 @dc42
                                      last edited by Deluxe 600

                                      @dc42 Its set by the Slicer. So no ideas? Ow man 😞

                                      1 Reply Last reply Reply Quote 0
                                      • Deluxe 600undefined
                                        Deluxe 600
                                        last edited by

                                        Well didnt know this would be such a problem

                                        1 Reply Last reply Reply Quote 0
                                        • Phaedruxundefined
                                          Phaedrux Moderator
                                          last edited by

                                          an you share a sample gcode file? What slicer?

                                          Z-Bot CoreXY Build | Thingiverse Profile

                                          Deluxe 600undefined 1 Reply Last reply Reply Quote 0
                                          • Deluxe 600undefined
                                            Deluxe 600 @Phaedrux
                                            last edited by

                                            @Phaedrux Hi.
                                            Im using PrusaSlicer for slicing.
                                            Here is a gcode i tried printing.
                                            test 1_0.3mm_PLA_MK3.gcode

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