CAM Toolchains

From RepRap
Revision as of 14:19, 29 October 2013 by Macon (talk | contribs) (Put Slicer/Driver/Firmware in order, and added descriptions under each heading.)
Jump to: navigation, search
Java development

THIS page is an extremely rough draft. You can help us improve it. (Someday this page will document many of the known-working systems. A few known-working systems are already documented at RepRap Options).

Alternative Build Documentation Build Documentation


You might also want to look at Builders/Alternative host software. Perhaps some or all of that page should be merged into this page. (Discuss)
You might also want to look at Host software Variations . Perhaps some or all of that page should be merged into this page. (Discuss)
This page has been flagged as containing duplicate material that Firmware/Alternative also attempts to cover.
These pages should be merged such that both pages do not attempt to cover the duplicate topics.

Overview

The software used for RepRap can be divided into two categories: CAD (Computer Aided Design) and CAM (Computer Aided Manufacturing). Once you have created or downloaded a CAD file (in .stl file format), you will use some combination of CAM software to print it. A complete RepRap CAM toolchain consists of all the software elements needed to create printed 3d models from CAD models to firmware. To help visualize this for new users, consider the flow chart below:

CAM toolchain

A hypothetical software toolchain process for a new design would be:

  1. Design a new 3D model in a CAD package (ex: OpenSCAD, FreeCAD, ProEngineer, SolidWorks)
  2. Export the design's geometry to a .stl file
  3. Generate motion paths & extruder commands in GCODE format by means of a "slicing" program (ex: skeinforge, repsnapper, SFACT)
  4. Use a host software package to communicate the GCODE to the printer (ex: printrun, repsnapper, replicatorG, Repetier-Host)
  5. The firmware installed on your printer determines how the printer controller reacts to the GCODE you send it. (ex. Sprinter, Teacup, Marlin, or your very own!)


The lists below contain various toolchain components available and provides a comparison of their features, compatible components and how to get them.

It should be noted that a comparison of CAD modeling programs is outside of the scope of this article. CAM toolchains are generally CAD program agnostic because they can accept standard STL models as input which almost all CAD programs can export directly or through plugins. See Useful Software Packages for a list of various CAD related software


GCode, Etc. Compilers

A G-code sender (more generally called a compiler or slicer utility) converts 3D CAD model (in the form of an .stl file) into a toolpath (RepRap uses G-code as the standard format for toolpath information).

Compiler Author(s) Compatible firmware features STL input? Multiple STL input? Step-NC input? RFO input? GCode output? Step-NC output? RFO output? Compilation Speed Documentation Download
Reprap host software RepRap.org 5D true true false true true false true average install guide, user manual dev
RepSnapper Kulitorum et al. 5D, 3D true true false true false fast see table above see table above
SkeinForge Enrique 5D, 3D true false false true false false average manual latest builds
Netfabb Engine Netfabb true very fast latest release
SuperSkein MaskedRetriever true true fast src, downloads
Slic3r alexj 5D, 3D true false false false true false false fast manual latest builds
Cura daid 5D true true false false true false false fast (manual is offline right now) releases

RepRap Drivers

A RepRap Driver (also called a controller or G-code sender) is the program which sends G-code commands to the firmware installed on the printer. The driver serves as the user interface for the printer.

Driver Author(s) Compatible firmware(s) Manual movement? Manual extruder control? Manual stepper disable? Manual heated build platform control? Live GCode terminal? SD card upload? GCode input? Step-NC input? Integrated GCode compiler? Documentation Download
EMCRepRap EMC and RepRap.org EMC true false false wiki page wiki page
RepRap Host Software RepRap.org FiveD, Teacup true true false true false true false true install guide, user manual dev
RepSnapper Kulitorum et al. FiveD, 3D GCode Interpreter true true true

use a Custom Button

true

use a Custom Button

true true false true manual windows, src
ReplicatorG RRRF Makerbot, 5D true true true true false true true false true install guide, user manual stable
send.py (bundled with SkeinForge) Brendan Erwin and John Gilmore FiveD, 3D GCode Interpreter false false false false false false true false false user manual builds
Printrun AKA Pronterface Kliment Modern RepRap true true true true true true true false Github
GCode-utils Ralith  ? true true true false false Website src, linux binaries
Repetier-Host repetier Modern RepRap, extra features with Repetier-Firmware true true true true true true true false true User manual Windows Linux Mac OS X
RebRep RebRep Modern RepRap true true false false true false true false false Docs Windows Linux
OctoPrint foosel Modern RepRap true true true true true false true false Website Github
GCode Simulator & Printer mdietz Modern RepRap true (Android Version) true (Android Version) true (Android Version) true (Android Version) true false false false false Website PC Version Android Github


CNCGcodeController pknoe3lh Modern RepRap true

for complex Milling

false false false true false true false

but Gcode used for Milling, PCB, ..

true

(Postprocessor for Transforming, Autoleveling ....)

link link

Note: Modern RepRap firmwares are all firmwares which do acceleration on the controller, like Sprinter, Marlin, Teacup, Repetier, Smoothie, ...

Note: some drivers such as the RepRap Host Software are listed here and under GCode compilers as they serve both functions however for comparison purposes their features have been split into the relevant tables.

Firmware

Firmware is installed on printer itself. It controls the motors and heating elements, and monitors the thermistors and endstops. Here is a brief list of active firmware for RepRaps:

For more details, see List of Firmware

Working Configurations

There are a number of working configurations for RepRap. Please do yours up in a new wiki page, and then add the text

[[Category:Working Configuration]]

to that page to add it to the existing list.

Related