aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2017-02-19 10:36:08 -0500
committerKevin O'Connor <kevin@koconnor.net>2017-02-19 11:00:46 -0500
commit29ba92a5514de0bb6ccdad6e95c8b54f3d8a5e92 (patch)
tree86bba3a6b6dc303d38bac479d408d0d4ede1635b
parent38e9484f9ffabd98962a00bb4403261f0c58b1ab (diff)
downloadkutter-29ba92a5514de0bb6ccdad6e95c8b54f3d8a5e92.tar.gz
kutter-29ba92a5514de0bb6ccdad6e95c8b54f3d8a5e92.tar.xz
kutter-29ba92a5514de0bb6ccdad6e95c8b54f3d8a5e92.zip
delta: Use position_endstop for position_max
There's no reason for the user to specify position_max - it can be inferred on deltas from the endstop positions. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-rw-r--r--config/example-delta.cfg4
-rw-r--r--klippy/delta.py6
2 files changed, 4 insertions, 6 deletions
diff --git a/config/example-delta.cfg b/config/example-delta.cfg
index 96ab91b3..1eb96b3c 100644
--- a/config/example-delta.cfg
+++ b/config/example-delta.cfg
@@ -9,8 +9,7 @@
# The stepper_a section describes the stepper controlling the front
# left tower (at 210 degrees). This section also controls the homing
-# parameters (homing_speed, homing_retract_dist) and maximum tower
-# length (position_max) for all towers.
+# parameters (homing_speed, homing_retract_dist) for all towers.
[stepper_a]
step_pin: ar54
dir_pin: ar55
@@ -19,7 +18,6 @@ step_distance: .01
endstop_pin: ^ar2
homing_speed: 50.0
position_endstop: 297.05
-position_max: 297.55
# The stepper_b section describes the stepper controlling the front
# right tower (at 330 degrees)
diff --git a/klippy/delta.py b/klippy/delta.py
index 914783eb..d73e5b8f 100644
--- a/klippy/delta.py
+++ b/klippy/delta.py
@@ -25,7 +25,7 @@ class DeltaKinematics:
self.max_xy2 = min(radius, arm_length - radius)**2
self.limit_xy2 = -1.
tower_height_at_zeros = math.sqrt(self.arm_length2 - radius**2)
- self.max_z = self.steppers[0].position_max
+ self.max_z = max([s.position_endstop for s in self.steppers])
self.limit_z = self.max_z - (arm_length - tower_height_at_zeros)
logging.info(
"Delta max build height %.2fmm (radius tapered above %.2fmm)" % (
@@ -101,10 +101,10 @@ class DeltaKinematics:
def home(self, homing_state):
# All axes are homed simultaneously
homing_state.set_axes([0, 1, 2])
- s = self.steppers[0] # Assume homing parameters same for all steppers
+ s = self.steppers[0] # Assume homing speed same for all steppers
self.need_home = False
# Initial homing
- homepos = [0., 0., s.position_endstop, None]
+ homepos = [0., 0., self.max_z, None]
coord = list(homepos)
coord[2] = -1.5 * math.sqrt(self.arm_length2-self.max_xy2)
homing_state.home(list(coord), homepos, self.steppers, s.homing_speed)