How does Z offset (M851) work with an auto leveling sensor? Does it add the Z offset to the offset of the G29 mesh? or the G29 value replaces the M851?
My printer is an Anet A8 with marlin firmware, I was having issues with the autoleveling sensor and reseted the z offset to 0 and let G29 get the mesh offsets and its working good now.
I was looking through marlin gcode page but couldn“t figure out how G29 affects M851 or viceversa.
My setup with level issues:
> M851 Z0 > G28 > M211 S0 ;turned endstops off and got a paper to find the zoffset > M851 Z-0.59 > M500 > M211 S1
And G29 before printing.
1 Answer
G29 determines the shape of the bed by probing the bed. This will set the shape of the bed with respect to the sensor trigger point. The z-offset is needed to set the offset between the bed itself and the nozzle with respect to the sensor trigger point.
The sequence to determine the offset is:
M851 Z0; // Set the Z offset to zero height G28; // Home Z in the middle of the bed G1 Z0; // This will move the head to zero height; M211 S0; // This will disable the end stops so that you // will be able to proceed lower than Z=0
Now adjust Z height to fit a piece of paper and note the negative Z height (either through the LCD or through an application over USB)
M851 Z-1.23; // Define the Z offset M500; // Store the settings M211 S1; // Enable the end stops again
Please note that -1.23 is a fictive value that should be replaced by your own value.