top of page


Find all of Authentise's press releases, dev blogs and additive manufacturing thought pieces right here.

X Y Z and Extrusion Calibration

Today I’ll be talking about calibrating an Ultimaker Original RepRap printer. My printer has Marlin firmware specifically but these tips should help improve printing quality for any firmware, especially if you can make adjustments to it.

There are more complex methods and there are faster methods. This method is designed to be very simple and easy to follow for everyone.

What you will need

  • A 3D printer

  • A set of calipers or any kind of length measuring device

Problems with bad Calibration

  • Bad Extrusion Calibration: You can tell by a few ways that your printer extrusion isn’t calibrated well, like when the top layer not being solid or being protruded, for example. You want the top layer to be flush with the rest of the print and smooth.

  • Bad X, Y, Z Calibration: This is pretty straightforward, specially if it's way off. If you print a cube and it ends up looking like a rectangle, or taller than it should be, you have to fix your XYZ calibration. Or maybe your prints require many pieces fitting together or they are screws, and they are not fitting smoothly, XYZ calibration is very likely to solve your problem too.

Choosing your Test Model

To start off you need to select a calibration model. I like to use a 10mm cube. You can use a bigger cube or a smaller cube, but I think 10mm yields accurate enough results and it’s a good balance of print speed and accuracy. You can grab a 10mm model here

Layer Height

It is much easier for the printer to print the model precisely on a high layer height. I like starting off with calibrating on a 0.3mm layer height and then once I’ve got that calibrated I move on to lower layer heights, which require the steps per millimeter to be a little bit more precise. If you want you can start lower, which would in turn calibrate for high layer heights.

Calibration Info

In this style of calibration I take the number that is currently on my firmware. It will look something like this if you are using marlin: X87.4 Y87.4 Z100 E1040.

These numbers show the settings for steps per mm, which relate to the teeth on your belts as well as the amount of notches on your pullies. More specifically, it sets how far the pulley turns to hit the teeth, which then moves the belts. Once you’ve done your first print you can then figure out how much you are off.

Calibration Steps

Once you have something printed or marked you can now start measuring and adjusting the steps per mm on the firmware. Now I tend to increase or decrease this by around 10% of the original number until I start getting closer to the number I want. Since we are using a 10x10x10mm cube and also retracting by 10mm when doing the extrusion, we want to be as close to 10mm as possible.

First things first, you will measure the results of your first print or how much was retracted. After you have these measurements depending on how far off they are, you want to increase or decrease the steps per mm, setting to try and get closer to 10mm for this example. What you are really shooting for here is within .1mm. So if you are using a 10x10x10mm cube you want to shoot for within 9.9mm and 10.1mm Obviously going closer will yield more accurate prints.

Extrusion Calibration

I recommend doing this before the X,Y and Z calibrations because if you do the X,Y and Z calibrations first, it can skew the numbers making them not as accurate anymore.

To begin you want to go to your extruder and mark where the filament is, like you see on the picture below:

In this example (10mm cube) I tell the printer to retract 10mm and then I mark at the same spot I did previously. After that you will measure the distance and see if the printer was accurate.

So 13.43mm that is no good. I want that to be closer to 10mm like I told the printer to.

So now you will adjust your steps per mm on the extruder and slowly decrease that number until closer to 10mm. When it's closer to 10mm, it's time to begin the X and Y or the Z calibration, that can be done in any order, but I will begin with X and Y.

X, Y and Z calibration

Because you’ll be using measuring devices that may require you to rotate the cube, it’s important that to keep track of which axis you are measuring. Before pulling your cube off of the build platform, write down which axis is which.

One way you can figure out which is which is by telling the printer to move along the selected axis and writing down on the plane that is associated with its movement. This way you know which parameter to change after making your measurements.

Now we got our base results. Let's start measuring:

Here I’m measuring my Z axis. Because it’s a 10mm cube,I would expect every measurement to come out to exactly 10mm. In the picture on the left I’m measuring the X axis which is showing 9.29 mm - too small. I’ll correct that by adjusting my steps per millimeter number up. More steps equals more distance and will increase the size of this side, getting closer to accurate.

On the right I have the opposite problem - 10.2mm to a side, a bit high, so I will adjust the steps per millimeter down. After you're done, you have to print the exact same cube again, and hopefully the results will be closer to wha you need.

Now that the second cube is done, it looks like my X is now too high but my Y is looking good.

I have to go back and adjust the steps per mm on the X axis. I do not need to adjust the Y again, because it is calibrated really well. So now let's print one more time and the X should be closer.

Fantastic! The printer is calibrated on the X and Y axis.

Now let's check the Z. Looks like its a little low. Adjusting the Z calibration by a little bit should fix that.

You can use any of the cubes we have printed to do this because they should all have the same height. In this example, at 9.7, again I would like this to be closer to 10mm. So let's increase the Z steps per mm and see if I can get this closer to 10mm.

After adjusting the Z steps per mm I am now only off by .02mm which is really close and I'm likely not to get that much closer.

Finally, after only a few prints, the printer is now calibrated and ready to print any kind of print you need, as expected. This may take a lot more prints as this is just an example on how to calibrate your own printers. It can be a lengthy process, but in the end the results can really improve your printer capabilities.


Hope you find my tips useful. Do you have other tips you would like to share? Tweet to @Authentise. and we will post them here!

1,468 views0 comments

Recent Posts

See All

Arrows => Arrows are a shorthand for function. Old way: users.forEach(function(user) { // do something with the user }); New way: users.forEach(user => { // do something with the user }) Impor

bottom of page