Skip to main content
WARNING! From February 2022, these pages are no longer maintained.
Please see the current Duet3D documentation at https://docs.duet3d.com/
Help

Revision to Using mesh bed compensation

David Crocker

-[title|Using mesh bed compensation]
+[title|Mesh bed compensation]
[toc]
-Mesh bed compensation allows the printer adjust the nozzle height during printing to compensate for an uneven bed.
+Mesh bed compensation allows the printer adjust the nozzle height during printing to compensate for an uneven bed or for sag in the gantry..
-'''Note for cartesian and coreXY printers this is recommended to be used instead of bed levelling (G32). For Delta printers G32 is delta calibration and should be run before G29.'''
+Mesh bed compensation works like this:
+
+* You define a grid using the M557 command. Normally you do this in config.g.
+* You run G29 S0 (or just G29) to probe the bed at the mesh points. If probing is successful, the bed height map is saved in a file on the SD card and is or can be displayed in Duet Web Control.
+* You can load a previously-generated height map using command G29 S1.
+* You can stop using a height map by sending command G29 S2.
== Before you enable mesh bed compensation ==
* You must be running RepRapFirmware 1.17 or later. Viewing the height map in the web interface requires Duet Web Control 1.14 or later.
-* If your printer is Cartesian or CoreXY, get the bed as level as you can by mechanical adjustment. Bed compensation increases wear on the Z axis moving parts, so you don't want to be doing more of it than necessary.
+* If your printer is Cartesian or CoreXY, get the bed as level as you can by manual or automatic mechanical adjustment. See [[Bed levelling using multiple independent Z motors]] and [[Using the manual bed levelling assistant]]. Bed compensation increases wear on the Z axis moving parts, so you don't want to be doing more of it than necessary.
* If your printer is a Delta, calibrate it first (see [[Calibrating a delta printer]]). Bed compensation is not a good substitute for accurate calibration.
-* Make sure that your Z probe is correctly configured and working. This includes the trigger height and the X and Y offsets of the probe relative to the nozzle. Refer to the M558 and G31 commands in the [[GCode]]s page.
-* On a Cartesian printer, you can use either mesh levelling (G29) or G30/G32 probing, not both. On a Cartesian printer mesh levelling is recommended but bed probing is still supported for backward compatibility with older firmware configurations.
+* If you are using a Z probe, make sure it is correctly configured and working. This includes the trigger height and the X and Y offsets of the probe relative to the nozzle. Refer to the M558 and G31 commands in the [[GCode]]s page.
+* If you don't have a Z probe, set type P0 in your M558 command.
== Checking the trigger height ==
If you get jerky movements when the head moves across the bed at speed with mesh bed levelling enabled, but not with it disabled, this indicates that your Z jerk setting is too low for the travel speed you are using and the amount of compensation needed. Increase the Z parameter in the M566 command in config.g, or use a lower travel speed.
-If the heightmap.csv file contains a column of zeros at the start or the end, this indicates that the corresponding X coordinate was not reachable by the probe, taking account of the bed size specified in the M665 command on a delta printer or the M208 commands for other printers, and the probe offset specified by the X and Y parameters in the G31 command.; Similarly, if there is a row of zeros then the corresponding Y coordinate was not reachable.
+If the heightmap.csv file contains a column of zeros at the start or the end, this indicates that the corresponding X coordinate was not reachable by the probe, taking account of the bed size specified in the M665 command on a delta printer or the M208 commands for other printers, and the probe offset specified by the X and Y parameters in the G31 command. Similarly, if there is a row of zeros then the corresponding Y coordinate was not reachable.

To undo the changes made by this version, click 'Revert Changes.' This will automatically restore the previous version of this guide.

Revert Changes