aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2024-05-27 15:06:59 -0400
committerKevin O'Connor <kevin@koconnor.net>2024-06-10 12:20:21 -0400
commit93245b3678b4bf64b5aff8322d5d5b3de38d00d2 (patch)
tree1bc3e71e41ce9b2921f0388981802fe4ac8121e5
parent068d2a9f5a70d87dd1158c22c8573e1823ec2fa1 (diff)
downloadkutter-93245b3678b4bf64b5aff8322d5d5b3de38d00d2.tar.gz
kutter-93245b3678b4bf64b5aff8322d5d5b3de38d00d2.tar.xz
kutter-93245b3678b4bf64b5aff8322d5d5b3de38d00d2.zip
smart_effector: No need to use PrinterProbe() class
Directly register the SmartEffectorProbe() class as the main probe interface. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-rw-r--r--klippy/extras/smart_effector.py20
1 files changed, 16 insertions, 4 deletions
diff --git a/klippy/extras/smart_effector.py b/klippy/extras/smart_effector.py
index c33de527..72653142 100644
--- a/klippy/extras/smart_effector.py
+++ b/klippy/extras/smart_effector.py
@@ -48,7 +48,7 @@ class ControlPinHelper:
bit_time += bit_step
return bit_time
-class SmartEffectorEndstopWrapper:
+class SmartEffectorProbe:
def __init__(self, config):
self.printer = config.get_printer()
self.gcode = self.printer.lookup_object('gcode')
@@ -64,6 +64,11 @@ class SmartEffectorEndstopWrapper:
self.query_endstop = self.probe_wrapper.query_endstop
self.multi_probe_begin = self.probe_wrapper.multi_probe_begin
self.multi_probe_end = self.probe_wrapper.multi_probe_end
+ # Common probe implementation helpers
+ self.cmd_helper = probe.ProbeCommandHelper(
+ config, self, self.probe_wrapper.query_endstop)
+ self.probe_offsets = probe.ProbeOffsetsHelper(config)
+ self.probe_session = probe.ProbeSessionHelper(config, self)
# SmartEffector control
control_pin = config.get('control_pin', None)
if control_pin:
@@ -78,6 +83,14 @@ class SmartEffectorEndstopWrapper:
self.gcode.register_command("SET_SMART_EFFECTOR",
self.cmd_SET_SMART_EFFECTOR,
desc=self.cmd_SET_SMART_EFFECTOR_help)
+ def get_probe_params(self, gcmd=None):
+ return self.probe_session.get_probe_params(gcmd)
+ def get_offsets(self):
+ return self.probe_offsets.get_offsets()
+ def get_status(self, eventtime):
+ return self.cmd_helper.get_status(eventtime)
+ def start_probe_session(self, gcmd):
+ return self.probe_session.start_probe_session(gcmd)
def probing_move(self, pos, speed):
phoming = self.printer.lookup_object('homing')
return phoming.probing_move(self, pos, speed)
@@ -151,7 +164,6 @@ class SmartEffectorEndstopWrapper:
gcmd.respond_info('SmartEffector sensitivity was reset')
def load_config(config):
- smart_effector = SmartEffectorEndstopWrapper(config)
- config.get_printer().add_object('probe',
- probe.PrinterProbe(config, smart_effector))
+ smart_effector = SmartEffectorProbe(config)
+ config.get_printer().add_object('probe', smart_effector)
return smart_effector