External commands run before print is finished?
Hi everyone,
I wrote a .py script (printerOff) as per the external commands instructions to toggle a relay attached to my Rasppi, works great to turn the printer off with button click in the Repetier Server menu. Additionally in the extcommands.xml I added a <execute> command and confirmed that it also works when I manually enter "@execute printerOff" in the gcode console.
When I add @execute printerOff into the "run after job" section of the event dependent gcodes section, the printer shuts off before the last layer is completely finished, and the still hot remains on the part although my end script in Simplfy3d as follows:
I wrote a .py script (printerOff) as per the external commands instructions to toggle a relay attached to my Rasppi, works great to turn the printer off with button click in the Repetier Server menu. Additionally in the extcommands.xml I added a <execute> command and confirmed that it also works when I manually enter "@execute printerOff" in the gcode console.
When I add @execute printerOff into the "run after job" section of the event dependent gcodes section, the printer shuts off before the last layer is completely finished, and the still hot remains on the part although my end script in Simplfy3d as follows:
M104 S0 ; turn off extruder
M140 S0 ; turn off bed
G1 X0 Y200 F2400 ; prepare for part removal
M84 ; disable motors
M106 S0 ; Turn off Part Fan
When I take out the @execute script from Repetier Server the print finished and the nozzle and bed finish their end movements. I have even tried putting in: G4 S60, in both Simplfy3d and the "run after job" section in Repetier Server to see if a delay would help but the printer still shuts a few seconds before the last layer is finished.
Anyone have any tips?
Thank and regards,
Jay
Comments
G4 S1
that will wait in total 20 seconds minus what gets send ahead. Some printers need active cooling when finished for a while so maybe add first delay longer or if you do not want delay use P1 for 1 millisecond instead. Now when it reaches execute all important commands are executed.