I completely removed the BLTouch since it started to not trigger during Z home (and, due to wrong measurements, have my hotend collide with the bed :x ) and I put a SexBolt Z endstop at a fixed position in my HevORT, so I decided to have the auto leveling done via the SZP Scanning Probe on a Duet 3 6HC.
I set it and calibrated with M558.2 and saved the parameters in config.g, the problem is that after doing the calibration with M558.1 and after the auto leveling I get the error "M280: Probe already triggered at start of probing move" and it exits the loop witout, apparently, correcting the 3 Z motors.
What am I missing?
Initial settings and calibration in config.g:
M558 K0 P5 C"0.io6.in" H5 F500:120 T9000 A3 S0.015 ; set Z endstop SexBolt
G31 K0 P500 Z0.55
M558 K1 P11 C"120.i2c.ldc1612" F36000 T36000 ; sensore induttivo (va usato come secondo sensore perchè la temperatura fa cambiare la misurazione)
G31 K1 Z2 Y-17 ; define probe 1 offsets and trigger height
M558.2 K1 S16 R135826 ; set drive current and reading offset
homez.g (usually it gets called without parameters, so it's just T0, G90, G1 and G30 commands)
T0 P0
var x = 144.5
var y = -60
if !exists(param.L) || param.L == 1 ; per abbassare o meno il piatto (se è chiamata da files che l'hanno già abbassato non lo abbassa ulteriormente)
G91 ; relative positioning
G1 H2 Z{global.movZ} F9000 ; lift Z relative to current position
if exists(param.X) ; per fare home Z a coordinate personalizzate
set var.x = param.X
if exists(param.Y) ; per fare home Z a coordinate personalizzate
set var.y = param.Y
G90 ; absolute positioning
G1 X{var.x} Y{var.y} F9000 ; move to (var.x, var.y), standard: center of bed
G30 ; home Z by probing the bed
mesh.g
var tool = state.currentTool ; salva il tool attivo prima di passare al sensore induttivo
T-1 P0
G29 S2 ; Disable mesh bed compensation
G1 X150 Y70 F30000 ; centro del piatto
G1 Z6 ; to avoid backlash move to point higher than start of calibration
M558.1 K1 S1.7 ; Calibrate probe
G1 X150 Y70 F18000 ; near Z stop
G1 Z6
T{var.tool} P0 ; riattiva il tool attivo
bed.g
G29 ; probe the bed and enable compensation
var tool = state.currentTool ; salva il tool attivo prima di passare al sensore induttivo
T-1 P0
M671 X-8.86:167.349:343.558 Y-10.411:317.799:-10.411 S50
M291 R"Leveling bed" P"Please wait..." T5
; --- level bed leveling ---
while true
; run leveling pass
; --- probe near lead screws
G30 K1 P0 X30 Y70 Z-99999 ; probe near lead screw #1 - Tiene conto dell'offset della sonda: così va ad X0
G30 K1 P1 X270 Y70 Z-99999 ; probe near lead screw #2
G30 K1 P2 X150 Y300 Z-99999 S3 ; probe near lead screw #3 originale: 220
; check results - exit loop if results are good
if move.calibration.initial.deviation < 0.02
break
; check pass limit - abort if pass limit reached
if iterations = 5
M291 P"Bed Leveling Aborted" R"Pass Limit Reached"
abort "Bed Leveling Aborted - Pass Limit Reached"
; --- finish up ---
; --- set Z=0 datum which can be affected by leveling ---
T{var.tool} P0 ; riattiva il tool attivo
M98 P"homez.g" L1 ; home Z
M291 R"Leveling bed" P"Done" T5