From b2e36e5d98c0cbae422fa777e66c99e900cd6169 Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Fri, 4 Apr 2025 02:44:16 -0400 Subject: probe: Change probing_move() to pass a gcmd instead of (pos, speed) Signed-off-by: Kevin O'Connor --- klippy/extras/probe_eddy_current.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'klippy/extras/probe_eddy_current.py') diff --git a/klippy/extras/probe_eddy_current.py b/klippy/extras/probe_eddy_current.py index 20fcdca6..1efcdfc1 100644 --- a/klippy/extras/probe_eddy_current.py +++ b/klippy/extras/probe_eddy_current.py @@ -304,11 +304,13 @@ class EddyGatherSamples: # Helper for implementing PROBE style commands (descend until trigger) class EddyEndstopWrapper: REASON_SENSOR_ERROR = mcu.MCU_trsync.REASON_COMMS_TIMEOUT + 1 - def __init__(self, config, sensor_helper, calibration): + def __init__(self, config, sensor_helper, calibration, param_helper): self._printer = config.get_printer() self._sensor_helper = sensor_helper self._mcu = sensor_helper.get_mcu() self._calibration = calibration + self._param_helper = param_helper + self._z_min_position = probe.lookup_minimum_z(config) self._z_offset = config.getfloat('z_offset', minval=0.) self._dispatch = mcu.TriggerDispatch(self._mcu) self._trigger_time = 0. @@ -347,7 +349,11 @@ class EddyEndstopWrapper: def query_endstop(self, print_time): return False # XXX # Interface for ProbeEndstopWrapper - def probing_move(self, pos, speed): + def probing_move(self, gcmd): + toolhead = self._printer.lookup_object('toolhead') + pos = toolhead.get_position() + pos[2] = self._z_min_position + speed = self._param_helper.get_probe_params(gcmd)['probe_speed'] # Perform probing move phoming = self._printer.lookup_object('homing') trig_pos = phoming.probing_move(self, pos, speed) @@ -356,7 +362,6 @@ class EddyEndstopWrapper: # Extract samples start_time = self._trigger_time + 0.050 end_time = start_time + 0.100 - toolhead = self._printer.lookup_object("toolhead") toolhead_pos = toolhead.get_position() self._gather.note_probe(start_time, end_time, toolhead_pos) return self._gather.pull_probed()[0] @@ -424,12 +429,13 @@ class PrinterEddyProbe: self.sensor_helper = sensors[sensor_type](config, self.calibration) # Probe interface self.param_helper = probe.ProbeParameterHelper(config) - self.mcu_probe = EddyEndstopWrapper(config, self.sensor_helper, - self.calibration) + self.mcu_probe = EddyEndstopWrapper( + config, self.sensor_helper, self.calibration, self.param_helper) self.cmd_helper = probe.ProbeCommandHelper( config, self, self.mcu_probe.query_endstop) self.probe_offsets = probe.ProbeOffsetsHelper(config) - self.homing_helper = probe.HomingViaProbeHelper(config, self.mcu_probe) + self.homing_helper = probe.HomingViaProbeHelper(config, self.mcu_probe, + self.param_helper) self.probe_session = probe.ProbeSessionHelper( config, self.mcu_probe, self.param_helper, self.mcu_probe.probing_move) -- cgit v1.2.3-70-g09d2