Merge pull request #8318 from thinkyhead/bf1_sprintf_p_fix
[1.1] Patch G33 misuse of PROBE_MANUALLY
This commit is contained in:
commit
50a1352f7f
@ -453,13 +453,6 @@
|
|||||||
*/
|
*/
|
||||||
#define HAS_Z_SERVO_ENDSTOP (defined(Z_ENDSTOP_SERVO_NR) && Z_ENDSTOP_SERVO_NR >= 0)
|
#define HAS_Z_SERVO_ENDSTOP (defined(Z_ENDSTOP_SERVO_NR) && Z_ENDSTOP_SERVO_NR >= 0)
|
||||||
|
|
||||||
/**
|
|
||||||
* UBL has its own manual probing, so this just causes trouble.
|
|
||||||
*/
|
|
||||||
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
|
||||||
#undef PROBE_MANUALLY
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set a flag for any enabled probe
|
* Set a flag for any enabled probe
|
||||||
*/
|
*/
|
||||||
|
@ -854,10 +854,23 @@
|
|||||||
#define QUIET_PROBING (HAS_BED_PROBE && (ENABLED(PROBING_HEATERS_OFF) || ENABLED(PROBING_FANS_OFF) || DELAY_BEFORE_PROBING > 0))
|
#define QUIET_PROBING (HAS_BED_PROBE && (ENABLED(PROBING_HEATERS_OFF) || ENABLED(PROBING_FANS_OFF) || DELAY_BEFORE_PROBING > 0))
|
||||||
#define HEATER_IDLE_HANDLER (ENABLED(ADVANCED_PAUSE_FEATURE) || ENABLED(PROBING_HEATERS_OFF))
|
#define HEATER_IDLE_HANDLER (ENABLED(ADVANCED_PAUSE_FEATURE) || ENABLED(PROBING_HEATERS_OFF))
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Only constrain Z on DELTA / SCARA machines
|
||||||
|
*/
|
||||||
|
#if IS_KINEMATIC
|
||||||
|
#undef MIN_SOFTWARE_ENDSTOP_X
|
||||||
|
#undef MIN_SOFTWARE_ENDSTOP_Y
|
||||||
|
#undef MAX_SOFTWARE_ENDSTOP_X
|
||||||
|
#undef MAX_SOFTWARE_ENDSTOP_Y
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delta radius/rod trimmers/angle trimmers
|
* Delta radius/rod trimmers/angle trimmers
|
||||||
*/
|
*/
|
||||||
#if ENABLED(DELTA)
|
#if ENABLED(DELTA)
|
||||||
|
#ifndef DELTA_PROBEABLE_RADIUS
|
||||||
|
#define DELTA_PROBEABLE_RADIUS DELTA_PRINTABLE_RADIUS
|
||||||
|
#endif
|
||||||
#ifndef DELTA_CALIBRATION_RADIUS
|
#ifndef DELTA_CALIBRATION_RADIUS
|
||||||
#define DELTA_CALIBRATION_RADIUS DELTA_PRINTABLE_RADIUS - 10
|
#define DELTA_CALIBRATION_RADIUS DELTA_PRINTABLE_RADIUS - 10
|
||||||
#endif
|
#endif
|
||||||
@ -878,7 +891,6 @@
|
|||||||
/**
|
/**
|
||||||
* Set granular options based on the specific type of leveling
|
* Set granular options based on the specific type of leveling
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define UBL_DELTA (ENABLED(AUTO_BED_LEVELING_UBL) && (ENABLED(DELTA) || ENABLED(UBL_GRANULAR_SEGMENTATION_FOR_CARTESIAN)))
|
#define UBL_DELTA (ENABLED(AUTO_BED_LEVELING_UBL) && (ENABLED(DELTA) || ENABLED(UBL_GRANULAR_SEGMENTATION_FOR_CARTESIAN)))
|
||||||
#define ABL_PLANAR (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_3POINT))
|
#define ABL_PLANAR (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_3POINT))
|
||||||
#define ABL_GRID (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR))
|
#define ABL_GRID (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR))
|
||||||
@ -977,6 +989,18 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* VIKI2, miniVIKI, and AZSMZ_12864 require DOGLCD_SCK and DOGLCD_MOSI to be defined.
|
||||||
|
*/
|
||||||
|
#if ENABLED(VIKI2) || ENABLED(miniVIKI) || ENABLED(AZSMZ_12864)
|
||||||
|
#ifndef DOGLCD_SCK
|
||||||
|
#define DOGLCD_SCK SCK_PIN
|
||||||
|
#endif
|
||||||
|
#ifndef DOGLCD_MOSI
|
||||||
|
#define DOGLCD_MOSI MOSI_PIN
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Z_HOMING_HEIGHT / Z_CLEARANCE_BETWEEN_PROBES
|
* Z_HOMING_HEIGHT / Z_CLEARANCE_BETWEEN_PROBES
|
||||||
*/
|
*/
|
||||||
@ -1038,11 +1062,6 @@
|
|||||||
// Add commands that need sub-codes to this list
|
// Add commands that need sub-codes to this list
|
||||||
#define USE_GCODE_SUBCODES ENABLED(G38_PROBE_TARGET) || ENABLED(CNC_COORDINATE_SYSTEMS)
|
#define USE_GCODE_SUBCODES ENABLED(G38_PROBE_TARGET) || ENABLED(CNC_COORDINATE_SYSTEMS)
|
||||||
|
|
||||||
// MESH_BED_LEVELING overrides PROBE_MANUALLY
|
|
||||||
#if ENABLED(MESH_BED_LEVELING)
|
|
||||||
#undef PROBE_MANUALLY
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Parking Extruder
|
// Parking Extruder
|
||||||
#if ENABLED(PARKING_EXTRUDER)
|
#if ENABLED(PARKING_EXTRUDER)
|
||||||
#ifndef PARKING_EXTRUDER_GRAB_DISTANCE
|
#ifndef PARKING_EXTRUDER_GRAB_DISTANCE
|
||||||
|
@ -5450,9 +5450,7 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
|
|
||||||
#endif // HAS_BED_PROBE
|
#endif // HAS_BED_PROBE
|
||||||
|
|
||||||
#if PROBE_SELECTED
|
#if ENABLED(DELTA_AUTO_CALIBRATION)
|
||||||
|
|
||||||
#if ENABLED(DELTA_AUTO_CALIBRATION)
|
|
||||||
|
|
||||||
constexpr uint8_t _7P_STEP = 1, // 7-point step - to change number of calibration points
|
constexpr uint8_t _7P_STEP = 1, // 7-point step - to change number of calibration points
|
||||||
_4P_STEP = _7P_STEP * 2, // 4-point step
|
_4P_STEP = _7P_STEP * 2, // 4-point step
|
||||||
@ -5567,7 +5565,7 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
_7p_6_centre = probe_points >= 5 && probe_points <= 7,
|
_7p_6_centre = probe_points >= 5 && probe_points <= 7,
|
||||||
_7p_9_centre = probe_points >= 8;
|
_7p_9_centre = probe_points >= 8;
|
||||||
|
|
||||||
#if DISABLED(PROBE_MANUALLY)
|
#if HAS_BED_PROBE
|
||||||
const float dx = (X_PROBE_OFFSET_FROM_EXTRUDER),
|
const float dx = (X_PROBE_OFFSET_FROM_EXTRUDER),
|
||||||
dy = (Y_PROBE_OFFSET_FROM_EXTRUDER);
|
dy = (Y_PROBE_OFFSET_FROM_EXTRUDER);
|
||||||
#endif
|
#endif
|
||||||
@ -5578,10 +5576,10 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
|
|
||||||
if (!_7p_no_intermediates && !_7p_4_intermediates && !_7p_11_intermediates) { // probe the center
|
if (!_7p_no_intermediates && !_7p_4_intermediates && !_7p_11_intermediates) { // probe the center
|
||||||
z_at_pt[CEN] +=
|
z_at_pt[CEN] +=
|
||||||
#if ENABLED(PROBE_MANUALLY)
|
#if HAS_BED_PROBE
|
||||||
lcd_probe_pt(0, 0)
|
|
||||||
#else
|
|
||||||
probe_pt(dx, dy, stow_after_each, 1, false)
|
probe_pt(dx, dy, stow_after_each, 1, false)
|
||||||
|
#else
|
||||||
|
lcd_probe_pt(0, 0)
|
||||||
#endif
|
#endif
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
@ -5593,10 +5591,10 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
const float a = RADIANS(210 + (360 / NPP) * (axis - 1)),
|
const float a = RADIANS(210 + (360 / NPP) * (axis - 1)),
|
||||||
r = delta_calibration_radius * 0.1;
|
r = delta_calibration_radius * 0.1;
|
||||||
z_at_pt[CEN] +=
|
z_at_pt[CEN] +=
|
||||||
#if ENABLED(PROBE_MANUALLY)
|
#if HAS_BED_PROBE
|
||||||
lcd_probe_pt(cos(a) * r, sin(a) * r)
|
|
||||||
#else
|
|
||||||
probe_pt(cos(a) * r + dx, sin(a) * r + dy, stow_after_each, 1)
|
probe_pt(cos(a) * r + dx, sin(a) * r + dy, stow_after_each, 1)
|
||||||
|
#else
|
||||||
|
lcd_probe_pt(cos(a) * r, sin(a) * r)
|
||||||
#endif
|
#endif
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
@ -5622,10 +5620,10 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
r = delta_calibration_radius * (1 + 0.1 * (zig_zag ? circle : - circle)),
|
r = delta_calibration_radius * (1 + 0.1 * (zig_zag ? circle : - circle)),
|
||||||
interpol = fmod(axis, 1);
|
interpol = fmod(axis, 1);
|
||||||
const float z_temp =
|
const float z_temp =
|
||||||
#if ENABLED(PROBE_MANUALLY)
|
#if HAS_BED_PROBE
|
||||||
lcd_probe_pt(cos(a) * r, sin(a) * r)
|
|
||||||
#else
|
|
||||||
probe_pt(cos(a) * r + dx, sin(a) * r + dy, stow_after_each, 1)
|
probe_pt(cos(a) * r + dx, sin(a) * r + dy, stow_after_each, 1)
|
||||||
|
#else
|
||||||
|
lcd_probe_pt(cos(a) * r, sin(a) * r)
|
||||||
#endif
|
#endif
|
||||||
;
|
;
|
||||||
// split probe point to neighbouring calibration points
|
// split probe point to neighbouring calibration points
|
||||||
@ -5656,7 +5654,7 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
return 0.00001;
|
return 0.00001;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if DISABLED(PROBE_MANUALLY)
|
#if HAS_BED_PROBE
|
||||||
|
|
||||||
static void G33_auto_tune() {
|
static void G33_auto_tune() {
|
||||||
float z_at_pt[NPP + 1] = { 0.0 },
|
float z_at_pt[NPP + 1] = { 0.0 },
|
||||||
@ -5780,7 +5778,7 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
SERIAL_EOL();
|
SERIAL_EOL();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // !PROBE_MANUALLY
|
#endif // HAS_BED_PROBE
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* G33 - Delta '1-4-7-point' Auto-Calibration
|
* G33 - Delta '1-4-7-point' Auto-Calibration
|
||||||
@ -5902,10 +5900,10 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (auto_tune) {
|
if (auto_tune) {
|
||||||
#if ENABLED(PROBE_MANUALLY)
|
#if HAS_BED_PROBE
|
||||||
SERIAL_PROTOCOLLNPGM("A probe is needed for auto-tune");
|
|
||||||
#else
|
|
||||||
G33_auto_tune();
|
G33_auto_tune();
|
||||||
|
#else
|
||||||
|
SERIAL_PROTOCOLLNPGM("A probe is needed for auto-tune");
|
||||||
#endif
|
#endif
|
||||||
G33_CLEANUP();
|
G33_CLEANUP();
|
||||||
return;
|
return;
|
||||||
@ -5970,7 +5968,7 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
#define Z2(I) ZP(2, I)
|
#define Z2(I) ZP(2, I)
|
||||||
#define Z1(I) ZP(1, I)
|
#define Z1(I) ZP(1, I)
|
||||||
|
|
||||||
#if ENABLED(PROBE_MANUALLY)
|
#if !HAS_BED_PROBE
|
||||||
test_precision = 0.00; // forced end
|
test_precision = 0.00; // forced end
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -6052,7 +6050,7 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
if ((zero_std_dev >= test_precision && iterations > force_iterations) || zero_std_dev <= calibration_precision) { // end iterations
|
if ((zero_std_dev >= test_precision && iterations > force_iterations) || zero_std_dev <= calibration_precision) { // end iterations
|
||||||
SERIAL_PROTOCOLPGM("Calibration OK");
|
SERIAL_PROTOCOLPGM("Calibration OK");
|
||||||
SERIAL_PROTOCOL_SP(32);
|
SERIAL_PROTOCOL_SP(32);
|
||||||
#if DISABLED(PROBE_MANUALLY)
|
#if HAS_BED_PROBE
|
||||||
if (zero_std_dev >= test_precision && !_1p_calibration)
|
if (zero_std_dev >= test_precision && !_1p_calibration)
|
||||||
SERIAL_PROTOCOLPGM("rolling back.");
|
SERIAL_PROTOCOLPGM("rolling back.");
|
||||||
else
|
else
|
||||||
@ -6117,9 +6115,7 @@ void home_all_axes() { gcode_G28(true); }
|
|||||||
G33_CLEANUP();
|
G33_CLEANUP();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // DELTA_AUTO_CALIBRATION
|
#endif // DELTA_AUTO_CALIBRATION
|
||||||
|
|
||||||
#endif // PROBE_SELECTED
|
|
||||||
|
|
||||||
#if ENABLED(G38_PROBE_TARGET)
|
#if ENABLED(G38_PROBE_TARGET)
|
||||||
|
|
||||||
|
@ -567,10 +567,8 @@ static_assert(1 >= 0
|
|||||||
#error "You probably want to use Max Endstops for DELTA!"
|
#error "You probably want to use Max Endstops for DELTA!"
|
||||||
#elif ENABLED(ENABLE_LEVELING_FADE_HEIGHT) && DISABLED(AUTO_BED_LEVELING_BILINEAR) && !UBL_DELTA
|
#elif ENABLED(ENABLE_LEVELING_FADE_HEIGHT) && DISABLED(AUTO_BED_LEVELING_BILINEAR) && !UBL_DELTA
|
||||||
#error "ENABLE_LEVELING_FADE_HEIGHT on DELTA requires AUTO_BED_LEVELING_BILINEAR or AUTO_BED_LEVELING_UBL."
|
#error "ENABLE_LEVELING_FADE_HEIGHT on DELTA requires AUTO_BED_LEVELING_BILINEAR or AUTO_BED_LEVELING_UBL."
|
||||||
#elif ENABLED(DELTA_AUTO_CALIBRATION) && !PROBE_SELECTED
|
#elif ENABLED(DELTA_AUTO_CALIBRATION) && !(HAS_BED_PROBE || ENABLED(ULTIPANEL))
|
||||||
#error "DELTA_AUTO_CALIBRATION requires a probe: PROBE_MANUALLY, FIX_MOUNTED_PROBE, BLTOUCH, SOLENOID_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, Z Servo."
|
#error "DELTA_AUTO_CALIBRATION requires either a probe or an LCD Controller."
|
||||||
#elif ENABLED(DELTA_AUTO_CALIBRATION) && ENABLED(PROBE_MANUALLY) && DISABLED(ULTIPANEL)
|
|
||||||
#error "DELTA_AUTO_CALIBRATION requires an LCD controller with PROBE_MANUALLY."
|
|
||||||
#elif ABL_GRID
|
#elif ABL_GRID
|
||||||
#if (GRID_MAX_POINTS_X & 1) == 0 || (GRID_MAX_POINTS_Y & 1) == 0
|
#if (GRID_MAX_POINTS_X & 1) == 0 || (GRID_MAX_POINTS_Y & 1) == 0
|
||||||
#error "DELTA requires GRID_MAX_POINTS_X and GRID_MAX_POINTS_Y to be odd numbers."
|
#error "DELTA requires GRID_MAX_POINTS_X and GRID_MAX_POINTS_Y to be odd numbers."
|
||||||
@ -612,7 +610,7 @@ static_assert(1 >= 0
|
|||||||
, "Please enable only one probe option: PROBE_MANUALLY, FIX_MOUNTED_PROBE, BLTOUCH, SOLENOID_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, or Z Servo."
|
, "Please enable only one probe option: PROBE_MANUALLY, FIX_MOUNTED_PROBE, BLTOUCH, SOLENOID_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, or Z Servo."
|
||||||
);
|
);
|
||||||
|
|
||||||
#if PROBE_SELECTED
|
#if HAS_BED_PROBE
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Z_PROBE_SLED is incompatible with DELTA
|
* Z_PROBE_SLED is incompatible with DELTA
|
||||||
@ -660,14 +658,14 @@ static_assert(1 >= 0
|
|||||||
#if !HAS_Z_MIN_PROBE_PIN
|
#if !HAS_Z_MIN_PROBE_PIN
|
||||||
#error "Z_MIN_PROBE_ENDSTOP requires the Z_MIN_PROBE_PIN to be defined."
|
#error "Z_MIN_PROBE_ENDSTOP requires the Z_MIN_PROBE_PIN to be defined."
|
||||||
#endif
|
#endif
|
||||||
#elif DISABLED(PROBE_MANUALLY)
|
#else
|
||||||
#error "You must enable either Z_MIN_PROBE_ENDSTOP or Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN to use a probe."
|
#error "You must enable either Z_MIN_PROBE_ENDSTOP or Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN to use a probe."
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Make sure Z raise values are set
|
* Make sure Z raise values are set
|
||||||
*/
|
*/
|
||||||
#if !defined(Z_CLEARANCE_DEPLOY_PROBE)
|
#ifndef Z_CLEARANCE_DEPLOY_PROBE
|
||||||
#error "You must define Z_CLEARANCE_DEPLOY_PROBE in your configuration."
|
#error "You must define Z_CLEARANCE_DEPLOY_PROBE in your configuration."
|
||||||
#elif !defined(Z_CLEARANCE_BETWEEN_PROBES)
|
#elif !defined(Z_CLEARANCE_BETWEEN_PROBES)
|
||||||
#error "You must define Z_CLEARANCE_BETWEEN_PROBES in your configuration."
|
#error "You must define Z_CLEARANCE_BETWEEN_PROBES in your configuration."
|
||||||
@ -682,14 +680,14 @@ static_assert(1 >= 0
|
|||||||
/**
|
/**
|
||||||
* Require some kind of probe for bed leveling and probe testing
|
* Require some kind of probe for bed leveling and probe testing
|
||||||
*/
|
*/
|
||||||
#if OLDSCHOOL_ABL
|
#if OLDSCHOOL_ABL && !PROBE_SELECTED
|
||||||
#error "Auto Bed Leveling requires one of these: PROBE_MANUALLY, FIX_MOUNTED_PROBE, BLTOUCH, SOLENOID_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, or a Z Servo."
|
#error "Auto Bed Leveling requires one of these: PROBE_MANUALLY, FIX_MOUNTED_PROBE, BLTOUCH, SOLENOID_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, or a Z Servo."
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST)
|
||||||
|
|
||||||
#if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST) && !HAS_BED_PROBE
|
|
||||||
#error "Z_MIN_PROBE_REPEATABILITY_TEST requires a probe: FIX_MOUNTED_PROBE, BLTOUCH, SOLENOID_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, or Z Servo."
|
#error "Z_MIN_PROBE_REPEATABILITY_TEST requires a probe: FIX_MOUNTED_PROBE, BLTOUCH, SOLENOID_PROBE, Z_PROBE_ALLEN_KEY, Z_PROBE_SLED, or Z Servo."
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -724,6 +722,9 @@ static_assert(1 >= 0
|
|||||||
* Unified Bed Leveling
|
* Unified Bed Leveling
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// Hide PROBE_MANUALLY from the rest of the code
|
||||||
|
#undef PROBE_MANUALLY
|
||||||
|
|
||||||
#if IS_SCARA
|
#if IS_SCARA
|
||||||
#error "AUTO_BED_LEVELING_UBL does not yet support SCARA printers."
|
#error "AUTO_BED_LEVELING_UBL does not yet support SCARA printers."
|
||||||
#elif DISABLED(EEPROM_SETTINGS)
|
#elif DISABLED(EEPROM_SETTINGS)
|
||||||
@ -739,7 +740,7 @@ static_assert(1 >= 0
|
|||||||
static_assert(WITHIN(UBL_PROBE_PT_3_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_3_Y can't be reached by the Z probe.");
|
static_assert(WITHIN(UBL_PROBE_PT_3_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_3_Y can't be reached by the Z probe.");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#elif HAS_ABL
|
#elif OLDSCHOOL_ABL
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Auto Bed Leveling
|
* Auto Bed Leveling
|
||||||
@ -788,6 +789,9 @@ static_assert(1 >= 0
|
|||||||
|
|
||||||
#elif ENABLED(MESH_BED_LEVELING)
|
#elif ENABLED(MESH_BED_LEVELING)
|
||||||
|
|
||||||
|
// Hide PROBE_MANUALLY from the rest of the code
|
||||||
|
#undef PROBE_MANUALLY
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Mesh Bed Leveling
|
* Mesh Bed Leveling
|
||||||
*/
|
*/
|
||||||
@ -806,8 +810,8 @@ static_assert(1 >= 0
|
|||||||
#if ENABLED(LCD_BED_LEVELING)
|
#if ENABLED(LCD_BED_LEVELING)
|
||||||
#if DISABLED(ULTIPANEL)
|
#if DISABLED(ULTIPANEL)
|
||||||
#error "LCD_BED_LEVELING requires an LCD controller."
|
#error "LCD_BED_LEVELING requires an LCD controller."
|
||||||
#elif DISABLED(MESH_BED_LEVELING) && !(HAS_ABL && ENABLED(PROBE_MANUALLY))
|
#elif !(ENABLED(MESH_BED_LEVELING) || (OLDSCHOOL_ABL && ENABLED(PROBE_MANUALLY)))
|
||||||
#error "LCD_BED_LEVELING requires MESH_BED_LEVELING or PROBE_MANUALLY with auto bed leveling enabled."
|
#error "LCD_BED_LEVELING requires MESH_BED_LEVELING or ABL with PROBE_MANUALLY."
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -2682,26 +2682,9 @@ void kill_screen(const char* lcd_msg) {
|
|||||||
|
|
||||||
float move_menu_scale;
|
float move_menu_scale;
|
||||||
|
|
||||||
#if ENABLED(DELTA_CALIBRATION_MENU)
|
#if ENABLED(DELTA_CALIBRATION_MENU) || (ENABLED(DELTA_AUTO_CALIBRATION) && !HAS_BED_PROBE)
|
||||||
|
|
||||||
void lcd_move_z();
|
void lcd_move_z();
|
||||||
void lcd_delta_calibrate_menu();
|
|
||||||
|
|
||||||
void _lcd_calibrate_homing() {
|
|
||||||
if (lcdDrawUpdate) lcd_implementation_drawmenu_static(LCD_HEIGHT >= 4 ? 1 : 0, PSTR(MSG_LEVEL_BED_HOMING));
|
|
||||||
lcdDrawUpdate = LCDVIEW_CALL_REDRAW_NEXT;
|
|
||||||
if (axis_homed[X_AXIS] && axis_homed[Y_AXIS] && axis_homed[Z_AXIS])
|
|
||||||
lcd_goto_previous_menu();
|
|
||||||
}
|
|
||||||
|
|
||||||
void _lcd_delta_calibrate_home() {
|
|
||||||
#if HAS_LEVELING
|
|
||||||
reset_bed_level(); // After calibration bed-level data is no longer valid
|
|
||||||
#endif
|
|
||||||
|
|
||||||
enqueue_and_echo_commands_P(PSTR("G28"));
|
|
||||||
lcd_goto_screen(_lcd_calibrate_homing);
|
|
||||||
}
|
|
||||||
|
|
||||||
void _man_probe_pt(const float rx, const float ry) {
|
void _man_probe_pt(const float rx, const float ry) {
|
||||||
#if HAS_LEVELING
|
#if HAS_LEVELING
|
||||||
@ -2719,6 +2702,10 @@ void kill_screen(const char* lcd_msg) {
|
|||||||
lcd_goto_screen(lcd_move_z);
|
lcd_goto_screen(lcd_move_z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif // DELTA_CALIBRATION_MENU || (DELTA_AUTO_CALIBRATION && !HAS_BED_PROBE)
|
||||||
|
|
||||||
|
#if ENABLED(DELTA_AUTO_CALIBRATION) && !HAS_BED_PROBE
|
||||||
|
|
||||||
float lcd_probe_pt(const float &rx, const float &ry) {
|
float lcd_probe_pt(const float &rx, const float &ry) {
|
||||||
_man_probe_pt(rx, ry);
|
_man_probe_pt(rx, ry);
|
||||||
KEEPALIVE_STATE(PAUSED_FOR_USER);
|
KEEPALIVE_STATE(PAUSED_FOR_USER);
|
||||||
@ -2730,6 +2717,26 @@ void kill_screen(const char* lcd_msg) {
|
|||||||
return current_position[Z_AXIS];
|
return current_position[Z_AXIS];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif // DELTA_AUTO_CALIBRATION && !HAS_BED_PROBE
|
||||||
|
|
||||||
|
#if ENABLED(DELTA_CALIBRATION_MENU)
|
||||||
|
|
||||||
|
void _lcd_calibrate_homing() {
|
||||||
|
if (lcdDrawUpdate) lcd_implementation_drawmenu_static(LCD_HEIGHT >= 4 ? 1 : 0, PSTR(MSG_LEVEL_BED_HOMING));
|
||||||
|
lcdDrawUpdate = LCDVIEW_CALL_REDRAW_NEXT;
|
||||||
|
if (axis_homed[X_AXIS] && axis_homed[Y_AXIS] && axis_homed[Z_AXIS])
|
||||||
|
lcd_goto_previous_menu();
|
||||||
|
}
|
||||||
|
|
||||||
|
void _lcd_delta_calibrate_home() {
|
||||||
|
#if HAS_LEVELING
|
||||||
|
reset_bed_level(); // After calibration bed-level data is no longer valid
|
||||||
|
#endif
|
||||||
|
|
||||||
|
enqueue_and_echo_commands_P(PSTR("G28"));
|
||||||
|
lcd_goto_screen(_lcd_calibrate_homing);
|
||||||
|
}
|
||||||
|
|
||||||
void _goto_tower_x() { _man_probe_pt(cos(RADIANS(210)) * delta_calibration_radius, sin(RADIANS(210)) * delta_calibration_radius); }
|
void _goto_tower_x() { _man_probe_pt(cos(RADIANS(210)) * delta_calibration_radius, sin(RADIANS(210)) * delta_calibration_radius); }
|
||||||
void _goto_tower_y() { _man_probe_pt(cos(RADIANS(330)) * delta_calibration_radius, sin(RADIANS(330)) * delta_calibration_radius); }
|
void _goto_tower_y() { _man_probe_pt(cos(RADIANS(330)) * delta_calibration_radius, sin(RADIANS(330)) * delta_calibration_radius); }
|
||||||
void _goto_tower_z() { _man_probe_pt(cos(RADIANS( 90)) * delta_calibration_radius, sin(RADIANS( 90)) * delta_calibration_radius); }
|
void _goto_tower_z() { _man_probe_pt(cos(RADIANS( 90)) * delta_calibration_radius, sin(RADIANS( 90)) * delta_calibration_radius); }
|
||||||
|
@ -201,7 +201,7 @@ void lcd_reset_status();
|
|||||||
float lcd_z_offset_edit();
|
float lcd_z_offset_edit();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if ENABLED(DELTA_CALIBRATION_MENU)
|
#if ENABLED(DELTA_AUTO_CALIBRATION) && !HAS_BED_PROBE
|
||||||
float lcd_probe_pt(const float &rx, const float &ry);
|
float lcd_probe_pt(const float &rx, const float &ry);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user