3D Printing Software

3D Printing Software

  • prepares an existing model for the machine
    • slices the model for Fused Deposition Modeling (FDM) using Gcode
  • sends machine code (Gcode) to the 3d printing machine(s) via USB or network
Ultimaker Cura 4.4 Screenshot

A selection of slicers (2020):

  • Ultimaker Cura ★★★★☆ (GUI, Open Source): reliable, fast slicing, complex GUI, supports STL, 3MF (no AMF), manual multi-material, cloud printing only via Octoprint or Ultimaker printers
  • PrusaSlicer ★★★☆☆ (GUI, Open Source): reasonable fast, modern GUI, supports STL, AMF and 3MF, automatic multi-material via AMF, no cloud printing
  • Slic3r ★★☆☆☆ (GUI, Open Source): slow, outdated GUI
  • Repetier-Host ★★☆☆☆ (GUI, Open Source): outdated GUI, multiple slicers support (Cura Legacy, Slic3r, Slic3r PE)
  • Pronterface/Printrun ★★☆☆☆ (GUI, Open Source): outdated GUI, uses Slic3r
  • IdeaMaker (GUI, Closed Source): modern/responsive GUI
  • KISSlicer (GUI, Free & Non-Free/Paid): lightweight UI, no AMF, no 3MF
  • Simplify3D (GUI, Non-Free/Paid): intuitive GUI

and lesser known slicers:

  • Mandoline Py (linking my fork), open-source compact Python-based slicer, STL to G-code
  • IceSL, feature-rich but closed source (academic environment)
    • IceSL-forge: modeling with Lua-based scripting language that allows to describe boolean combinations of shapes such as triangle meshes, voxels, implicit surfaces, shaders
    • IceSL-forge: slices STL or “geometry script” as composed with IceSL-forge

Print3r: Command Line 3D Printing

I used Ultimaker Cura and other slicers with graphical user interfaces (GUI) but I realized how slow I am and how limited it was, so I began to code an additional layer of software called Print3r:

  • strict command line usage, utilizing command line interface with history
  • log all successful printings in a JSON file for statistics
  • support multiple slicers:
    • Slic3r, Slic3r-PE, PrusaSlicer
    • Cura 3, 4 and Cura Legacy
  • making common slicing settings slicer independent
  • preview Gcode with a graphical previewer
  • support of STL, OBJ, AMF, 3MF, 3MJ formats slicer independent
  • support of direct model printing: OpenSCAD (.scad) and ScriptCAD (.sccad)
  • built-in networked (cloud) 3D printing with existing ser2net and socat UNIX tools, to route data via network meant for USB serial interface
    • multiple printhubs (any small scale Linux computer)
    • each printhub having multiple USB connected 3D printers
% print3r --printer=ashtar-k-1 --scad print 'cube(20)'
% print3r --device=tcp:printhub:0 --printer=ashtar-k-2 print cube.scad
% print3r --device=/dev/ttyUSB2 --printer=ashtar-c-1 print cube.stl

See the dedicated Print3r page on this site with more details.