Skip to content

Cart

Your cart is empty

Article: Advanced Mesh Bed Levelling in Klipper

Advanced Mesh Bed Levelling in Klipper - OzFDM
Articles

Advanced Mesh Bed Levelling in Klipper

Danielle A.

Perfect First Layers on Imperfect Beds

Even high quality print beds are not perfectly flat. A warped, bowed, or twisted bed surface introduces systematic first layer height variation. 

The nozzle is too close to the bed in some areas and too far in others, producing inconsistent adhesion and first layer quality across large prints. Klipper's bed mesh compensation addresses these issues by probing the bed at multiple points, building a mathematical model of the actual surface, and compensating the Z axis in real time during printing to follow that surface. The result is a consistently perfect first layer regardless of bed geometry.

Probe Grid Density and Strategy

The simplest mesh is a 3×3 grid, 9 probe points distributed evenly across the bed. This catches major bow and warp but misses local variations (bumps and divots) smaller than the probe spacing. For a standard 235×235mm bed with 3×3 probing, the probe spacing is approximately 80mm, any surface variation at a smaller scale goes uncompensated. Increasing to 5×5 (25 points, ~60mm spacing) catches finer detail. 7×7 (49 points, ~40mm spacing) is thorough. Beyond this point, diminishing returns set in and probe time increases substantially. For most beds, 5×5 is the practical sweet spot.

Adaptive meshing is available in recent Klipper versions via the ADAPTIVE_MESH feature; it only probes the area of the bed that will actually be used for the current print. A small model in the centre of a large bed only needs a 3×3 mesh of the central area; a bed spanning print needs the full dense mesh. This dramatically reduces probe time for small prints while still providing full compensation for large prints. Enable it in your PRINT_START macro with BED_MESH_CALIBRATE ADAPTIVE=1.

Interpolation Methods

Once the probe points are measured, Klipper uses interpolation to estimate the surface height between the probe points. Bilinear interpolation (the default) fits a flat plane between each set of four surrounding probe points; it is fast and reliable but can produce visible transitions at probe grid boundaries for severely warped beds. Bicubic interpolation fits smooth curves between points, producing a more physically realistic surface model that eliminates the step artefacts visible with bilinear interpolation on warped beds. Enable bicubic interpolation in the [bed_mesh] section by setting the algorithm to bicubic. The increase in computation time is negligible on modern Raspberry Pis.

Saving and Loading Meshes

For printers with stable, reproducible beds (consistent across thermal cycles), saving and loading a mesh rather than reprobing before every print saves 2–5 minutes of setup time. SAVE_CONFIG after BED_MESH_CALIBRATE saves the current mesh as your default. In PRINT_START, use BED_MESH_PROFILE LOAD=default to apply the saved mesh instead of reprobing. Add logic to periodically reprobe (after a set number of prints or when you notice first-layer variation) to keep the saved mesh current. Integrate this feature with Klipper macros for a fully automated, zero-setup-time print start routine. Use a good quality PEI surface that remains stable across thermal cycles, a quality bed surface is the foundation that makes advanced mesh compensation worthwhile.

Leave a comment

This site is protected by hCaptcha and the hCaptcha Privacy Policy and Terms of Service apply.

All comments are moderated before being published.

Read more

Print in Place Designs: Hinges, Joints, and Mechanisms - OzFDM
Articles

Print in Place Designs: Hinges, Joints, and Mechanisms

Print in place 3D printing allows fully assembled moving mechanisms to emerge from the printer in a single print. Learn how hinges, articulated dragons, chains, and mechanical joints rely on carefu...

Read more
PVA Soluble Supports: Clean Overhangs Every Time - OzFDM
Articles

PVA Soluble Supports: Clean Overhangs Every Time

PVA is a water soluble support material that enables exceptionally clean supported surfaces in FDM printing. Learn how multi material setups use PVA with PLA to produce complex geometries, internal...

Read more