diff --git a/Marlin/src/feature/bedlevel/abl/abl.cpp b/Marlin/src/feature/bedlevel/abl/abl.cpp index 044adc5d3..f1e736c88 100644 --- a/Marlin/src/feature/bedlevel/abl/abl.cpp +++ b/Marlin/src/feature/bedlevel/abl/abl.cpp @@ -25,6 +25,7 @@ #if ENABLED(AUTO_BED_LEVELING_BILINEAR) #include "abl.h" +#include "../bedlevel.h" #include "../../../module/motion.h" diff --git a/Marlin/src/feature/bedlevel/abl/abl.h b/Marlin/src/feature/bedlevel/abl/abl.h index 8a82bfb3b..26a535064 100644 --- a/Marlin/src/feature/bedlevel/abl/abl.h +++ b/Marlin/src/feature/bedlevel/abl/abl.h @@ -21,27 +21,23 @@ */ #pragma once -#include "../../../inc/MarlinConfig.h" +#include "../../../inc/MarlinConfigPre.h" -#if ENABLED(AUTO_BED_LEVELING_BILINEAR) +extern int bilinear_grid_spacing[2], bilinear_start[2]; +extern float bilinear_grid_factor[2], + z_values[GRID_MAX_POINTS_X][GRID_MAX_POINTS_Y]; +float bilinear_z_offset(const float raw[XYZ]); - #include "../bedlevel.h" +void extrapolate_unprobed_bed_level(); +void print_bilinear_leveling_grid(); +void refresh_bed_level(); +#if ENABLED(ABL_BILINEAR_SUBDIVISION) + void print_bilinear_leveling_grid_virt(); + void bed_level_virt_interpolate(); +#endif - extern int bilinear_grid_spacing[2], bilinear_start[2]; - extern float bilinear_grid_factor[2], - z_values[GRID_MAX_POINTS_X][GRID_MAX_POINTS_Y]; - float bilinear_z_offset(const float raw[XYZ]); +#if IS_CARTESIAN && DISABLED(SEGMENT_LEVELED_MOVES) + void bilinear_line_to_destination(const float fr_mm_s, uint16_t x_splits=0xFFFF, uint16_t y_splits=0xFFFF); +#endif - void extrapolate_unprobed_bed_level(); - void print_bilinear_leveling_grid(); - void refresh_bed_level(); - #if ENABLED(ABL_BILINEAR_SUBDIVISION) - void print_bilinear_leveling_grid_virt(); - void bed_level_virt_interpolate(); - #endif - - #if IS_CARTESIAN && DISABLED(SEGMENT_LEVELED_MOVES) - void bilinear_line_to_destination(const float fr_mm_s, uint16_t x_splits=0xFFFF, uint16_t y_splits=0xFFFF); - #endif - -#endif // AUTO_BED_LEVELING_BILINEAR +#define Z_VALUES(X,Y) z_values[X][Y] diff --git a/Marlin/src/feature/bedlevel/bedlevel.h b/Marlin/src/feature/bedlevel/bedlevel.h index d9c5cdee7..b57ed696f 100644 --- a/Marlin/src/feature/bedlevel/bedlevel.h +++ b/Marlin/src/feature/bedlevel/bedlevel.h @@ -80,6 +80,6 @@ void reset_bed_level(); #include "mbl/mesh_bed_leveling.h" #elif ENABLED(AUTO_BED_LEVELING_UBL) #include "ubl/ubl.h" -#elif HAS_ABL +#elif ENABLED(AUTO_BED_LEVELING_BILINEAR) #include "abl/abl.h" #endif diff --git a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h index 22563e9d9..81548f2e4 100644 --- a/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h +++ b/Marlin/src/feature/bedlevel/mbl/mesh_bed_leveling.h @@ -118,3 +118,5 @@ public: }; extern mesh_bed_leveling mbl; + +#define Z_VALUES(X,Y) mbl.z_values[X][Y] diff --git a/Marlin/src/feature/bedlevel/ubl/ubl.h b/Marlin/src/feature/bedlevel/ubl/ubl.h index 6f2cfb1ac..805469b8d 100644 --- a/Marlin/src/feature/bedlevel/ubl/ubl.h +++ b/Marlin/src/feature/bedlevel/ubl/ubl.h @@ -370,3 +370,5 @@ class unified_bed_leveling { }; // class unified_bed_leveling extern unified_bed_leveling ubl; + +#define Z_VALUES(X,Y) ubl.z_values[X][Y] diff --git a/Marlin/src/gcode/bedlevel/M420.cpp b/Marlin/src/gcode/bedlevel/M420.cpp index bdf33a0a2..4144fadcd 100644 --- a/Marlin/src/gcode/bedlevel/M420.cpp +++ b/Marlin/src/gcode/bedlevel/M420.cpp @@ -105,12 +105,6 @@ void GcodeSuite::M420() { #if HAS_MESH - #if ENABLED(MESH_BED_LEVELING) - #define Z_VALUES(X,Y) mbl.z_values[X][Y] - #else - #define Z_VALUES(X,Y) z_values[X][Y] - #endif - // Subtract the given value or the mean from all mesh values if (leveling_is_valid() && parser.seen('C')) { const float cval = parser.value_float(); diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index af1832fd3..9a8a508aa 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -19,15 +19,13 @@ * along with this program. If not, see . * */ +#pragma once /** * Conditionals_LCD.h * Conditionals that need to be set before Configuration_adv.h or pins.h */ -#ifndef CONDITIONALS_LCD_H // Get the LCD defines which are needed first -#define CONDITIONALS_LCD_H - #define LCD_HAS_DIRECTIONAL_BUTTONS (BUTTON_EXISTS(UP) || BUTTON_EXISTS(DWN) || BUTTON_EXISTS(LFT) || BUTTON_EXISTS(RT)) #if ENABLED(CARTESIO_UI) @@ -557,6 +555,10 @@ #define HOMING_Z_WITH_PROBE (HAS_BED_PROBE && Z_HOME_DIR < 0 && ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)) +#ifdef GRID_MAX_POINTS_X + #define GRID_MAX_POINTS ((GRID_MAX_POINTS_X) * (GRID_MAX_POINTS_Y)) +#endif + #define HAS_SOFTWARE_ENDSTOPS (ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS)) #define HAS_RESUME_CONTINUE (ENABLED(EXTENSIBLE_UI) || ENABLED(NEWPANEL) || ENABLED(EMERGENCY_PARSER)) #define HAS_COLOR_LEDS (ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED)) @@ -566,4 +568,6 @@ #define Z_MULTI_STEPPER_DRIVERS (ENABLED(Z_DUAL_STEPPER_DRIVERS) || ENABLED(Z_TRIPLE_STEPPER_DRIVERS)) #define Z_MULTI_ENDSTOPS (ENABLED(Z_DUAL_ENDSTOPS) || ENABLED(Z_TRIPLE_ENDSTOPS)) -#endif // CONDITIONALS_LCD_H +#define IS_SCARA (ENABLED(MORGAN_SCARA) || ENABLED(MAKERARM_SCARA)) +#define IS_KINEMATIC (ENABLED(DELTA) || IS_SCARA) +#define IS_CARTESIAN !IS_KINEMATIC diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index f086bea98..b331c1c23 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -43,10 +43,6 @@ #define NOT_A_PIN 0 // For PINS_DEBUGGING #endif -#define IS_SCARA (ENABLED(MORGAN_SCARA) || ENABLED(MAKERARM_SCARA)) -#define IS_KINEMATIC (ENABLED(DELTA) || IS_SCARA) -#define IS_CARTESIAN !IS_KINEMATIC - #define HAS_CLASSIC_JERK (IS_KINEMATIC || DISABLED(JUNCTION_DEVIATION)) /** @@ -1538,9 +1534,6 @@ #define LCD_TIMEOUT_TO_STATUS 15000 #endif -// Shorthand -#define GRID_MAX_POINTS ((GRID_MAX_POINTS_X) * (GRID_MAX_POINTS_Y)) - // Add commands that need sub-codes to this list #define USE_GCODE_SUBCODES ENABLED(G38_PROBE_TARGET) || ENABLED(CNC_COORDINATE_SYSTEMS) || ENABLED(POWER_LOSS_RECOVERY) diff --git a/Marlin/src/lcd/ultralcd.h b/Marlin/src/lcd/ultralcd.h index 7d36aaeae..49cb32fdc 100644 --- a/Marlin/src/lcd/ultralcd.h +++ b/Marlin/src/lcd/ultralcd.h @@ -320,8 +320,6 @@ #if ENABLED(AUTO_BED_LEVELING_UBL) void lcd_mesh_edit_setup(const float &initial); float lcd_mesh_edit(); - void lcd_z_offset_edit_setup(const float &initial); - float lcd_z_offset_edit(); #endif #if ENABLED(SCROLL_LONG_FILENAMES)