|
|
@ -1220,7 +1220,7 @@ void kill_screen(const char* lcd_msg) {
|
|
|
|
*
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
static uint8_t _lcd_level_bed_position;
|
|
|
|
static uint8_t manual_probe_index;
|
|
|
|
|
|
|
|
|
|
|
|
// Utility to go to the next mesh point
|
|
|
|
// Utility to go to the next mesh point
|
|
|
|
inline void _manual_probe_xy(float x, float y) {
|
|
|
|
inline void _manual_probe_xy(float x, float y) {
|
|
|
@ -1266,8 +1266,8 @@ void kill_screen(const char* lcd_msg) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (lcd_clicked) {
|
|
|
|
if (lcd_clicked) {
|
|
|
|
mbl.set_zigzag_z(_lcd_level_bed_position++, current_position[Z_AXIS]);
|
|
|
|
mbl.set_zigzag_z(manual_probe_index++, current_position[Z_AXIS]);
|
|
|
|
if (_lcd_level_bed_position == (MESH_NUM_X_POINTS) * (MESH_NUM_Y_POINTS)) {
|
|
|
|
if (manual_probe_index == (MESH_NUM_X_POINTS) * (MESH_NUM_Y_POINTS)) {
|
|
|
|
lcd_goto_screen(_lcd_level_bed_done);
|
|
|
|
lcd_goto_screen(_lcd_level_bed_done);
|
|
|
|
|
|
|
|
|
|
|
|
#if MANUAL_PROBE_HEIGHT > 0
|
|
|
|
#if MANUAL_PROBE_HEIGHT > 0
|
|
|
@ -1307,7 +1307,7 @@ KeepDrawing:
|
|
|
|
void _lcd_level_bed_moving() {
|
|
|
|
void _lcd_level_bed_moving() {
|
|
|
|
if (lcdDrawUpdate) {
|
|
|
|
if (lcdDrawUpdate) {
|
|
|
|
char msg[10];
|
|
|
|
char msg[10];
|
|
|
|
sprintf_P(msg, PSTR("%i / %u"), (int)(_lcd_level_bed_position + 1), (MESH_NUM_X_POINTS) * (MESH_NUM_Y_POINTS));
|
|
|
|
sprintf_P(msg, PSTR("%i / %u"), (int)(manual_probe_index + 1), (MESH_NUM_X_POINTS) * (MESH_NUM_Y_POINTS));
|
|
|
|
lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_NEXT_POINT), msg);
|
|
|
|
lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_NEXT_POINT), msg);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -1323,7 +1323,7 @@ KeepDrawing:
|
|
|
|
|
|
|
|
|
|
|
|
// _manual_probe_xy runs the menu loop until the move is done
|
|
|
|
// _manual_probe_xy runs the menu loop until the move is done
|
|
|
|
int8_t px, py;
|
|
|
|
int8_t px, py;
|
|
|
|
mbl.zigzag(_lcd_level_bed_position, px, py);
|
|
|
|
mbl.zigzag(manual_probe_index, px, py);
|
|
|
|
_manual_probe_xy(mbl.get_probe_x(px), mbl.get_probe_y(py));
|
|
|
|
_manual_probe_xy(mbl.get_probe_x(px), mbl.get_probe_y(py));
|
|
|
|
|
|
|
|
|
|
|
|
// After the blocking function returns, change menus
|
|
|
|
// After the blocking function returns, change menus
|
|
|
@ -1337,7 +1337,7 @@ KeepDrawing:
|
|
|
|
void _lcd_level_bed_homing_done() {
|
|
|
|
void _lcd_level_bed_homing_done() {
|
|
|
|
if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_WAITING));
|
|
|
|
if (lcdDrawUpdate) lcd_implementation_drawedit(PSTR(MSG_LEVEL_BED_WAITING));
|
|
|
|
if (lcd_clicked) {
|
|
|
|
if (lcd_clicked) {
|
|
|
|
_lcd_level_bed_position = 0;
|
|
|
|
manual_probe_index = 0;
|
|
|
|
lcd_goto_screen(_lcd_level_goto_next_point);
|
|
|
|
lcd_goto_screen(_lcd_level_goto_next_point);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|