Cartesian bed leveling - kind of confused (G32 != G32?)
garyd9 last edited by
I've read and re-read the wiki's, and I think I might have confused myself by reading too much…
I have a cartesian printer with 3 bed leveling screws. This weekend, I'll be installing a bltouch. What I'd like to be able to do is use the "manual bed levelling assistant" (https://www.duet3d.com/wiki/Using_the_manual_bed_levelling_assistant) to get the bed level, and then "mesh bed compensation" (https://www.duet3d.com/wiki/Using_mesh_bed_compensation) to compensate for any bowing on my X axis rod. My intended workflow would be to run G32 followed by G29 (and always ensure that G29 runs after G32!)
My confusion stems from the fact that the page for the manual leveling assistant states that G32 is used to spawn the leveling assistant. However, the page for the mesh compensation states "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."
Ironically, the page for mesh compensation also states "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" which is exactly why I'd want to use G32!
What I'm hoping is that the prohibition against using G32 in conjunction with G29 on a cartesian does NOT apply when G32 is used and M671 is set for the manual leveling assistant (and only applies when G32 is used for the default transformation matrix mode.) However, I haven't found anything that explicitly states that.
Also… assuming I can use mesh bed compensation, do I need to explicitly call "G29 S1" in my slicer's startup script, or does the firmware automagically use that information?
You are right, you can use the manual bed levelling assistant (which uses M671 and G32) followed by G29 mesh bed compensation.
To use mesh bed compensation, you must either run G29 S0 (or just G29) to probe the bed, or G29 S1 to load an existing height map. You can run G29 S1 in your slicer start GCode, or even near the end of config.g.