|
@@ -510,7 +510,7 @@ void do_z_clearance(const float &zclear, const bool z_known/*=true*/, const bool
|
510
|
510
|
const bool rel = raise_on_unknown && !z_known;
|
511
|
511
|
float zdest = zclear + (rel ? current_position.z : 0.0f);
|
512
|
512
|
if (!lower_allowed) NOLESS(zdest, current_position.z);
|
513
|
|
- do_blocking_move_to_z(_MIN(zdest, Z_MAX_POS), MMM_TO_MMS(Z_PROBE_SPEED_FAST));
|
|
513
|
+ do_blocking_move_to_z(_MIN(zdest, Z_MAX_POS), MMM_TO_MMS(TERN(HAS_BED_PROBE, Z_PROBE_SPEED_FAST, HOMING_FEEDRATE_Z)));
|
514
|
514
|
}
|
515
|
515
|
|
516
|
516
|
//
|
|
@@ -1126,8 +1126,9 @@ bool homing_needed_error(uint8_t axis_bits/*=0x07*/) {
|
1126
|
1126
|
* Homing bump feedrate (mm/s)
|
1127
|
1127
|
*/
|
1128
|
1128
|
feedRate_t get_homing_bump_feedrate(const AxisEnum axis) {
|
1129
|
|
- if (TERN0(HOMING_Z_WITH_PROBE, axis == Z_AXIS))
|
1130
|
|
- return MMM_TO_MMS(Z_PROBE_SPEED_SLOW);
|
|
1129
|
+ #if HOMING_Z_WITH_PROBE
|
|
1130
|
+ if (axis == Z_AXIS) return MMM_TO_MMS(Z_PROBE_SPEED_SLOW);
|
|
1131
|
+ #endif
|
1131
|
1132
|
static const uint8_t homing_bump_divisor[] PROGMEM = HOMING_BUMP_DIVISOR;
|
1132
|
1133
|
uint8_t hbd = pgm_read_byte(&homing_bump_divisor[axis]);
|
1133
|
1134
|
if (hbd < 1) {
|
|
@@ -1588,7 +1589,7 @@ void homeaxis(const AxisEnum axis) {
|
1588
|
1589
|
// When homing Z with probe respect probe clearance
|
1589
|
1590
|
const bool use_probe_bump = TERN0(HOMING_Z_WITH_PROBE, axis == Z_AXIS && home_bump_mm(Z_AXIS));
|
1590
|
1591
|
const float bump = axis_home_dir * (
|
1591
|
|
- use_probe_bump ? _MAX(Z_CLEARANCE_BETWEEN_PROBES, home_bump_mm(Z_AXIS)) : home_bump_mm(axis)
|
|
1592
|
+ use_probe_bump ? _MAX(TERN0(HOMING_Z_WITH_PROBE, Z_CLEARANCE_BETWEEN_PROBES), home_bump_mm(Z_AXIS)) : home_bump_mm(axis)
|
1592
|
1593
|
);
|
1593
|
1594
|
|
1594
|
1595
|
// If a second homing move is configured...
|