G32 Dual Z axis constant 0.6mm off-level difference
-
Let's do a test. Change your M558 to use P0 to enable manual probing. Then go through your normal homing and leveling routine. It will ask you to manually jog the nozzle to touch the bed when a probe is requested. This will eliminate the probe from the equation entirely.
I would suggest you remove this section from homeall entirely so that homeall is used for homing the axis only.
G1 H2 X0 Y0 Z20 F6000 ; Go to home position G32 G31 Z0.498 ;Z0.540 ;G29 S1 G28 Z
Then you can use bed.g/g32 for the leveling as that's where it's intended to exist.