Page 1 of 4

How To - Pausing a print at a specific layer. (Simplify3D)

Posted: Sat Mar 28, 2015 4:51 pm
by sthone
PausePrint0.jpg
PausePrint0.jpg (133.57 KiB) Viewed 44412 times
This is a quick "How to" on Pausing a print at a specific layer for all us newbies out there.
This is helpful if say you are running a print and would like to change filament color mid print. (Such as on the a part shown above.)


PausePrint1.jpg
PausePrint1.jpg (92.25 KiB) Viewed 44412 times
Another reason to use this method would be if you wanted to say imbed a nut into your print as seen above. (That's what I will be showing how to do in this tutorial.)
Tip - when designing your part leave adequate clearance so your nut will drop right into the print and also have room above it to clear the hot end once inserted.



PausePrint2.jpg
PausePrint2.jpg (114.7 KiB) Viewed 44412 times
After importing the piece into your slicer (Simplify3D in this case) click Prepare to Print!
1. Make sure Preview By "Layer" in selected.
2. Click through the layers to find the layer you would like to stop the print at. (this is either where you want to insert the nut or change the filament color.)
3. The layer number is listed here.



PausePrint3.jpg
PausePrint3.jpg (113.5 KiB) Viewed 44412 times
1. For this tutorial I will be stopping before the layer that just starts to cover the nut.
2. Which is Layer 50 in this case.
3. After you have all your processes set and you know what layer you're stopping at save your G-code to disk.

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Sat Mar 28, 2015 5:12 pm
by sthone
PausePrint4.jpg
PausePrint4.jpg (116.72 KiB) Viewed 44410 times
Next you will need to edit your G-code in a text editor. I just used Notepad. (Windows)
Click File Open. (Top Left corner)
1. Change this box to "All Files (*.*)".
2. Find your File, then click "Open"


PausePrint5.jpg
PausePrint5.jpg (118.72 KiB) Viewed 44410 times
1. Hit Control (Ctrl) F on your keyboard and then type in "layer (your number)" in the box that comes up (layer 50 in my case.)
2. It will highlight the right layer line for you in all that code. (you can hit "Cancel" now to close that box.)


PausePrint6.jpg
PausePrint6.jpg (109.23 KiB) Viewed 44410 times
Copy and paste the following code were it is shown above. (the G92 E0 in the code below was added since the screen shot above was taken.)

Code: Select all

G91 ; set relative positioning
G0 Z40 ; raise Z (drop bed)
G90 ; set absolute positioning
M84 S0 ; disable idle timeout
M25 ; Pause SD Print
G92 E0 ; zero extruder
(If you need the bed to drop farther change the z40 to a larger number.)

8-11-15 Edit = Added G92 Code for zeroing the extruder.

Tip - Use M0 command instead of M25 if running on Octoprint.
(thanks Jules and jsc for those fixes)


Now just click "File" and "Save" to save the changes you just made. Upload the g-code to your SD card and start the print via Simplify3D from the "Print from SD Card" button.

Tip - The first time I tried this I also added this code to layer 3 just to test to make sure it worked without having to print all 50 layers first.

PausePrint7.jpg
PausePrint7.jpg (68.2 KiB) Viewed 44410 times
As the part was printing I taped the nut to the Heated Bed to heat it up in the hopes the filament would stick to it better. If printing with ABS you could (in theory) coat the top of the nut with abs slurry or glue stick to help with adhesion.

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Sat Mar 28, 2015 5:26 pm
by sthone
PausePrint8.jpg
PausePrint8.jpg (61.88 KiB) Viewed 44410 times
When the printer gets to the start of Layer 50 it should pause and drop the bed, at this point you can drop in the nut (making sure its low enough to clear the hot end when it resumes) or you can use the jog controls to retract and change your filament if you are just changing colors.

***********************************************************************************************************************************************

EDIT - If you are changing filament you need to make sure you extrude the exact same amount of filament as you retracted.
i.e. - If you hit the retract -100 Button to remove the filament make sure you only hit extrude 100 Button when adding the new filamnet.

************* This should no longer matter now that the G92 command has been added to the code above *********************

PausePrint9.jpg
PausePrint9.jpg (143.63 KiB) Viewed 44410 times
To restart the print you need to first click the "Pause SD Print" button (even thought its already stopped), the button will now say "Resume SD print" just click it again and the print should resume where it left off. (you may need to clip any ooze that happened during the pause from your hot end with tweezers while it's restarting)
(If running through Octoprint just hit the "Pause" button once to resume after the pause. Do not hit restart)


PausePrint010.jpg
PausePrint010.jpg (63.98 KiB) Viewed 44410 times
The filament didn't really stick to the nut to well so I did get some stringing over the hole and a blob on the hot end.


PausePrint011.jpg
PausePrint011.jpg (114.87 KiB) Viewed 44410 times
Here is the finished piece with the nut full embedded into the print. It looks like there's a layer adhesion problem where I stopped the print to insert the nut but I think that the filament that should have been the outer perimeter just got stuck to the nozzle for a bit after jumping over the nut.

That's about it.... Thanks to jsc and mattrsch for help with the code part. If there are any inaccuracies or problems with this tutorial please point them out and I will fix them.

-Steve

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Sat Mar 28, 2015 7:55 pm
by Bratag
Great write up. For embedding stuff like the nut I would imagine having a correct fit is essential as I can see the hotend getting wrecked if it was to hit a metal nut sitting too high in the print.

I gotta experiment with some color changes using this.

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Sat Mar 28, 2015 8:12 pm
by Jules
Excellent! Very clear instructions, thanks Steve! :D

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Sat Mar 28, 2015 10:54 pm
by jdacal
Thanks for taking the time to post this. Great easy to understand explanation!

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Sun Mar 29, 2015 12:45 am
by PcS
Thanks a ton for this ! I no longer have to baby sit and swap on the move !!!!

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Sun Mar 29, 2015 3:33 am
by jsc
Here is an advanced trick for embedding nuts into parts by nophead: http://hydraraptor.blogspot.com/2014/03 ... holes.html
It relies on some crazy modeling tricks to basically print an octagonal hole in mid air in three layers. The first layer bridges to a rectangle, the second bridges that into a square, the third gets the corners, and after that you have an octagon.

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Mon Apr 13, 2015 3:54 pm
by SouthSideofdaSky
Awesome write up, thanks! Very easy to follow.

My question is...would it be theoretically possible to do this without input from the computer at all? I generally like to disconnect entirely from my computer after starting an SD print. I was looking through the library of g-code commands and I don't see anything like "pause SD print for X seconds".

Could I use the M109 command to (for example) wait for the nozzle to heat an additional 10 C then reverse the command, thus generating a pause of however long that would take?
E.g. my code might look like (if I were printing PLA at 215 C)

Code: Select all

G0 Z40, etc.
(maybe add a X and Y jog in here for safety reasons)
M104 S225 T0
M109 S225 T0
M104 S215 T0
M109 R215 T0
Obviously to insert the nut, etc. I kinda have to watch the printer anyways so it's not as much of an inconvenience to keep the computer plugged in/active. This is just more of a theoretical question.

Re: How To - Pausing a print at a specific layer. (Simplify3

Posted: Mon Apr 13, 2015 6:57 pm
by insta
SouthSideofdaSky wrote:Awesome write up, thanks! Very easy to follow.

My question is...would it be theoretically possible to do this without input from the computer at all? I generally like to disconnect entirely from my computer after starting an SD print. I was looking through the library of g-code commands and I don't see anything like "pause SD print for X seconds".

Could I use the M109 command to (for example) wait for the nozzle to heat an additional 10 C then reverse the command, thus generating a pause of however long that would take?
E.g. my code might look like (if I were printing PLA at 215 C)

Code: Select all

G0 Z40, etc.
(maybe add a X and Y jog in here for safety reasons)
M104 S225 T0
M109 S225 T0
M104 S215 T0
M109 R215 T0
You want G4: Dwell ( http://reprap.org/wiki/G-code )
Obviously to insert the nut, etc. I kinda have to watch the printer anyways so it's not as much of an inconvenience to keep the computer plugged in/active. This is just more of a theoretical question.[/quote]