|
@@ -378,13 +378,21 @@ bool set_probe_deployed(const bool deploy) {
|
378
|
378
|
|
379
|
379
|
// Make room for probe to deploy (or stow)
|
380
|
380
|
// Fix-mounted probe should only raise for deploy
|
381
|
|
- if (
|
382
|
|
- #if ENABLED(FIX_MOUNTED_PROBE)
|
383
|
|
- deploy
|
384
|
|
- #else
|
385
|
|
- true
|
386
|
|
- #endif
|
387
|
|
- ) do_probe_raise(max(Z_CLEARANCE_BETWEEN_PROBES, Z_CLEARANCE_DEPLOY_PROBE));
|
|
381
|
+ #if ENABLED(FIX_MOUNTED_PROBE)
|
|
382
|
+ const bool deploy_stow_condition = deploy;
|
|
383
|
+ #else
|
|
384
|
+ constexpr bool deploy_stow_condition = true;
|
|
385
|
+ #endif
|
|
386
|
+
|
|
387
|
+ // For beds that fall when Z is powered off only raise for trusted Z
|
|
388
|
+ #if ENABLED(UNKNOWN_Z_NO_RAISE)
|
|
389
|
+ const bool unknown_condition = axis_known_position[Z_AXIS];
|
|
390
|
+ #else
|
|
391
|
+ constexpr float unknown_condition = true;
|
|
392
|
+ #endif
|
|
393
|
+
|
|
394
|
+ if (deploy_stow_condition && unknown_condition)
|
|
395
|
+ do_probe_raise(max(Z_CLEARANCE_BETWEEN_PROBES, Z_CLEARANCE_DEPLOY_PROBE));
|
388
|
396
|
|
389
|
397
|
#if ENABLED(Z_PROBE_SLED) || ENABLED(Z_PROBE_ALLEN_KEY)
|
390
|
398
|
#if ENABLED(Z_PROBE_SLED)
|