# Slicers and printers compatibility

I am a complete beginner so I apologise ahead for probably an obvious question. From what I understand up to now, slicer software basically takes a 3D model and turns it into instructions that say move your print head to this and this position and extrude up to this position and so forth. If that is correct then each slicing software can result in different "filament paths" in printing of the same model ultimately having the effect on the quality of print (unless the "Slicing algorithm" is some open industry accepted one and everyone uses that). But then, it would be advantageous to use other slicer software than the one supplied with the printer. On the other hand, if a slicer gives the instructions to the printer and assuming the G-code is a universal instruction kit (standard each printer understands), it needs to know, at the least, the parameters of the printer.

So the questions are:

1. Can I use any slicing software with any 3D printer and are there any things that may cause a problem (e.g. "How do I set up the slicing software for a particular printer?")
2. If not, am I stuck with the software provided by the printer manufacturer and thus, before buying a printer, one should also analyse the slicing software provided or is there some compatibility chart?

Regarding 2. I looked at both PrusaSlicer, Slic3r, Cura. None of them provide any information on the compatibility. I have access to Creality CR-10S printer but when I saw e.g. PrusaSlicer compared to the Creality, it has more options it seems. But during the installation of the Creality slicer, it forced me to choose the printer that I will be using which suggests that printers are locked to the manufacturer slicer.

• Welcome to 3DPrinting.SE! Do note that e.g. Cura (on which the Creality slicer is based) has many, many, many options, but most of them are hidden, these need to be "checked" to become visible in the advanced view! Automation of the printer configuration is slightly overrated, it basically needs some info on your build platform/volume and filament diameter, it ain't rocket science! 😃 – 0scar Jan 31 at 21:36

# FDM Slicers are not proprietoryexceptions apply

Most commonly uses Slicers are generally not locked to manufacturers or models. Creality's slicer is a variant of Cura, Prusa Slicer is a (further developed) variant of Slic3r. You can slice models for almost any G-code reading 3D Printer with any of the 4.

The question at the first startup or installation is to automate setup: back when I bought my Ender 3, I had to manually make a profile that would fit my printer. Now, you can choose presets that set up the bed size, a safe start G-code and some settings from where you can work.

### exceptions

However, some machines are not compatible with normal slicers, because they either don't run G-code but a proprietary file format or because their geometry is non-standard.

An example of the former type is for example the DaVinci Color printers that use .XYZ files, which contain not only movement commands for the printhead and extruder, but also color print commands for the ink-head. An example of the latter type is "Belt Printers", which use standard G-code but are sliced not in the same way as for normal printers - you need the Cura Blackbelt variant to make the proper command file.

Other slicers like Voxelizer are locked down to the printers of the software's manufacturer.

Traditional paper printing has the model where a document is sent through a driver to convert into instructions in a generic control language, such as PCL, PostScript/PS, XPS, or UFR. The resulting commands are spooled (queued as a group) by the computer to the printer, which then renders it to paper.

3D printing uses a similar process: a model is sent through a slicer to convert into instructions in the G-Code control language1. The result is manually uploaded and invoked on the printer2, which then renders it in plastic.

There are some differences here. For example, the lack of spooling. Slicers usually produce entire G-Code files rather than sending individual instructions via USB. This is by design and preference. Paper prints take seconds; 3D prints take hours, and waste considerably more resources if they are interrupted. Much better not to have your computer involved in the actual printing process instruction-by-instruction.

Additionally, with 3D printing there are more ways to end up with the same result, and which is correct or better can vary greatly on the situation. A model may print with 5% infill, 2 walls, .24 mm layer heights, and 65 mm/s as a draft, or 95% infill, 5 walls, .1 mm layers heights, and 30 mm/s for the final product if it's structural. Or you might use anything in between as a display piece, or based on needs of the model from one to the next for things like overhangs, bridging, bed adhesion, and so forth. You might even need to print the same model in different materials, which also impacts temperatures and speed.

This gives the slicer a more central place in 3d printing. With traditional paper, you might never see your driver directly or only minimally, and instead invoke it from your word processor. This can happen with 3d printing, where the slicer is invoked directly from modelling software, but it's not the norm from my experience. Instead, most models will want their own specific slicer settings.

And now we get at last to answer the question as asked.

This prominent position for the slicer has let to the rise of both commercial and open-source options that work with a wide variety of printers. For sure, there are specialty and experimental printers that require specific slicers, but that's not what a hobbyist is likely to encounter. You will almost certainly be able to select or import a pre-written profile for your printer in whichever slicer you choose.

1. There are exceptions, but they are rare and should be avoided by hobbyists.

2. This still commonly happens by physically moving around an SD card, but wifi is becoming more common, as are options like OctoPi. Some systems do support "spooling" jobs directly from the slicer)

• the design of lack of spooling and preference to move complete files stems from the origin of FDM in CNC control code. In fact, the slicing of 3D models for printing is almost the same as the art of making CNC code. – Trish Feb 1 at 23:53