This is a modified version of Slic3r which supports the integration and routing of electronic components and wires into 3D printable objects. Your printer should be equipped with an additional extruder for conductive paste to generate wires and (optional) a vacuum gripper / cameras for automatic component placing. OctoPNP can be used to control the interactive pick'n place system and for optical calibration.
The electronics extension currently supports the XML-based Eagle .sch format to import electronic schematics. Importing a schematic will add all components to the list of unplaced parts and generate the connection graph. Use left-doubleclick on parts, rubberbands and waypoints for placing and routing, right-doubleclick to remove things.
The position of all placed components and waypoints can be ex-/imported to a .3de file. This file must be stored in the same location as the .sch file since it referes to the original schematic for part geometries, connections and unplaced parts.
print settings
->Multiple extruders
->Conductive wire extruder
to select the extruder with conductive materialprint settings
->Speed
->Conductive wires
to set appropriate extrusion speed for conductive material (typically much lower than plastic extrusion speed)print settings
->3D Electronics
to configure channel widths and offsets
As a starting point, the profile for our developer machine can be found under https://github.com/platsch/Slic3r-Electronics-Config
Slic3r itself is mainly a toolpath generator for 3D printers: it reads 3D models (STL, OBJ, AMF) and it converts them into G-code instructions for 3D printers.
for further information on Slic3r, installation and build instructions please refer to the upstream project https://github.com/alexrj/Slic3r or the Slic3r project homepage
If you want to compile the source yourself follow the instructions on one of these wiki pages:
all electronics branches additionally require the libxml2-dev and libxml-perl packages.
Build.PL
: this script installs dependencies intolocal-lib/
, compiles the C++ part and runs testslib/
: the Perl codepackage/
: the scripts used for packaging the executablesslic3r.pl
: the main executable script, launching the GUI and providing the CLIsrc/
: the C++ source of theslic3r
executable the and CMake definition file for compiling it (note that this C++slic3r
executable can do many things but can't generate G-code yet because the porting isn't finished yet - the main executable isslic3r.pl
)t/
: the test suiteutils/
: various useful scriptsxs/src/libslic3r/
: C++ sources for libslic3rxs/src/slic3r/
: C++ sources for the Slic3r GUI applicationxs/t/
: test suite for libslic3rxs/xsp/
: bindings for calling libslic3r from Perl (XS)
The main author of Slic3r is Alessandro Ranellucci (@alexrj, Sound in IRC, @alranel on Twitter), who started the project in 2011 and still leads development.
Joseph Lenox (@lordofhyphens, Loh in IRC) is the current co-maintainer.