Skip to content
Ch 13 › Part J — Bed mesh39 / 54

Step 13.39 — BED_MESH_CALIBRATE

Step 39 of 54 · Chapter 13 — Initial startup

(no image — see text)

Parts: none.

Do: Still hot and still levelled: G28, QUAD_GANTRY_LEVEL, G28, then BED_MESH_CALIBRATE. 49 probe points takes a few minutes.

Send: BED_MESH_CALIBRATE
      ... 49 probes ...
Recv: // Mesh Bed Leveling Complete
Recv: // Bed Mesh state has been saved to profile [default]
Recv: // for the current session.  The SAVE_CONFIG command will
Recv: // update the printer config file and restart the printer.
Send: SAVE_CONFIG

Check

BED_MESH_OUTPUT shows the whole plate inside roughly ±0.10 mm at 100 °C.

What you're looking at

BED_MESH_CALIBRATE probes a grid across the plate and stores the height at each point, so Klipper can correct Z continuously as the nozzle travels. It has to be taken hot and after levelling, because both the plate and the gantry change shape with temperature.

Caution

A corner 0.3 mm out of family points at a bed screw torqued cold in Ch 03, not at a bad plate. Mesh after QGL, always, and re-mesh whenever you change the bed or the plate.

Tip

this mesh is a hot mesh at 100 °C. It is not valid for a 60 °C PLA bed — take a second profile later if you print cold materials.

Good stopping point · ~15 min since the last one

[bed_mesh] confirmed against Ch 12 and a full mesh probed and saved with no probe point out of range. Machine idle, heaters off, SET_IDLE_TIMEOUT TIMEOUT=1800 sent to put the timeout back.

Source: Voron startup wizard § Bed leveling · Klipper docs § BED_MESH_CALIBRATE · Klipper docs § Bed Mesh