Thursday, 15 March 2012

Slicing and Hosting Software

Now if your new to 3d printing the terms slicing software and hosting software might a bit weird.
A slicing program takes a 3d model and translates it into G-code. Its like a building designer passing drawings to a engineer so they can make plans.
The host program sends all the gcode to the printer.

Slicing software

At the moment there are 2 (as far as I can tell) biggies; SFACT  -the new SkeinForge and Slic3r.

I've personally only tried Slic3r which works very well.

RichRap has an excellent setup and usage tutorial (link) on his blog. He goes through pretty much every setting as well as showing the difference changing the settings can make.

I've heard very good things would SFACT and its parent SkeinForge however I've resisted the urge to give them a real it as I've heard its a pain in the neck to get up and running.

Here a quick comparison of the interfaces.

Yes that's 4 tabs in Slic3r and over 30 in SFACT.

Hosting Software

Unlike slicing software there are quite a few different hosting applications out there all pretty popular. There's ReplicatorG, PrintRun (pronterface), Repetiter and RedSnapper just to name a few.

So far I've used only PrintRun and Repetiter.


I found Printrun very easy to setup and run. The windows file even has a nice .exe file to run which saves downloading and installing the separate Python packages.

The interface is simple and very straight to the point, ideal for testing and calibration.
So far I've had no issues with PrintRun so I'm reluctant to change it for any other host software until I've got a little more experience under my belt.


From the little I've used Repetiter it feels like a more grown up version of PrintRun. There are more options and a more adult interface (no colour coded axis or nice control pad).
One big advantage Repetiter has is the gcode viewer.
The blue object is a visual view of the gcode the slicing software generated. For the object on screen its over 45000 lines of code which would without Repetiter take a lot of time to troubleshoot.

Like SFACT I do plan on taking the time to learn the interface as options, but for the moment I'm just using Repetiter to double check my gcode.

As I get to know the programs more and use different programs I'll hopefully write mini-reviews or setup guides.

Sunday, 4 March 2012


Before our brand new printer can print anything the electronics needs firmware.

There are numerous different firmwares, each with there own advantages and disadvantages. At the moment there are 2 main contenders when it comes to firmware for RAMPS; Sprinter and Marlin.

Sprinter has been out longer and is a little easier to configure and get up and running, so I'll start with Sprinter.

Step 1. Arduino Software

In order to install the firmware we need to be able to talk to the electronics.
To do this we need to use the Arduino software which can be downloaded here.

Uncompress the download and run the program.
Now the programming is running we need to make sure the settings are correct for the electronics.

The Board option needs to be set to the Arduino chip being used, for RAMPS this is Mega or Mega 2560 (2560 if you using the newer board).
The Serial Port also needs to be correct, as a rule of thumb its the last one of the list.

At this point if you want to quickly test RAMPS copy and paste the code from here into the sketch window then hit upload
All the motors should cycle (turn both directions, one after the other) and the heaters will turn on and off.

Step 2. Configuring Sprinter

Download Sprinter from here and uncompress the file.
Ignore the message in the centre,
simply click either of the links in the red box

In the Sprinter folder there is a file called Configuration.h open it using notepad or a similar program (eg notepad++).

Line 17


Change the number to suit your electronics, in the case of RAMPS 1.4 its 33.
#define MOTHERBOARD 33

Line 26 and 27


Change the number to suit the thermistor your using.

Line 31

float axis_steps_per_unit[] = {80, 80, 3200/1.25,700}; 

If your using 1/8 microstepping stepper drivers half all numbers. If just one of the motors is using 1/8 microstepping just half the relevant number.

Line 51


If your not using a SD attachment you can comment this line out, like so
//#define SDSUPPORT

Line 74

const bool INVERT_Y_DIR = false;

If your using the standard prusa setup with the motor at the front this line needs to be changed otherwise your prints will be mirrored.
const bool INVERT_Y_DIR = true;

Save the file and now its time to upload Sprinter.

In the Arduino software, File -> Open
Select sprinter.pde

Click upload.

Congratulations you've installed Sprinter firmware on your electronics.

Friday, 2 March 2012

Frame and mechanical build - X carriage

Nut traps - page 46

I found it easiest if you get the nuts into the trap then insert the smooth rod (or a section of) then tighten the bolts with the rod keeping the nut from falling out.

Glueing the bushings - page 69

I had found this rather annoying. You need to rest or clamp the X carriage against something when they are drying, otherwise the bushings won't be flush against the bars.
Skip to section 14 (clamping the smooth rods to the top)  then apply the glue, push the 2 parts onto the bushings then tighten the bolts on the underside.
After the glue has set check the bushings jog along the smooth bars, if they don't clamp them back on the top and loosen or tighten the underside bolts.

Z axis threaded rod - page 71

If you don't have the springs for the Z axis you simply need to drop a m8 nut into the top nut trap.
Its very easy to read it as all of step 17 is optional, its not without a nut in the top the x carriage will jump out of align.

X carriage belt - 83

Make sure the belt lines up before fastening them, if its too far away from the smooth rod it will cause the belt to slide off the bearing. This will in turn lead to the belt both rubbing the washer and randomly snagging on the washer.