Setting Gcode Print Pauses for Filament Changes in Simplify3D

Sometimes to add a little jazz to your 3d prints, you may want to change filaments halfway through. Sometimes it is possible to watch your 3d printer manually to do a pause and replace. However, if you are running a lot of similar pieces which require consistency in swapping filaments partway through, editing the gcode to do just that can be very handy.

This quick guide is written to show how to do this in Simplify3D but essentially, the gcodes used and approach will be the same for other slicers too.

The Required GCode

So, this bit of code will be the ones which do all the magic:

G91 ; Set to Relative Positioning
G1 Z20 F5000 ; Lift the nozzle 20mm along Z axis, at speed of 5000mm/min
G90 ; Set back to absolute positioning
M0 ; Pause and wait for user input to continue the print


In Simplify3D, we will make use of the Process>Scripts>Post-Processing setting to enter the above Gcode (without the comments) as something like this:

{REPLACE "; layer 3, Z = " "\nG91\nG1 Z20 F5000\nG90\nM0\n; layer 3, Z = "}

Of course, you will need to decide the layer number to pause at (more on this in a bit). Note also that the “\n” parts of the code simply creates a new line in the GCode.

It will look something like the below:

Determining the Layer for Pausing

Switching to the print preview for your model in the slicer will make this part easy. In Simplify3D, this is a matter of dragging the slider at the bottom of the preview screen (or entering the layer number).

One quick tip to double check you’ve gotten the right layer would be to toggle the 3d print preview to only show you a layer at a time. Like in the example below, we’ve set it such that we want the printer to pause just before we start printing the name part of the model.

As a quick tip to keep things neat, you can also name your exported gcode file something like “FileName-LayerPause#.gcode” so you can remember where you set the layer pause and differentiate it from other similar files.

Printing your Model File

3d printing your file would then be similar to what you’ve always done. Only difference being that when your print hits the inserted pause gcode, the printer will lift the hotend. Then you can go about your filament changing.

A quick thing to note is not to hit any buttons on your 3d printer at this time before finishing the change as it will resume the print!

The Final Products

And so, if all goes well and the gods of 3d printing are smiling upon you, you should be able to quickly churn out multi-colored piece of your own!

A further expansion upon this technique would be to insert multiple pauses to do even more layer pauses for color changes but we’ll leave that to you to experiment more with!

And of course, wishing everyone a very Happy New Year as we go into 2018! =)


Comments 4

    1. Post
  1. Thanks for the article, it’s been very helpful.

    Unfortunately when I resume printing, the nozzle is considerably higher and the filament doesn’t adhere well. Any ideas?

    1. Post

Leave a Reply

Your email address will not be published. Required fields are marked *