Setting your 3D Printer Z-Probe Offset (Nozzle Height)

Thicker extrusions require more distance from the print bed (Source: Larry Wood via All3DP)

Getting your Z-probe offset right is really important. It tells your printer what the physical difference is between your probe and the print nozzle.

Get it wrong, and you’ll either start printing in midair (bad) or hit the print bed with the nozzle (very bad),

Setting your Z-Probe Offset is easily done using a few Marlin commands and a piece of paper or better yet, a 0.01mm feeler guage. Octoprint or Astroprint to do this semi-remotely. Alternatively, you can use pronterface. Pronterface now called printrun is a free 3D printing host software suite that talks to your printer. 

If, like me, you’re forever modifying your printer, having a straightforward reference guide for this process will come in handy…

  1. Reset your Z-Probe Offset with M851 Z0
  2. Save this to the EEPROM using M500
  3. Set EEPROM values as your Active Parameters using M501
  4. Confirm the value of the Z-Probe Offset using M503
  5. Use G28 to auto-home. This will move up slightly after the Z-Probe is triggered
  6. Use G1 F60 Z0 to move back to Z0
  7. Unlock the soft Z limit to enable movement below Z0 using M211 S0
  8. Heat the nozzle to the temperature you’ll usually print at using M109 S<temp>, for example M109 S190, as the measurements may be different due to the metal expanding
  9. Put a piece of paper underneath the nozzle, and move Z down until the paper can only just be moved
  10. Check the Z position on the printer screen, and subtract another 0.1 from this value to account for the thickness of the paper. This will be your new Z-Probe Offset value
  11. Set the nozzle temperature back to 0 with M104 S0
  12. Set your new Z-Probe Offset using M851 Z<newValue>, for example M851 Z-2.2
  13. Re-enable the soft movement limits using M211 S1
  14. Save the new Z-Probe Offset to your EEPROM using M500
  15. Set EEPROM values as your Active Parameters using M501
  16. Confirm the value of the Z-Probe Offset using M503
  17. Use G28 to auto-home again
  18. Use G1 F60 Z0 to move to the new Z0, which should place the nozzle should be fractionally above the build plate