I’ve created a macro that ensures there’s a bedmesh active that fits the current bed temperature by naming meshes after bed temperature. I there is no proper one it gets measured with a soak time to ensure there is no drift while measuring:
Thank you for he macro. It’s a great idea and I tried it. I have the following problem. I get the bedmesh, but it doesn’t find the macro next time I want to print. Do you have any suggestion?
Thanks. From this output I can only see that no mesh was active at print start:
“active=, expected=mesh_bed_55”
That alone does not necessarily indicate a bug.
The macro was intentionally designed to check only the currently active mesh, not all saved mesh profiles. The reason for this is that I wanted “BED_MESH_CLEAR” to act as a manual “invalidate current mesh” command.
So the intended behavior is:
matching mesh still active → reuse it
mesh was cleared (or Klipper restarted) → force a fresh calibration on next print
If the macro automatically reloaded saved profiles, then “BED_MESH_CLEAR” would no longer reliably trigger a re-measurement during the next print start.
To better understand what is happening in your case, a “klippy.log” covering two consecutive print starts would help:
first run: mesh gets created
second run: mesh should either still be active or be recalibrated
Especially interesting would be whether anything triggers: