@@ -479,23 +479,20 @@ void GcodeSuite::G33() {
479
479
480
480
#if HAS_DELTA_SENSORLESS_PROBING
481
481
if (verbose_level > 0 && do_save_offset_adj) {
482
- xyz_pos_t reset{0 };
483
- offset_sensorless_adj = reset;
484
-
485
- float z_at_pt[NPP + 1 ];
486
- LOOP_CAL_ALL (rad) z_at_pt[rad] = 0 .0f ;
487
- probe.test_sensitivity = { true , false , false };
488
- if (probe_calibration_points (z_at_pt, 1 , dcr, false , false , probe_at_offset))
489
- probe.set_offset_sensorless_adj (z_at_pt[CEN]);
490
- LOOP_CAL_ALL (rad) z_at_pt[rad] = 0 .0f ;
491
- probe.test_sensitivity = { false , true , false };
492
- if (probe_calibration_points (z_at_pt, 1 , dcr, false , false , probe_at_offset))
493
- probe.set_offset_sensorless_adj (z_at_pt[CEN]);
494
- LOOP_CAL_ALL (rad) z_at_pt[rad] = 0 .0f ;
495
- probe.test_sensitivity = { false , false , true };
496
- if (probe_calibration_points (z_at_pt, 1 , dcr, false , false , probe_at_offset))
497
- probe.set_offset_sensorless_adj (z_at_pt[CEN]);
498
- probe.test_sensitivity = { true , true , true };
482
+ offset_sensorless_adj.reset ();
483
+
484
+ auto caltower = [&](Probe::sense_bool_t s){
485
+ float z_at_pt[NPP + 1 ];
486
+ LOOP_CAL_ALL (rad) z_at_pt[rad] = 0 .0f ;
487
+ probe.test_sensitivity = s;
488
+ if (probe_calibration_points (z_at_pt, 1 , dcr, false , false , probe_at_offset))
489
+ probe.set_offset_sensorless_adj (z_at_pt[CEN]);
490
+ };
491
+ caltower ({ true , false , false }); // A
492
+ caltower ({ false , true , false }); // B
493
+ caltower ({ false , false , true }); // C
494
+
495
+ probe.test_sensitivity = { true , true , true }; // reset to all
499
496
}
500
497
#endif
501
498
0 commit comments