mirror of
https://github.com/andreili/klipper.git
synced 2025-08-24 03:44:06 +02:00
probe: Add a new ProbeEndstopSessionHelper class
Move the HomingViaProbeHelper() instance from ProbeSessionHelper to a new ProbeEndstopSessionHelper class. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
6a87c5e9f5
commit
f8de9ae080
@ -64,7 +64,7 @@ class BLTouchProbe:
|
|||||||
self.cmd_helper = probe.ProbeCommandHelper(
|
self.cmd_helper = probe.ProbeCommandHelper(
|
||||||
config, self, self.mcu_endstop.query_endstop)
|
config, self, self.mcu_endstop.query_endstop)
|
||||||
self.probe_offsets = probe.ProbeOffsetsHelper(config)
|
self.probe_offsets = probe.ProbeOffsetsHelper(config)
|
||||||
self.probe_session = probe.ProbeSessionHelper(config, self)
|
self.probe_session = probe.ProbeEndstopSessionHelper(config, self)
|
||||||
# Register BLTOUCH_DEBUG command
|
# Register BLTOUCH_DEBUG command
|
||||||
self.gcode = self.printer.lookup_object('gcode')
|
self.gcode = self.printer.lookup_object('gcode')
|
||||||
self.gcode.register_command("BLTOUCH_DEBUG", self.cmd_BLTOUCH_DEBUG,
|
self.gcode.register_command("BLTOUCH_DEBUG", self.cmd_BLTOUCH_DEBUG,
|
||||||
|
@ -237,6 +237,7 @@ class ProbeSessionHelper:
|
|||||||
def __init__(self, config, mcu_probe, probing_move_cb=None):
|
def __init__(self, config, mcu_probe, probing_move_cb=None):
|
||||||
self.printer = config.get_printer()
|
self.printer = config.get_printer()
|
||||||
self.mcu_probe = mcu_probe
|
self.mcu_probe = mcu_probe
|
||||||
|
self.probing_move_cb = probing_move_cb
|
||||||
gcode = self.printer.lookup_object('gcode')
|
gcode = self.printer.lookup_object('gcode')
|
||||||
self.dummy_gcode_cmd = gcode.create_gcode_command("", "", {})
|
self.dummy_gcode_cmd = gcode.create_gcode_command("", "", {})
|
||||||
# Infer Z position to move to during a probe
|
# Infer Z position to move to during a probe
|
||||||
@ -248,10 +249,6 @@ class ProbeSessionHelper:
|
|||||||
pconfig = config.getsection('printer')
|
pconfig = config.getsection('printer')
|
||||||
self.z_position = pconfig.getfloat('minimum_z_position', 0.,
|
self.z_position = pconfig.getfloat('minimum_z_position', 0.,
|
||||||
note_valid=False)
|
note_valid=False)
|
||||||
self.homing_helper = HomingViaProbeHelper(config, mcu_probe)
|
|
||||||
self.probing_move_cb = probing_move_cb
|
|
||||||
if probing_move_cb is None:
|
|
||||||
self.probing_move_cb = self.homing_helper.probing_move
|
|
||||||
# Configurable probing speeds
|
# Configurable probing speeds
|
||||||
self.speed = config.getfloat('speed', 5.0, above=0.)
|
self.speed = config.getfloat('speed', 5.0, above=0.)
|
||||||
self.lift_speed = config.getfloat('lift_speed', self.speed, above=0.)
|
self.lift_speed = config.getfloat('lift_speed', self.speed, above=0.)
|
||||||
@ -369,6 +366,16 @@ class ProbeSessionHelper:
|
|||||||
self.results = []
|
self.results = []
|
||||||
return res
|
return res
|
||||||
|
|
||||||
|
# Helper for probes based purely on an endstop wrapper
|
||||||
|
class ProbeEndstopSessionHelper:
|
||||||
|
def __init__(self, config, mcu_probe):
|
||||||
|
self.homing_helper = HomingViaProbeHelper(config, mcu_probe)
|
||||||
|
self.probe_session = ProbeSessionHelper(config, mcu_probe,
|
||||||
|
self.homing_helper.probing_move)
|
||||||
|
# Main printer probe session starting API
|
||||||
|
self.start_probe_session = self.probe_session.start_probe_session
|
||||||
|
self.get_probe_params = self.probe_session.get_probe_params
|
||||||
|
|
||||||
# Helper to read the xyz probe offsets from the config
|
# Helper to read the xyz probe offsets from the config
|
||||||
class ProbeOffsetsHelper:
|
class ProbeOffsetsHelper:
|
||||||
def __init__(self, config):
|
def __init__(self, config):
|
||||||
@ -570,7 +577,7 @@ class PrinterProbe:
|
|||||||
self.cmd_helper = ProbeCommandHelper(config, self,
|
self.cmd_helper = ProbeCommandHelper(config, self,
|
||||||
self.mcu_probe.query_endstop)
|
self.mcu_probe.query_endstop)
|
||||||
self.probe_offsets = ProbeOffsetsHelper(config)
|
self.probe_offsets = ProbeOffsetsHelper(config)
|
||||||
self.probe_session = ProbeSessionHelper(config, self.mcu_probe)
|
self.probe_session = ProbeEndstopSessionHelper(config, self.mcu_probe)
|
||||||
def get_probe_params(self, gcmd=None):
|
def get_probe_params(self, gcmd=None):
|
||||||
return self.probe_session.get_probe_params(gcmd)
|
return self.probe_session.get_probe_params(gcmd)
|
||||||
def get_offsets(self):
|
def get_offsets(self):
|
||||||
|
@ -428,6 +428,7 @@ class PrinterEddyProbe:
|
|||||||
self.cmd_helper = probe.ProbeCommandHelper(
|
self.cmd_helper = probe.ProbeCommandHelper(
|
||||||
config, self, self.mcu_probe.query_endstop)
|
config, self, self.mcu_probe.query_endstop)
|
||||||
self.probe_offsets = probe.ProbeOffsetsHelper(config)
|
self.probe_offsets = probe.ProbeOffsetsHelper(config)
|
||||||
|
self.homing_helper = probe.HomingViaProbeHelper(config, self.mcu_probe)
|
||||||
self.probe_session = probe.ProbeSessionHelper(
|
self.probe_session = probe.ProbeSessionHelper(
|
||||||
config, self.mcu_probe, self.mcu_probe.probing_move)
|
config, self.mcu_probe, self.mcu_probe.probing_move)
|
||||||
self.printer.add_object('probe', self)
|
self.printer.add_object('probe', self)
|
||||||
|
@ -69,7 +69,7 @@ class SmartEffectorProbe:
|
|||||||
self.cmd_helper = probe.ProbeCommandHelper(
|
self.cmd_helper = probe.ProbeCommandHelper(
|
||||||
config, self, self.probe_wrapper.query_endstop)
|
config, self, self.probe_wrapper.query_endstop)
|
||||||
self.probe_offsets = probe.ProbeOffsetsHelper(config)
|
self.probe_offsets = probe.ProbeOffsetsHelper(config)
|
||||||
self.probe_session = probe.ProbeSessionHelper(config, self)
|
self.probe_session = probe.ProbeEndstopSessionHelper(config, self)
|
||||||
# SmartEffector control
|
# SmartEffector control
|
||||||
control_pin = config.get('control_pin', None)
|
control_pin = config.get('control_pin', None)
|
||||||
if control_pin:
|
if control_pin:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user