G34 Auto-align multi-stepper Z axis (#11302)

This commit is contained in:
TheLongAndOnly
2018-10-29 20:01:36 +01:00
committed by Scott Lahteine
parent f9b80e7217
commit 5536228359
72 changed files with 1434 additions and 29 deletions

View File

@@ -1632,4 +1632,12 @@
#define USE_EXECUTE_COMMANDS_IMMEDIATE
#endif
#if ENABLED(Z_TRIPLE_STEPPER_DRIVERS)
#define Z_STEPPER_COUNT 3
#elif ENABLED(Z_DUAL_STEPPER_DRIVERS)
#define Z_STEPPER_COUNT 2
#else
#define Z_STEPPER_COUNT 1
#endif
#endif // CONDITIONALS_POST_H

View File

@@ -1880,6 +1880,19 @@ static_assert(COUNT(sanity_arr_3) <= XYZE_N, "DEFAULT_MAX_ACCELERATION has too m
#error "FAST_PWM_FAN only supported by 8 bit CPUs."
#endif
#if ENABLED(Z_STEPPER_AUTO_ALIGN)
#if !Z_MULTI_STEPPER_DRIVERS
#error "Z_STEPPER_AUTO_ALIGN requires Z_DUAL_STEPPER_DRIVERS or Z_TRIPLE_STEPPER_DRIVERS."
#elif !HAS_BED_PROBE
#error "Z_STEPPER_AUTO_ALIGN requires a Z-bed probe."
#endif
constexpr float sanity_arr_z_align_x[] = Z_STEPPER_ALIGN_X, sanity_arr_z_align_y[] = Z_STEPPER_ALIGN_Y;
static_assert(
COUNT(sanity_arr_z_align_x) == Z_STEPPER_COUNT && COUNT(sanity_arr_z_align_y) == Z_STEPPER_COUNT,
"Z_STEPPER_ALIGN_[XY]POS settings require one element per Z stepper."
);
#endif
#if ENABLED(PRINTCOUNTER) && DISABLED(EEPROM_SETTINGS)
#error "PRINTCOUNTER requires EEPROM_SETTINGS. Please update your Configuration."
#endif