====== How to run a Bed Mesh ======
{{tag>faq}}
==== Defining the Bed Mesh ====
We have to have the bed mesh parameter's define before running a bed mes. They are stored in [[printer.cfg]]
Example for [[Neptune 4]] and [[Neptune 4 Pro]]:
[bed_mesh]
mesh_min:10,21
mesh_max:210,211
probe_count: 9,9
algorithm:bicubic
bicubic_tension:0.2
mesh_pps: 4, 4
split_delta_z: 0.020
fade_start: 4
fade_end: 12
Full bed meshes aren't useful for production printing because they are stale almost immediately, yet they are useful to evaluate the shape of the bed. Having a large probe matrix, such as the Elegoo "Professional" size bed mesh, isn't going to tell us significantly more about the overall bed shape than a 6x6 or 9x9 mesh in less time. We'll want to be using Adaptive Bed Meshes run at print time for production prints and they'll have a denser mesh for just the object size.
Note: the G29 gocode is a marlin gcode and not an actual gcode in [[Klipper]], it's implemented as a [[macro]]. Klipper instead implements the ''BED_MESH_CALIBRATE'' command. As such consider using G29 instead of the Klipper command as unreliable and unpredictable as its behavior may change.
==== Full Bed Mesh ====
Run the following in the [[console]] to generate a full bed mesh that you can use to evaluate how flat the bed is compared to the bed level.
BED_MESH_CLEAR
BED_MESH_CALIBRATE
==== Adaptive Bed Meshes ====
Use the following in Orca's Printer Machine Start gcode:
BED_MESH_CLEAR
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
Read the Orca docs on [[https://github.com/SoftFever/OrcaSlicer/wiki/adaptive-bed-mesh|Direct Adaptive Bed Mesh Compensation]]