This has been written about several times over the years. Perhaps we'll make this post a sticky...
First,
printer assumes a stock Rostock Max or Orion.
PC means any Windows, Mac or Linux computer.
On the printer, the
RAMBo is the
controller that is basically the computer that runs the printer. It uses an
Arduino processor. The
firmware is similar to the operating system on a computer (e.g. Windows, Mac OS, Linux). These printers run the
Repetier firmware. That's the ONLY software required on the RAMBo. Unless you intend to update the firmware (Repetier) you will not need to use the
Arduino IDE (development environment that runs on the PC) to recompile and upload the Repetier firmware. Compiling and uploading the firmware is a more advanced topic so we'll leave it for another post.
On the PC you basically need two pieces of software. Sometimes these are combined into one so it might seem confusing to newbies. These are:
A
slicer program
A
control program
The slicer takes the model (STL file either downloaded from a place like Thingiverse or one you created using a CAD program) and "slices" it into layers and generates the programming code that "draws" the layer on the printer. This programming code is called
g-code and it's what tells the printer (actually the firmware running on the printer - Repetier running on RAMBo) what to do like set the hot end temperature to 195°C, the bed to 55°C and actually move the nozzle from point to point. There are many g-codes to do things like turn on/off fans, extrude, retract, etc.
The control program connects to the printer (actually, to the firmware running on the printer). It loads the g-code and sends it one line at a time to the printer to print. It also monitors the temperatures to display to the user and provides manual controls to do things like turn on/off fans, change temperatures, speed up or slow down and other things.
There is an alternative to the control program - some firmware has the ability to execute g-code from a local flash card. Repetier does. The LCD display (if installed) connects to the RAMBo and is controlled by the firmware. It has many of the same features as the control program, like changing temperatures, speeding up/slowing down, starting/stopping a print. You can do everything you need directly with the LCD display on the printer and eliminate the need for the control program - although it is usually easier (I think) for newbies to get used to using the control program first.
Now let's circle back and put some names to these...
The common Open Source slicers are Slic3r, Cura, MatterSlice. There is also a free version of KISSlicer. Slic3r and KISSlicer are applications themselves and can be run with their own user interface. This interface DOES NOT allow controlling the printer. You use the slicer to slice your STL model and save it to disk or compact disk to either load into your control program or print from the flash card.
Common Open Source control programs include Cura, MatterControl and Repetier Host (and Prontorface). All of these control programs also allow you to slice your STL model directly from their user interface as a convenience. They also usually allow you to use one of several of the open source slicers. I've lost track over which supports which. This is why it is sometimes confusing to people. Here is a quick over view of some of these:
- Slic3r by itself is ONLY a slicer.
- Cura is both an integrated control program and slicer. The Cura slicer can also be called from some other control programs too.
- MatterControl / MatterSlice is an integrated control program and slicer. But, Matter Control can also call Slic3r and CuraEngine as Gene stated.
- Repetier Host is a control program. It come integrated with Slic3r and Skeinforge for slicing (no one uses Skeinforge any more!)
The control program is what you actually see and use and it is calling the slicer program behind the scenes. A lot of folks don't even realize which slicer is being used. It's good to get into the habit of thinking about these steps separately - slicing and printing/printer control - so you will be clear in your description if you need help.
So there are several software tool chains that look like this:
Case 1 - the most common case
On the computer - an integrated control program with a slicer (typically MatterControl with MatterSlice OR Repetier Host with Slic3r as the most common).
On the printer - Repetier firmware running the g-code program.
Case 2 - separate slicing and controlling
On the computer - using a slicer (KISS or Slic3r) to create the g-code program. Then loading that g-code into a control program like MatterControl or Repetier Host to print.
On the printer - Repetier firmware running the g-code program.
Case 3 - separate slicing and printing from flash card on the printer
On the computer - using a slicer (KISS or Slic3r) to create the g-code program. Then loading that g-code into onto a flash card to print.
On the printer - Repetier firmware with an LCD display and flash card reader to load int he g-code program and run it.
These are the most common cases so I'll leave it at that for this introduction.
A couple of other comments. The commercial Simplify3D product is an integrated slicer and control program. You can slice your models using S3D and save them to disk or flash card to print from another control application or from flash card on the printer. You can also load g-code created by other slicers and use S3D to control the printer.