Skip to content

Commit e2e81c9

Browse files
committed
try a lambda
1 parent 7de58b9 commit e2e81c9

File tree

1 file changed

+14
-17
lines changed

1 file changed

+14
-17
lines changed

Marlin/src/gcode/calibrate/G33.cpp

+14-17
Original file line numberDiff line numberDiff line change
@@ -479,23 +479,20 @@ void GcodeSuite::G33() {
479479

480480
#if HAS_DELTA_SENSORLESS_PROBING
481481
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
499496
}
500497
#endif
501498

0 commit comments

Comments
 (0)