From 17cc2a96639ec11c4c67bcd038e56f97b12e1bb8 Mon Sep 17 00:00:00 2001 From: jbrazio Date: Mon, 29 Feb 2016 15:48:26 +0000 Subject: [PATCH 1/2] Z_RAISE_AFTER_PROBING value was being ignored by Marlin because raise_z_after_probing() was only called if the printer type was set to a DELTA or if the printer had a docking sled for the probe. --- Marlin/Marlin_main.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index aedcc8c15..bea1a4e8f 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -3198,6 +3198,8 @@ inline void gcode_G28() { // Sled assembly for Cartesian bots #if ENABLED(Z_PROBE_SLED) dock_sled(true); // dock the sled + #elif Z_RAISE_AFTER_PROBING > 0 + raise_z_after_probing(); #endif #endif // !DELTA From 67e15aac3d7901b7faee6a561f48e6e073024a22 Mon Sep 17 00:00:00 2001 From: jbrazio Date: Tue, 1 Mar 2016 00:22:48 +0000 Subject: [PATCH 2/2] As pointed out by @Blue-Marlin the previous code would raise the Z axis twice for a servo based probe. --- Marlin/Marlin_main.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index bea1a4e8f..01c3641ec 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -3199,7 +3199,10 @@ inline void gcode_G28() { #if ENABLED(Z_PROBE_SLED) dock_sled(true); // dock the sled #elif Z_RAISE_AFTER_PROBING > 0 - raise_z_after_probing(); + // Raise Z axis for non-delta and non servo based probes + #if !defined(HAS_SERVO_ENDSTOPS) && DISABLED(Z_PROBE_ALLEN_KEY) && DISABLED(Z_PROBE_SLED) + raise_z_after_probing(); + #endif #endif #endif // !DELTA