|
@@ -2073,10 +2073,12 @@ static void clean_up_after_endstop_or_probe_move() {
|
2073
|
2073
|
* using the home XY and Z0 position as the fulcrum.
|
2074
|
2074
|
*/
|
2075
|
2075
|
vector_3 untilted_stepper_position() {
|
|
2076
|
+ get_cartesian_from_steppers();
|
|
2077
|
+
|
2076
|
2078
|
vector_3 pos = vector_3(
|
2077
|
|
- RAW_X_POSITION(stepper.get_axis_position_mm(X_AXIS)) - X_TILT_FULCRUM,
|
2078
|
|
- RAW_Y_POSITION(stepper.get_axis_position_mm(Y_AXIS)) - Y_TILT_FULCRUM,
|
2079
|
|
- RAW_Z_POSITION(stepper.get_axis_position_mm(Z_AXIS))
|
|
2079
|
+ cartes[X_AXIS] - X_TILT_FULCRUM,
|
|
2080
|
+ cartes[Y_AXIS] - Y_TILT_FULCRUM,
|
|
2081
|
+ cartes[Z_AXIS]
|
2080
|
2082
|
);
|
2081
|
2083
|
|
2082
|
2084
|
matrix_3x3 inverse = matrix_3x3::transpose(planner.bed_level_matrix);
|
|
@@ -7838,12 +7840,12 @@ void ok_to_send() {
|
7838
|
7840
|
#endif // DELTA
|
7839
|
7841
|
|
7840
|
7842
|
void set_current_from_steppers_for_axis(AxisEnum axis) {
|
7841
|
|
- #if ENABLED(DELTA)
|
7842
|
|
- get_cartesian_from_steppers();
|
7843
|
|
- current_position[axis] = LOGICAL_POSITION(cartes[axis], axis);
|
7844
|
|
- #elif ENABLED(AUTO_BED_LEVELING_FEATURE)
|
|
7843
|
+ #if ENABLED(AUTO_BED_LEVELING_LINEAR)
|
7845
|
7844
|
vector_3 pos = untilted_stepper_position();
|
7846
|
7845
|
current_position[axis] = axis == X_AXIS ? pos.x : axis == Y_AXIS ? pos.y : pos.z;
|
|
7846
|
+ #elif IS_KINEMATIC
|
|
7847
|
+ get_cartesian_from_steppers();
|
|
7848
|
+ current_position[axis] = LOGICAL_POSITION(cartes[axis], axis);
|
7847
|
7849
|
#else
|
7848
|
7850
|
current_position[axis] = stepper.get_axis_position_mm(axis); // CORE handled transparently
|
7849
|
7851
|
#endif
|