aboutsummaryrefslogtreecommitdiffstats
path: root/klippy
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2022-01-11 18:13:21 -0500
committerKevin O'Connor <kevin@koconnor.net>2022-01-16 19:01:15 -0500
commit02d5f9754fc7f9e493c8bc5a6418e2a9ea9d7ae1 (patch)
tree08728bbdda7fbf0ac4574e7dfd9902b35677a520 /klippy
parenteb2a67cb956f96e9ed92d5c070411d7dec08bcfd (diff)
downloadkutter-02d5f9754fc7f9e493c8bc5a6418e2a9ea9d7ae1.tar.gz
kutter-02d5f9754fc7f9e493c8bc5a6418e2a9ea9d7ae1.tar.xz
kutter-02d5f9754fc7f9e493c8bc5a6418e2a9ea9d7ae1.zip
extruder: Support disassociating a stepper from all extruders
Support SYNC_STEPPER_TO_EXTRUDER commands with an EXTRUDER parameter set to an empty string. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy')
-rw-r--r--klippy/kinematics/extruder.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/klippy/kinematics/extruder.py b/klippy/kinematics/extruder.py
index e3db152b..e3bc8916 100644
--- a/klippy/kinematics/extruder.py
+++ b/klippy/kinematics/extruder.py
@@ -44,12 +44,15 @@ class ExtruderStepper:
mcu_pos = self.stepper.get_past_mcu_position(print_time)
return self.stepper.mcu_to_commanded_position(mcu_pos)
def sync_to_extruder(self, extruder_name):
+ toolhead = self.printer.lookup_object('toolhead')
+ toolhead.flush_step_generation()
+ if not extruder_name:
+ self.stepper.set_trapq(None)
+ return
extruder = self.printer.lookup_object(extruder_name, None)
if extruder is None or not isinstance(extruder, PrinterExtruder):
raise self.printer.command_error("'%s' is not a valid extruder."
% (extruder_name,))
- toolhead = self.printer.lookup_object('toolhead')
- toolhead.flush_step_generation()
self.stepper.set_position([extruder.last_position, 0., 0.])
self.stepper.set_trapq(extruder.get_trapq())
def _set_pressure_advance(self, pressure_advance, smooth_time):