Skip to content

December 17, 2017

Slic3r, Mercy Me

I’d seriously love to say that every 3D print I do comes out absolutely perfect. The actual truth is that some come out superb, and some come out sub-perb…

Which, as you might imagine teases me into holding my nose and diving into the 3D printing pool. Again.

A few days ago, while working on some modifications to the Marlin firmware that I’m currently testing, my 3D Benchy test prints were printing a little different. Specifically I had some gaps in the outside perimeter wall.

Ah…something new in the firmware to contend with.

Except, in this case, it wasn’t the firmware. Took me about 30 seconds to figure out but the give away is that the firmware controls the printer. It doesn’t tell the printer where to go and drool filament all by itself, the GCODE file does that. The firmware merely does what it’s told to do.

This is akin to writing computer software. For example, a software program will tell the CPU what to do. This can be completely different than what you want it to do. Thus two completely different things. Take a moment to emblazon that into your mind and you’ll be the better for it. Especially when you’re troubleshooting.

Slicers

There are any number of slicer programs for 3D printers currently on the market. Some are paid, free (as in open source) and proprietary. The only thing they share in common is they will slice an STL file into layers. Some will work better in some cases, some have better support abilities, and some will promote the early on set of baldness.

My poison is Slic3r that is being developed by PRUSA.

As of this writing they are up to 1.38.4 and with each release they manage to fix many bugs, add new features, and of course include the bugs they didn’t expect. The winner of course is the end user. If you’re travelling along this uncharted off road trail, the loser is also the end user.

When you’re slicing an STL, my strong suggestion is that you examine the layers, one at a time to preview any “problems” than might reward you with more recycle than cycle…

In Slic3r there is a LAYER tab. When you get a good design, it pays to just kind of glance through the layers to see what a good design looks like. Then when you print an example of “oh good grief”, you can look at it and compare the two…

Example

I’ll take the same Benchy STL, slice it in 1.34.1 and 1.38.4. I have exactly the same settings/option selected in both of the slicers.

The mind says they should be the same. Don’t listen to it…

First up, the slicer version 1.34.1 I normally use. Take a look at the outside wall of the boat. When you see a gap that big, that’s going to print exactly the same. With a big. Frigging. Gap. You might be able to fix it with an option, like “detect thin walls” or “ensure vertical shell thickness” or not. But if you don’t look at the layers, you’ll never know. Until it’s too late.

Slic3r1341 Benchy

Now we open the same STL, with the 1.38.4 version of Slicer and whoa. Something changed. Big time. Not only is the outside perimeter of the boat filled in, the honeycomb infill looks COMPLETELY different. And no, it’s not, it is the same 36% setting as the first one.

Slic3r1383 Benchy

The Ah Ha Moment. Not

Immediately I’m “assuming” that I should not use the older version because it messes up the walls. Keyword there? Assuming.

What you don’t see is that later on, the box behind the wheelhouse starts to get gaps in the wall for no apparent reason. So initially, it looked like the problem was “solved” when in reality it just moved someplace else.

And yes, every slicer I’ve used, between versions, will exhibit these odd, sometimes really odd, changes.

This confirms what I’ve found in working with the innards in Marlin. There are always trade-offs or compromises to be made. In Marlin this is particularly true with respect to Delta style printers because Marlin is trying to be the kitchen sink of 3D printer firmwares.

Summary

If your prints are coming out strange, or there is a design that isn’t working at all, don’t be too quick to blame the printer. It’s doing what the slicer told it to do.

This can be completely different what you expected (or wanted) it to do.

Trust me.

Read more from 3D, Software

Comments are closed.