From 08a99c63946ad9757c28aab466b73de9f0043315 Mon Sep 17 00:00:00 2001 From: Rogerio Goncalves Date: Thu, 30 Jan 2025 03:13:01 +0000 Subject: [PATCH] stepper: default second_homing_speed to homing_speed for sensorless (#549) --- docs/Config_Changes.md | 3 +++ docs/Config_Reference.md | 3 ++- klippy/stepper.py | 15 +++++++++++---- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/docs/Config_Changes.md b/docs/Config_Changes.md index 06b9629fa..13072c6db 100644 --- a/docs/Config_Changes.md +++ b/docs/Config_Changes.md @@ -8,6 +8,9 @@ All dates in this document are approximate. ## Changes +20250121: The `second_homing_speed` default value in the stepper config section +is now set to `homing_speed` if sensorless homing is enabled. + 20250107: The `rref` parameter for tmc2240 is now mandatory with no default value. 20241202: The `sense_resistor` parameter is now mandatory with no default value. diff --git a/docs/Config_Reference.md b/docs/Config_Reference.md index c3ca36a9a..883072df0 100644 --- a/docs/Config_Reference.md +++ b/docs/Config_Reference.md @@ -319,7 +319,8 @@ position_max: # The default is equal to `homing_retract_dist`. #second_homing_speed: # Velocity (in mm/s) of the stepper when performing the second home. -# The default is homing_speed/2. +# The default is homing_speed/2. If `use_sensorless_homing` is +# true, the default is homing_speed. #homing_positive_dir: # If true, homing will cause the stepper to move in a positive # direction (away from zero); if false, home towards zero. It is diff --git a/klippy/stepper.py b/klippy/stepper.py index 453d81a65..154a4c30e 100644 --- a/klippy/stepper.py +++ b/klippy/stepper.py @@ -441,9 +441,18 @@ def __init__( " position_min and position_max" % config.get_name() ) # Homing mechanics + self.use_sensorless_homing = config.getboolean( + "use_sensorless_homing", endstop_is_virtual + ) + self.homing_speed = config.getfloat("homing_speed", 5.0, above=0.0) + + default_second_homing_speed = self.homing_speed / 2.0 + if self.use_sensorless_homing: + default_second_homing_speed = self.homing_speed + self.second_homing_speed = config.getfloat( - "second_homing_speed", self.homing_speed / 2.0, above=0.0 + "second_homing_speed", default_second_homing_speed, above=0.0 ) self.homing_retract_speed = config.getfloat( "homing_retract_speed", self.homing_speed, above=0.0 @@ -454,9 +463,7 @@ def __init__( self.homing_positive_dir = config.getboolean( "homing_positive_dir", None ) - self.use_sensorless_homing = config.getboolean( - "use_sensorless_homing", endstop_is_virtual - ) + self.min_home_dist = config.getfloat( "min_home_dist", self.homing_retract_dist, minval=0.0 )