Browse Source

Simplify PLR homing when Z homes to max (#13718)

Robby Candra 6 years ago
parent
commit
35160dfb7a
1 changed files with 17 additions and 7 deletions
  1. 17
    7
      Marlin/src/feature/power_loss_recovery.cpp

+ 17
- 7
Marlin/src/feature/power_loss_recovery.cpp View File

245
     gcode.process_subcommands_now_P(PSTR("M420 S0 Z0"));
245
     gcode.process_subcommands_now_P(PSTR("M420 S0 Z0"));
246
   #endif
246
   #endif
247
 
247
 
248
-  // Set Z to 0, raise Z by RECOVERY_ZRAISE, and Home (XY only for Cartesian)
249
-  // with no raise. (Only do simulated homing in Marlin Dev Mode.)
250
-  gcode.process_subcommands_now_P(PSTR("G92.9 E0 Z0\nG1 Z" STRINGIFY(RECOVERY_ZRAISE) "\nG28 R0"
251
-    #if ENABLED(MARLIN_DEV_MODE)
252
-      " S"
253
-    #elif !IS_KINEMATIC
254
-      " X Y"
248
+  // Reset E, raise Z, home XY...
249
+  gcode.process_subcommands_now_P(PSTR("G92.9 E0"
250
+    #if Z_HOME_DIR > 0
251
+      // If Z homing goes to max, reset E and home all
252
+      "\nG28R0"
253
+      #if ENABLED(MARLIN_DEV_MODE)
254
+        "S"
255
+      #endif
256
+    #else
257
+      // Set Z to 0, raise Z by RECOVERY_ZRAISE, and Home (XY only for Cartesian)
258
+      // with no raise. (Only do simulated homing in Marlin Dev Mode.)
259
+      "Z0\nG1Z" STRINGIFY(RECOVERY_ZRAISE) "\nG28R0"
260
+      #if ENABLED(MARLIN_DEV_MODE)
261
+        "S"
262
+      #elif !IS_KINEMATIC
263
+        "XY"
264
+      #endif
255
     #endif
265
     #endif
256
   ));
266
   ));
257
 
267
 

Loading…
Cancel
Save