aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--klippy/homing.py8
-rw-r--r--klippy/kinematics/cartesian.py3
-rw-r--r--klippy/kinematics/corexy.py4
-rw-r--r--klippy/kinematics/delta.py4
4 files changed, 8 insertions, 11 deletions
diff --git a/klippy/homing.py b/klippy/homing.py
index c53a65d4..901af03d 100644
--- a/klippy/homing.py
+++ b/klippy/homing.py
@@ -123,6 +123,14 @@ class Homing:
self.toolhead.set_position(forcepos)
self.homing_move(movepos, endstops, second_homing_speed,
verify_movement=self.verify_retract)
+ # Apply homing offsets
+ for rail in rails:
+ cp = rail.get_commanded_position()
+ rail.set_commanded_position(cp + rail.get_homed_offset())
+ adjustpos = self.toolhead.get_kinematics().calc_position()
+ for axis in homing_axes:
+ movepos[axis] = adjustpos[axis]
+ self.toolhead.set_position(movepos)
def home_axes(self, axes):
self.changed_axes = axes
try:
diff --git a/klippy/kinematics/cartesian.py b/klippy/kinematics/cartesian.py
index 6e971fb5..0ce28dbe 100644
--- a/klippy/kinematics/cartesian.py
+++ b/klippy/kinematics/cartesian.py
@@ -70,9 +70,6 @@ class CartKinematics:
if axis == 2:
limit_speed = self.max_z_velocity
homing_state.home_rails([rail], forcepos, homepos, limit_speed)
- # Set final homed position
- forcepos[axis] = hi.position_endstop + rail.get_homed_offset()
- homing_state.set_homed_position(forcepos)
def home(self, homing_state):
# Each axis is homed independently and in order
for axis in homing_state.get_axes():
diff --git a/klippy/kinematics/corexy.py b/klippy/kinematics/corexy.py
index 99f48fbf..e7ab2f24 100644
--- a/klippy/kinematics/corexy.py
+++ b/klippy/kinematics/corexy.py
@@ -63,10 +63,6 @@ class CoreXYKinematics:
if axis == 2:
limit_speed = self.max_z_velocity
homing_state.home_rails([rail], forcepos, homepos, limit_speed)
- if axis == 2:
- # Support endstop phase detection on Z axis
- forcepos[axis] = hi.position_endstop + rail.get_homed_offset()
- homing_state.set_homed_position(forcepos)
def motor_off(self, print_time):
self.limits = [(1.0, -1.0)] * 3
for rail in self.rails:
diff --git a/klippy/kinematics/delta.py b/klippy/kinematics/delta.py
index 3f453578..d770ec1d 100644
--- a/klippy/kinematics/delta.py
+++ b/klippy/kinematics/delta.py
@@ -103,10 +103,6 @@ class DeltaKinematics:
forcepos[2] = -1.5 * math.sqrt(max(self.arm2)-self.max_xy2)
homing_state.home_rails(self.rails, forcepos, self.home_position,
limit_speed=self.max_z_velocity)
- # Set final homed position
- spos = [ep + rail.get_homed_offset()
- for ep, rail in zip(self.abs_endstops, self.rails)]
- homing_state.set_homed_position(self._actuator_to_cartesian(spos))
def motor_off(self, print_time):
self.limit_xy2 = -1.
for rail in self.rails: