aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--config/example-delta.cfg7
-rw-r--r--klippy/kinematics/delta.py3
2 files changed, 9 insertions, 1 deletions
diff --git a/config/example-delta.cfg b/config/example-delta.cfg
index b6a25fdb..320a74af 100644
--- a/config/example-delta.cfg
+++ b/config/example-delta.cfg
@@ -107,6 +107,13 @@ delta_radius: 174.75
# axis towers. This parameter may also be calculated as:
# delta_radius = smooth_rod_offset - effector_offset - carriage_offset
# This parameter must be provided.
+#print_radius:
+# The radius (in mm) of valid toolhead XY coordinates. One may use
+# this setting to customize the range checking of toolhead moves. If
+# a large value is specified here then it may be possible to command
+# the toolhead into a collision with a tower. The default is to use
+# delta_radius for print_radius (which would normally prevent a
+# tower collision).
# The delta_calibrate section enables a DELTA_CALIBRATE extended
# g-code command that can calibrate the tower endstop positions and
diff --git a/klippy/kinematics/delta.py b/klippy/kinematics/delta.py
index 057e9241..885ce940 100644
--- a/klippy/kinematics/delta.py
+++ b/klippy/kinematics/delta.py
@@ -36,6 +36,7 @@ class DeltaKinematics:
rail.set_max_jerk(max_halt_velocity, max_halt_accel)
# Read radius and arm lengths
self.radius = radius = config.getfloat('delta_radius', above=0.)
+ print_radius = config.getfloat('print_radius', radius, above=0.)
arm_length_a = stepper_configs[0].getfloat('arm_length', above=radius)
self.arm_lengths = arm_lengths = [
sconfig.getfloat('arm_length', arm_length_a, above=radius)
@@ -80,7 +81,7 @@ class DeltaKinematics:
+ half_min_step_dist)
self.slow_xy2 = (ratio_to_dist(SLOW_RATIO) - radius)**2
self.very_slow_xy2 = (ratio_to_dist(2. * SLOW_RATIO) - radius)**2
- self.max_xy2 = min(radius, min_arm_length - radius,
+ self.max_xy2 = min(print_radius, min_arm_length - radius,
ratio_to_dist(4. * SLOW_RATIO) - radius)**2
logging.info("Delta max build radius %.2fmm (moves slowed past %.2fmm"
" and %.2fmm)" % (