My printer is printing in the air (bltouch issue)

Ah, ok. Understood

Generally speaking:

  • You should follow the information here: Probe calibration - Klipper documentation
  • This should give you a proper, “average”, z-offset. This one is true only at the spot where you calibrated it. It does not take into account
    • Bed flatness
    • Location bias caused by twisted axes
  • This z-offset may be fine-tuned with SET_GCODE_OFFSET to account for different filament needs. As stated above, this also does not take bed flatness or location bias into account
  • BED_MESH_CALIBRATE then scans the bed to compensate for bed flatness. Location bias cannot be compensated by this

All reports that are similar to this one and could be resolved boiled down to:

  • A systematic error / bug in Klipper could not be identified
  • Solution in most cases was fixing a mechanical location bias. Either caused by twisted profiles or “wobbling” axes, e.g. due to issues on linear components

Also refer to an extensive discussions here: Impossible Bed mesh leveling - Cr10sPro V2 - #73 by whoiswes