slicer

16 Articles

If you own a desktop 3D printer, you’re almost certainly familiar with Slic3r. Even if the name doesn’t ring a bell, there’s an excellent chance that a program you’ve used to convert STLs into the G-code your printer can understand was using Slic3r behind the scenes in some capacity. While there have been the occasional challengers, Slic3r has remained one of the most widely used open source slicers for the better part of a decade. While some might argue that proprietary slicers have pulled ahead in some respects, it’s hard to beat free.

So when Josef Prusa announced his team’s fork of Slic3r back in 2016, it wasn’t exactly a shock. The company wanted to offer a slicer optimized for their line of 3D printers, and being big proponents of open source, it made sense they would lean heavily on what was already available in the community. The result was the aptly named “Slic3r Prusa Edition”, or as it came to be known, Slic3r PE.

Ostensibly the fork enabled Prusa to fine tune print parameters for their particular machines and implement support for products such as their Multi-Material Upgrade, but it didn’t take long for Prusa’s developers to start fixing and improving core Slic3r functionality. As both projects were released under the GNU Affero General Public License v3.0, any and all of these improvements could be backported to the original Slic3r; but doing so would take considerable time and effort, something that’s always in short supply with community developed projects.

Since Slic3r PE still produced standard G-code that any 3D printer could use, soon people started using it with their non-Prusa printers simply because it had more features. But this served only to further blur the line between the two projects, especially for new users. When issues arose, it could be hard to determine who should take responsibility for it. All the while, the gap between the two projects continued to widen.

Having a great word processor won’t actually help you write the next bestselling novel. It might make it easier, but if you have a great novel in you, you could probably write it on paper towels with a crayon if you had to. A great 3D printer isn’t all you need to make great 3D prints. A lot depends on the model you start with and that software known as a slicer. You have several choices, and now you have one more: PathIO, a slicer sponsored by E3D, is out in beta. You can see a video about its features below.

The software has a few rough edges as you might expect from a beta. The slicer doesn’t feed Gcode to a printer directly, although Octoprint integration is forthcoming. Developers say they are focusing on the slicing engine which is totally new. According to their website, conventional slicers immediately cut a model into 2D slices and then decide how to realize each slice with respect to the shell and infill. Pathio works in 3D space and claims this has benefits for producing correct wall thickness and an increase in self-supporting geometries.

If you’ve used a desktop 3D printer, you’re likely familiar with the concept of layer heights. Put simply: thicker layers will print faster, and thinner layers will produce better detail. Selecting your layer height is making a choice between detail and speed, which usually works well enough. For example, prints which are structural and don’t have much surface detail can be done in higher layer heights to maximize speed with no real downside. Conversely, if you’ve got a model with a lot of detail you’ll have to just deal with the increased print time of thinner layers.

At least, that’s how it’s been up till now. Modern slicer software is starting to test the waters of adaptive layer heights, which change the layer height during the print. So the software will raise or lower the layer height depending on the level of detail required for the current area being printed. [Dylan Radcliffe] wanted to experiment with this feature on his Monoprice Select Mini, but it took some tweaking and the dreaded mathematics to get Cura’s adaptive layer height working on the entry-level printer. He’s documented his settings for anyone who wants to check out this next-generation 3D printing technology without forking out the cash for a top of the line machine.

While Cura is a popular slicer, the fact of the matter is that it’s developed by Ultimaker primarily for their own line of high-end printers. It will control machines from other manufacturers, but it makes no promises that all the features in the software will actually work as expected on lesser printers. In the case of the Monoprice Mini, the issue is the rather unusual Z hardware. The printer uses a 7.5° 48-step motor coupled to 0.7 mm thread pitch M4 rod. This is a pretty suspect arrangement that was no doubt selected to keep costs down, and results in an unusual 0.04375 mm step increment. For the best possible print quality, layer heights should be a multiple of this number. That’s where the math comes in.

After enabling adaptive layers in Cura’s experimental settings, you need to define the value which Cura will add or subtract to the base layer height. In theory you could enter 0.04375 mm here, but while that’s the minimum on paper, the machine itself is unlikely to be able to pull off such a small variation. [Dylan] recommends doubling that to 0.0875 for the “variation step size” parameter, and setting the base layer height to 0.175 mm (4 x 0.04375 mm).

[Dylan] reports these settings reduced the print time on his topographical map pieces from 12 hours to 7 hours, while still maintaining high detail on the top surface. Of course print time reduction is going to be highly dependent on the model being printed, so your mileage may vary.

If you were to make a list of the most important technological achievements of the last 100 years, advanced medical imaging would probably have to rank right up near the top. The ability to see inside the body in exquisite detail is nearly miraculous, and in some cases life-saving.

Navigating through the virtual bodies generated by the torrents of data streaming out of something like a magnetic resonance imager (MRI) can be a challenge, though. This intuitive MRI slicer aims to change that and makes 3D walkthroughs of the human body trivially easy. [Shachar “Vice” Weis] doesn’t provide a great deal of detail about the system, but from what we can glean, the controller is based on a tablet and Vive tracker. The Vive is attached to the back of the tablet and detects its position in space. The plane of the tablet is then interpreted as the slicing plane for the 3D reconstruction of the structure undergoing study. The video below shows it exploring a human head scan; the update speed is incredible, with no visible lag. [Vice] says this is version 0.1, so we expect more to come from this. Obvious features would be the ability to zoom in and out with tablet gestures, and a way to spin the 3D model in space to look at the model from other angles.

OctoPrint is arguably the ultimate tool for remote 3D printer control and monitoring. Whether you simply want a way to send G-Code to your printer without it being physically connected to your computer or you want to be able to monitor a print from your phone while at work, OctoPrint is what you’re looking for. The core software itself is fantastic, and the community that has sprung up around the development of OctoPrint plugins has done an incredible job expanding the basic functionality into some very impressive new territory.

RAMBo 3D controller with Pi Zero Integration

But all that is on the software side; you still need to run OctoPrint on something. Technically speaking, OctoPrint could run on more or less anything you have lying around the workshop. It’s cross platform and doesn’t need anything more exotic than a free USB port to connect to the printer, and people have run it on everything from disused Windows desktops to cheap Android smartphones. But for many, the true “home” of OctoPrint is the Raspberry Pi.

But while the Raspberry Pi is more than capable of controlling a 3D printer in real-time, there has always been some debate about its suitability for slicing STL files. Even on a desktop computer, it can sometimes be a time consuming chore to take an STL file and process it down to the raw G-Code file that will command the printer’s movements.

In an effort to quantify the slicing performance on the Raspberry Pi, I thought it would be interesting to do a head-to-head slicing comparison between the Pi Zero, the ever popular Pi 3, and the newest Pi 3 B+.

The cool kids these days all seem to think we’re on the verge of an AI apocalypse, at least judging by all the virtual ink expended on various theories. But our putative AI overlords will have a hard time taking over the world without being able to build robotic legions to impose their will. That’s why this advance in 3D printing that can incorporate electronic circuits may be a little terrifying, at least to some.

The basic idea that [Florens Wasserfall] and colleagues at the University of Hamburg have come up with is a 3D-printer with a few special modifications. One is a separate extruder than squirts a conductive silver-polymer ink, the other is a simple vacuum tip on the printer extruder for pick and place operations. The bed of the printer also has a tray for storing SMD parts and cameras for the pick-and-place to locate parts and orient them before placing them into the uncured conductive ink traces.

The key to making the hardware work together though is a toolchain that allows circuits to be integrated into the print. It starts with a schematic in Eagle, which joins with the CAD model of the part to be printed in a modified version of Slic3r, the open-source slicing package. Locations for SMD components are defined, traces are routed, and the hybrid printer builds the whole assembly at once. The video below shows it in action, and we’ve got to say it’s pretty slick.

Sure, it’s all academic for now, with simple blinky light circuits and the like. But team this up with something like these PCB motors, and you’ve got the makings of a robotic nightmare. Or not.

The mechanical and electronic parts of a 3D printer are critical for success, but so is the slicing software. Slic3r and Cura are arguably the most popular, and how they command your printer has a lot to do with the results you can get. There are lots of other slicers out there both free and paid, but it is hard to really dig into each one of them to see if they are really better than whatever you are using today. If you are interested in the performance of IceSL — a free slicer for Windows and Linux — [DIY3DTECH] has a video review that can help you decide if you want to try it. You can see the video below.

IceSL has several modules and can actually do OpenSCAD-like modeling in Lua so you could — in theory — do everything in this one tool. The review, though, focuses only on the slicing aspect. In addition to the desktop client versions, you can use some features online (although on our Linux machine it didn’t work with the latest Chrome beta even with no add ons; Firefox worked great, though).