3D Printing Files - Resuming a Filament Runout

I recently had a catastrophic failure. My printer ran out of filament, and the nozzle was pretending to purge plastic midair.

It was a very long print too: The famous Pine64 Pinecil or Miniware TS100 Soldering Iron Case! It’s a ridiculous Remix of Remixes. Great soldering iron travel case btw.

So What Now?

First thing I did was stop the print job, but be aware that the bed and hotend will cool down. Depending on the print and how much surface area it has on the bed, a bed cooldown might detach the print.

After stopping the print, I set the bed temperature manually to the one in the print job. Now we have a little more time to analyze the situation.

Finding the Right Layer

I looked at my 3D Print very closely, and tried to figure out the last layer it printed. A flashlight helps! Try to identify features close to the last printed layer. Open up your slicer with the model and slice it with the same settings, or better import the G-Code that failed into the slicer.

Then, inspect the model in the slicer carefully, while comparing to the half-done model on your 3D Printer’s bed. A great tool of help is the layer tool, that lets you “scroll” through the layers from top to bottom. Find the first layer that has not been printed!

⚠️ Bad Partial Layer

ℹ️ I’m not sure if this would work!

If you have a partially completed layer, you could try inspecting the layer where it all went wrong with the tool that simulates the nozzle printing in the slicer. PrusaSlicer will actually simulate the nozzle while scrolling through the G-Code on the left of the screen!

Try figuring out where along that path the printer ran out of filament. This might not be an abrupt ending of extrusion!

It’s probably best to reprint the partial layer again, and later clean up the model by sanding.

Editing the G-Code

There’s no reason to be nervous about this, the veterans of the 3D Printing world have done more G-Code editing than actual printing /s.

For PrusaSlicer users, it’s the easiest if you note down the Z Height of the last layer.

PrusaSlicer actually exports the G-Code with comments that say ;Z:4.2 to indicate the next printer moves are for the layer at Height 4.2 mm. This makes it really simple to edit the G-Code to remove all layers that have been printed correctly.

Note: Do not delete the preheat and final temperature G-Codes.
Note: add a line after homing is done, so that the printer drives up to that layer height! Otherwise, it might crash into the model.

Results?

I made a mistake and removed the final heating temperatures, so my printer tried to continue printing the PLA case at a freezing 150°C. I had to manually set the nozzle temperature to 215°C.

Not only that, but I also let it print the last layer it previously printed, twice. My model has an obvious bulging line where the printer stopped and restarted printing.

Resources

This was only possible because of this great guide by CNC Kitchen.

May your prints be uninterrupted and artifactless. 🙏

roman's lab

Technology and Engineering Blog


Recommencez!

By Roman Hayn
29 November 2024

[~] ls
-r-x 3D Printing
-r-x DIY
-r-x Tutorial