Adaptive Bed Mesh

ABM Settings in Orca Slicer for Different Firmwares

In Orca Slicer, you can easily set up and control Adaptive Bed Mesh (ABM) for different 3D printer firmwares such as Klipper, RepRapFirmware (RRF), and Marlin. These settings help you manage the bed probing process precisely, ensuring that your print starts on a perfectly leveled surface.

To access these options, go to Printer Settings and open the Basic Information tab. Here, you will find all available Bed Mesh Settings for your printer. Orca Slicer allows you to integrate and adjust these configurations without needing any external software.

Adaptive Bed Mesh Illustration
Adaptive Bed Mesh Settings

Settings in Orca Slicer

Bed Mesh Min

Bed Mesh Max

Probe Point Distance

Mesh Margin

G-code Variables for Adaptive Bed Mesh Commands

Understanding the G-code variables used for ABM will help you fine-tune your printer’s bed leveling performance.

  • bed_mesh_probe_count: Defines the number of probe points in the X and Y directions. It’s calculated based on the distance between probe points and the overall size of the mesh area.
  • adaptive_bed_mesh_min: Represents the starting coordinate of the probing area and defines the minimum X and Y positions of the mesh.
  • adaptive_bed_mesh_max: Defines the ending coordinate of the probing area, setting the maximum X and Y limits of the adaptive bed mesh.

To access these options, go to Printer Settings and open the Basic Information tab. Here, you will find all available Bed Mesh Settings for your printer. Orca Slicer allows you to integrate and adjust these configurations without needing any external software.

Algorithm for Adaptive Bed Mesh Interpolation

For Klipper firmware users, missing points or delays during probing are handled through adaptive bed mesh interpolation.

  • If the probe count is less than 4, the algorithm used is Lagrange, which estimates missing points mathematically.
  • When all probe points are normal, the system automatically switches to the Bicubic algorithm for smoother and more accurate surface mapping.

By configuring these ABM settings in Orca Slicer, you ensure your printer probes only the necessary area with precise accuracy, leading to better first-layer adhesion, smoother prints, and faster calibration across all supported firmware types.

Examples of ABM Settings in Orca Slicer for Klipper, Marlin and RRF

Marlin:

; Marlin don't support specify the probe count yet, so we only specify the probe area
G29 L{adaptive_bed_mesh_min[0]} R{adaptive_bed_mesh_max[0]} F{adaptive_bed_mesh_min[1]} B{adaptive_bed_mesh_max[1]} T V4

Klipper:

; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally
; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic
BED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0

RRF:

M557 X{adaptive_bed_mesh_min[0]}:{adaptive_bed_mesh_max[0]} Y{adaptive_bed_mesh_min[1]}:{adaptive_bed_mesh_max[1]} P{bed_mesh_probe_count[0]}:{bed_mesh_probe_count[1]}

Machine G code