@pause behavior

I have been doing numerous prints where I change filament at certain layers, and so I put in the following for my @pause to facilitate filament swaps:

G1 F1800.000 E53.50201 ; retract
G90 ; Absolute Coordinates
G1 X10 Y10 ;Move extruder to the front for filament change
G91 ; Relative Coordinates
G1 Z30 ;Raise print head 
@sound ;Play a sound

This gets the hot end up high and ideally off of the print so that I can drool out filament until the color has completely shifted.

What I am wondering is two things to improve this:

I am often forgetful, and I leave the printer unattended most of the time.  So on occasion, it sits there doing nothing with heat still applied.  So I would like to put in a Dwell command and then disable the heater for those times.  Something like this:

G4 P10000 ;Wait 10 seconds
M104 S0 ; turn off temperature

The questions for this would be:
1) Will the heater automatically re-enable and heat back up before attempting to resume printing?
2) If I resume printing before the 10 seconds have elapsed, will the heater disable still be buffered and thus turn off the heater mid-print?  If so, what would that do to the print?

And a broader question:
Is it possible to write a script that will send an email to me when the pause command executes, instead of playing a sound (which I don't hear when on the other side of the building).  Really I can do the whole sending an email thing with AutoHotKey, so I just need a script that can generate any kind of output to trigger AutoHotKey to run a more complicated script event (Not sure if I can trigger off the sound alone... I will have to check into that...)


  • We have a Android/iOS app that can send a push message on pause, also you still have to hear it. Alternativelay use 

    @execute cmd 

    to run any script you like.

    gcode is a sequential langauge so in your case it will always delay and disable temperature,even if you hit ok within 10 seconds. So that will not work and pause does not restore temperatures. Only solution is to add a set temp. after the pause to enable it back after pause or manually reenable it every time and continue only after heat up is done..
  • Alright, thanks for the response :)   Forgot about the app option, far easier that way than writing a script.   And I suppose for the heating it would be best for the printer to just disable heat on pause and remember to manually restart it.   Far preferable to forgetting about the thing overnight and destroying my hotend.
  • I decided to play with this @execute command so I could do custom log files and notifications when various layers or locations are reached (trying to figure out the timing on a few prints that I want to get really creative with).

    How would I send the ETA, Time Remaining, current layer, current line in Gcode, or other information through to a batch file in those two argument spots available with @execute?
  • @execute does not support variables, so you don't. Just add the parameters you want there.
Sign In or Register to comment.