New Calibration and Leveling Scripts for MakerBot Replicator

Overview

These are updates to the MakerBot supplied calibration and leveling scripts that fix some problems and are safer and more acurate.

If you are having problems getting your prints centered on the build platform or having problems setting the level that the z-axis starts at then these should help. Even if you are not having any problems, you should consider using these updated scripts because they are more accurate and won't gouge your build plate.

Note that I only have a single extruder Replicator, but for dual extruders you should be able to run these same scripts and just center to the midpoint between the two nozzles.

Download

Replicator-calibration-V2.zip - Contains updated calibration and leveling scripts.

Quick Start

  1.  Download the above ZIP file and copy the two scripts into your /ReplicatorG/replicatorg-00xx/scripts/calibration/ directory. The updated files end with V2, so the old versions are not overwritten.
  2. From the ReplicatorG software menu, choose file->scripts->calibration->The Replicator calibration V2 to calibrate your machine. Follow the instructions.
  3. Next choose file->scripts->calibration->The Replicator Plate Leveling V2 to level you build plate. Follow the instructions.

Now your prints should finally be centered and flush.

What's different?

Original Script Updated V2 Script
1. Specifically asks you to move the build plate to zero the Z-axis, but does not end up saving this value - it just throws it away so you can never change your z-offset with the script no matter what you do! Arhg! Actually saves it in the machine so the next build you do will use it.
2. Homes the z-axis at 1000mm/m which is faster than the homing rate of 100mm/m that the start.gcode at the beginning of each build uses. This faster rate means that the script will overshoot the little limit switch- on my machine the difference is an average of 0.035mm.  Homes the z-axis exactly the same way that the start.gcode does, so it should be accurate.
3. Homes the x and y axis right after you set the height on the z-axis without moving the build plate down. Since the whole reason you are running the calibrate script is because you might not be perfectly level and calibrated, this could possible scrape the nozzle across the plate (it gouged out a deep grove on my machine). Lowers the build platform 10mm to get it out of the way before homing the x and y axis.

Notes on How Calibration Works

 The whole build process is basically just a list of commands (G-Code) to either move the nozzle to someplace, or turn the extruder on or off.

The commands to tell the machine to move someplace specify the location as a three dimensional coordinate - that is, three numbers representing the location on X, Y, and Z axis.

The location (0,0,0) in the G-Code should be exactly in the center of the surface of the build plate.

The MakerBots use stepper motors so they really have no idea where they are - you just tell them how many steps to move one way or the other. In order to be able to get some idea of where the nozzle actually is inside the machine when it first starts, it does something called homing where it just tells all the motors to keep going all the way until the nozzle hits some little switches at the end of each of the axis. Once all these switches are clicked, it knows that the nozzle is all the way in the top, right corner of the machine. This is the only absolute position that the machine can know.

But just knowing where the top right corner is is not enough because all the G-Code is referenced from the center top of the build platform. The distance from the top right corner to the center of the build plate is different on every machine just because of manufacturing tolerances, so you can't just hard code in something like "the gcode center is 7.5mm down and 4mm out from where you hit the limit switches". Instead, you need to figure it out empirically and then have a way of remembering the relationship between the location of the limit switches and the 0,0,0 location.

axis description

The way the replicator handles this is to store three offset values in non-volatile memory in the machine. The offset values represent how far the nozzle has to move (in mm) to get from the homing position by the limit switches to the 0,0,0 location. Seen another (simpler) way, the offset values are actually the coordinates of the limit switches if you declare 0,0,0 to be the center of the build surface

...more to come when my MakerBot is working again!

 

Updates

6/23/2012 - First published.

 

Support

For support, please email me at...

email address image

###