From 4115a77342239bfbef3be2463e3ba6b5c3616167 Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Sun, 16 Aug 2020 22:02:23 -0400 Subject: gcode: Automatically call reset_last_position() on a toolhead set_position() Generate a "toolhead:set_position" event on a call to toolhead.set_position() and use that event to automatically call gcode.reset_last_position(). Signed-off-by: Kevin O'Connor --- klippy/gcode.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'klippy/gcode.py') diff --git a/klippy/gcode.py b/klippy/gcode.py index 9bacfbfa..03d109a5 100644 --- a/klippy/gcode.py +++ b/klippy/gcode.py @@ -76,6 +76,8 @@ class GCodeParser: printer.register_event_handler("klippy:shutdown", self._handle_shutdown) printer.register_event_handler("klippy:disconnect", self._handle_disconnect) + printer.register_event_handler("toolhead:set_position", + self.reset_last_position) printer.register_event_handler("extruder:activate_extruder", self._handle_activate_extruder) # Command handling @@ -421,7 +423,6 @@ class GCodeParser: homing_state.home_axes(axes) for axis in homing_state.get_axes(): self.base_position[axis] = self.homing_position[axis] - self.reset_last_position() def cmd_M400(self, gcmd): # Wait for current moves to finish self.toolhead.wait_moves() -- cgit v1.2.3-70-g09d2