Improved Calibration Cube

An improved version of a calibration cube.
0
10
0
96
updated August 23, 2023

Description

PDF
What is this?

It's a calibration cube.  It can be used to make sure that your printer is making things the absolute correct size for those times when you absolutely need precission.

Why should I use this one?

There's a “traditional” xyz calibration cube available which I find deficient for a couple of reasons:

  1. The traditional cube's faces are labeled incorrectly, so unless you rotate the model before you print it or pay careful attention, you will end up measuring, and making adjustments to the wrong axes.  There's a number of different ways of reading the labels on the traditional cube, all of which give you a wrong answer in one way or the other.  This model, clears things up by clearly marking the axes on one of each of the 3 planes.
  2. The traditional cube places the labels in the middle of the faces.  This means that you can't use calipers in the middle of the faces, which is where you will get the most precise measurement.  This model improves on this by labeling the axes on the edges so that the middles of the faces are all nice flat surfaces.
How do I use this?

The goal here is to dial in your settings to make this cube print 20mm across on each side.  To do this, you will need to change the printer's “steps per mm” values.  These values tell your printer how many microscopic steps it must turn each motor by in order to move the extruder by 1 mm.  To do this, you'll need to send commands directly to your printer.  You can do this in a number of ways, if you don't have one yet, a good place to start is with the gcode-sender Chrome extension.  Here I will assume you are using a Prusa Mk3.  If you are not, the commands you must send may vary, though many printers will use the same commands.  The first thing to do is to ask your printer what the values already are.  Send the printer the M503 command.

> M503
Steps per unit:
 M92 X100.00 Y100.00 Z400.00 E161.30
...

Here the printer is saying that in order to move the extruder to the right by 1mm, it will rotate the x motor by 100 steps.  In order to move the extruder backwards 1mm (or rather, the build plate forwards 1mm) it will turn the y motor by 100 steps.  In order to move the extruder up 1mm, it will turn the z motors 400 steps.  Finally, in order to move 1mm of filament into the hot end, it will turn the extruder motor by 161.3 steps.

Next, print this calibration cube.  Measure across the cube using your most precise measuring device.  I recommend at least some calipers, better yet a micrometer.  Measure each axis this way and write down the dimensions.  To calculate your new steps per mm values, you need to calculate this:

new steps per mm = old steps per mm × 20.0 ÷ measured size of cube

For example, lets say you measured 19.86mm on the x axis.  You would need to calculate this:

new x steps per mm

= old x steps per mm × 20.0 ÷ measured x size of cube

= 100.0 × 20.0 ÷ 19.86

= 100.7049345418

New you need to store your new values back to the printer.  The M92 command is used for this.  After this, you need to send the M500 command to ask the printer to store the settings. Lets asume you need to set steps per mm to these values: x = 100.705; y = 99.830; z = 401.250.

> M92 X100.705 Y99.83 Z401.25
> M500
Settings Stored

You should then send the M503 command again to double check that you've set the values correctly:

> M503
Steps per unit:
 M92 X100.71 Y99.83 Z401.25 E161.30
...

You can then print a second cube and validate that your printer is now printing things at the correct scale.

Tags



Model origin

The author marked this model as their own original creation.

License