Prusa i3 MK2 V2 Calibration Bypass

Set live z message

Here’s a quick little fix if you want to set your live z adjust value on the Prusa i3 MK2 without running the V2 Calibration, after performing an XYZ calibration. Doing an XYZ calibration will clear your stored live z value and require you to re-run the V2Calibration.gcode file provided by Prusa Research. If you tune your live z without running that G-code, it won’t take effect and the printer will give you this message every time you switch it on:

Distance between tip of the nozzle and the bed surface has not been set yet. Please follow the manual, chapter First steps, section First layer calibration

If you’d like to get rid of this message and have your live z values save without having to run the V2 Calibration then you can use this instead: enable_z_tuning. Run this G-code file then enter your live z value and you’re all set! It’s a simple G-code file that contains one line: G87.

This is a Prusa-specific code that is included in the beginning of the original V2Calibration.gcode file, along with the mysterious G88G87 is documented as “Enable babystep correction after home”, but G88 is only documented as “Don’t know what it is for, it is in V2Calibration.gcode”. The code in firmware to be executed when the G88 command is received is also blank:

case 88:

It appears that only G87 is needed to save the live z value, and G88 does nothing.

Running this instead of using the included calibration file included by Prusa should only be done if you’re confident with setting your live z with another file. This can be useful if you have a material loaded that requires different temperatures, or you’d just prefer not to run the V2 Calibration. Hope it helps!

Update: A previous version of this post stated that the G88 command was necessary in order to save live z values. After some more testing, this was found to be false.

One thought on “Prusa i3 MK2 V2 Calibration Bypass

  1. Hi Matt,
    My Prusa has been having a lot of problems and I was wondering if your program may allow me to completely bypass the built-in autocalibration altogether (Mesh Bed Leveling in particular).

    This is because, in short, unless my PINDA probe is nearly at the height of the nozzle (at the height where it would collide with a running print), the XYZ calibration fails and the calibration points aren’t found. If the PINDA is very low or lower than the nozzle height, then XYZ calbiration passes and so does Mesh Bed Leveling, but I obviously cannot print.

    If you have the time to read more into my forum post, here it is.–t19777.html


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s