Basic Information:
Printer Model: Any
MCU / Printerboard: Any
TL;DR: If you run into bed mesh inconsistencies, setting a probe point to every inch/25mm and setting mesh_pps: 0, 0
in [bed_mesh]
configuration seems to fix it. Apparently setting the algorithm to bicubic instead of lagrange is supposed to work better, but I personally didn’t see a difference.
I recently ran into an issue with very inconsistent bed mesh compensation, so I decided to share my solution since the information that set me on the right path to figure out this issue was a deleted user’s reddit comment from like 5 years ago.
Essentially the issue that I ran into was the bed mesh not correctly keeping the nozzle at a consistent height above the build surface. Sometimes the mesh would compensate too much, sometimes not enough. The mesh inconsistencies were so bad that turning the mesh off produced better (but still unsatisfactory) results. I kept playing around with the mesh settings in the configs and looking around for information, until I came across a comment that said that they preferred using the bicubic algorithm at higher probe counts with no mesh points per segment (mesh pps).
Thus began the beginning of my testing of mesh pps. I tested various amounts and essentially came to the conclusion that (at least for my Voron 2.4 and very heavily modified Ender 3v2) setting mesh_pps: 0, 0
in [bed_mesh]
configuration fixed the issue, and higher probe points produced better results. I ended up settling on 12x12 probe points for a 300mmx300mm build surface and 9x9 probe points for a 220mmx220mm build surface. This roughly comes out to a probe point every inch/25mm.
I believe this issue stems from weird interpolation results when pps are enabled, but I don’t have enough of an understanding of math to explain why disabling pps produces better results. I also tested this both with lagrange and bicubic, and didn’t really see much of a difference, but I personally use bicubic for no reason other than that’s what the preference of that one user was.
Anyway, I hope this helps somebody.
If you’re curious about my testing method, it was very inefficient. Every time I adjusted a setting I printed a sheet that covered the whole build plate on each printer and then looked for inconsistencies in the squish.