From 9f75e348b06f494c0aa4181867b92013f72a9278 Mon Sep 17 00:00:00 2001 From: stefand Date: Tue, 24 Aug 2021 12:52:13 +0200 Subject: [PATCH] toolhead: change SET_VELOCITY_LIMIT respond behavior Returns only the current values if no new ones have been passed. Signed-off-by: Stefan Dej --- klippy/toolhead.py | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/klippy/toolhead.py b/klippy/toolhead.py index 155848be..6d787b3d 100644 --- a/klippy/toolhead.py +++ b/klippy/toolhead.py @@ -553,25 +553,37 @@ class ToolHead: cmd_SET_VELOCITY_LIMIT_help = "Set printer velocity limits" def cmd_SET_VELOCITY_LIMIT(self, gcmd): print_time = self.get_last_move_time() - max_velocity = gcmd.get_float('VELOCITY', self.max_velocity, above=0.) - max_accel = gcmd.get_float('ACCEL', self.max_accel, above=0.) + max_velocity = gcmd.get_float('VELOCITY', None, above=0.) + max_accel = gcmd.get_float('ACCEL', None, above=0.) square_corner_velocity = gcmd.get_float( - 'SQUARE_CORNER_VELOCITY', self.square_corner_velocity, minval=0.) - self.requested_accel_to_decel = gcmd.get_float( - 'ACCEL_TO_DECEL', self.requested_accel_to_decel, above=0.) + 'SQUARE_CORNER_VELOCITY', None, minval=0.) + requested_accel_to_decel = gcmd.get_float( + 'ACCEL_TO_DECEL', None, above=0.) self.max_velocity = max_velocity self.max_accel = max_accel self.square_corner_velocity = square_corner_velocity + if max_velocity is not None: + self.max_velocity = max_velocity + if max_accel is not None: + self.max_accel = max_accel + if square_corner_velocity is not None: + self.square_corner_velocity = square_corner_velocity + if requested_accel_to_decel is not None: + self.requested_accel_to_decel = requested_accel_to_decel self._calc_junction_deviation() msg = ("max_velocity: %.6f\n" "max_accel: %.6f\n" "max_accel_to_decel: %.6f\n" - "square_corner_velocity: %.6f"% ( + "square_corner_velocity: %.6f" % ( self.max_velocity, self.max_accel, self.requested_accel_to_decel, self.square_corner_velocity)) self.printer.set_rollover_info("toolhead", "toolhead: %s" % (msg,)) - gcmd.respond_info(msg, log=False) + if (max_velocity is None and + max_accel is None and + square_corner_velocity is None and + requested_accel_to_decel is None): + gcmd.respond_info(msg, log=False) def cmd_M204(self, gcmd): # Use S for accel accel = gcmd.get_float('S', None, above=0.)