I got tired of using calibration cubes that didn't have sides labeled. I kept misorienting the X & Y axis sides. I also wanted a 25mm cube, a little bigger than most out there. There's also a 20mm cube in the files in case you prefer to print a smaller and faster calibrating cube. So here's my simple contribution to calibrating your 3D printer :)
To calibrate your stepper motors you will need a terminal where you can send gcode commands directly to the printer. Repetier, Octoprint, etc. have a way to do this and are highly recommended. In Octoprint, I go to the terminal tab and first check 'suppress temperature messages' so the display is more stable. Then I follow this sequence:
- Get your existing settings by entering M503 and hitting 'Send' (or enter).
- Look for the line that starts with M92, these are your current steps per axis. It may look like:
M92 X100.00 Y100.00 Z400.00 E100.00
- Using a caliper, take several measurements in the direction indicated by the arrows on each axis of the cube you printed. Get a general average of those measurements, I just work it out in my head, it doesn't have to be 'send a rocket to Mars' precise.
- take the axis value from the M92 line and multiply it by the cube dimension you expected (25 for the 25mm cube, 20 for the 20mm cube) and then divide that by the actual dimension you got for that axis when you printed the cube.
example: I got 25.22 instead of 25 for my y axis, I take 100.00*25/25.22 = 99.13
Do this for each axis.
- Use the M92 command to update your steps. Enter M92 X(your final value), etc.
example: M92 Y99.13
I enter the 3 axis values separately on 3 M92 commands, but you could do more than one axis at a time also, like M92 X99.76 Z395.88.
- Enter M503 again to make sure the values are as you expect.
- Enter M500 to save the new values.
- Enter M501 to reload from the stored values, M503 to check one last time that they still match your new steps.
And Robert's your father's brother!