M48 menu item, result to status (#14772)

2.0.x
Acenotass 5 years ago committed by Scott Lahteine
parent e44fccf3d2
commit 659d06d9b9

@ -30,6 +30,10 @@
#include "../../feature/bedlevel/bedlevel.h" #include "../../feature/bedlevel/bedlevel.h"
#if HAS_SPI_LCD
#include "../../lcd/ultralcd.h"
#endif
#if HAS_LEVELING #if HAS_LEVELING
#include "../../module/planner.h" #include "../../module/planner.h"
#endif #endif
@ -246,6 +250,13 @@ void GcodeSuite::M48() {
SERIAL_ECHOLNPAIR_F("Standard Deviation: ", sigma, 6); SERIAL_ECHOLNPAIR_F("Standard Deviation: ", sigma, 6);
SERIAL_EOL(); SERIAL_EOL();
#if HAS_SPI_LCD
// Display M48 results in the status bar
char sigma_str[8];
dtostrf(sigma, 2, 6, sigma_str);
ui.status_printf_P(0, PSTR(MSG_M48_DEVIATION ": %s"), sigma_str);
#endif
} }
clean_up_after_endstop_or_probe_move(); clean_up_after_endstop_or_probe_move();

@ -265,6 +265,12 @@
#ifndef MSG_LCD_TILTING_MESH #ifndef MSG_LCD_TILTING_MESH
#define MSG_LCD_TILTING_MESH _UxGT("Tilting point") #define MSG_LCD_TILTING_MESH _UxGT("Tilting point")
#endif #endif
#ifndef MSG_M48_TEST
#define MSG_M48_TEST _UxGT("M48 Probe Test")
#endif
#ifndef MSG_M48_DEVIATION
#define MSG_M48_DEVIATION _UxGT("Deviation")
#endif
#ifndef MSG_IDEX_MENU #ifndef MSG_IDEX_MENU
#define MSG_IDEX_MENU _UxGT("IDEX Mode") #define MSG_IDEX_MENU _UxGT("IDEX Mode")
#endif #endif
@ -1385,6 +1391,7 @@
#ifndef MSG_END_Z #ifndef MSG_END_Z
#define MSG_END_Z _UxGT(" End Z") #define MSG_END_Z _UxGT(" End Z")
#endif #endif
#ifndef MSG_GAMES #ifndef MSG_GAMES
#define MSG_GAMES _UxGT("Games") #define MSG_GAMES _UxGT("Games")
#endif #endif

@ -36,9 +36,12 @@
#define MSG_BACK _UxGT("Назад") #define MSG_BACK _UxGT("Назад")
#define MSG_SD_INSERTED _UxGT("Карта вставлена") #define MSG_SD_INSERTED _UxGT("Карта вставлена")
#define MSG_SD_REMOVED _UxGT("Карта извлечена") #define MSG_SD_REMOVED _UxGT("Карта извлечена")
#define MSG_SD_RELEASED _UxGT("SD карта не активна")
#define MSG_LCD_ENDSTOPS _UxGT("Эндстопы") // Max length 8 characters #define MSG_LCD_ENDSTOPS _UxGT("Эндстопы") // Max length 8 characters
#define MSG_LCD_SOFT_ENDSTOPS _UxGT("Прогр. эндстопы") #define MSG_LCD_SOFT_ENDSTOPS _UxGT("Прогр. эндстопы")
#define MSG_MAIN _UxGT("Меню") #define MSG_MAIN _UxGT("Меню")
#define MSG_ADVANCED_SETTINGS _UxGT("Другие настройки")
#define MSG_CONFIGURATION _UxGT("Настройки")
#define MSG_AUTOSTART _UxGT("Автостарт") #define MSG_AUTOSTART _UxGT("Автостарт")
#define MSG_DISABLE_STEPPERS _UxGT("Выкл. двигатели") #define MSG_DISABLE_STEPPERS _UxGT("Выкл. двигатели")
#define MSG_DEBUG_MENU _UxGT("Меню отладки") #define MSG_DEBUG_MENU _UxGT("Меню отладки")
@ -84,6 +87,17 @@
#define MSG_UBL_UNHOMED _UxGT("Паркуем сначала XYZ") #define MSG_UBL_UNHOMED _UxGT("Паркуем сначала XYZ")
#define MSG_UBL_TOOLS _UxGT("Утилиты UBL") #define MSG_UBL_TOOLS _UxGT("Утилиты UBL")
#define MSG_UBL_LEVEL_BED _UxGT("Калибровка UBL") #define MSG_UBL_LEVEL_BED _UxGT("Калибровка UBL")
#define MSG_M48_TEST _UxGT("Проверка датчика Z")
#define MSG_M48_DEVIATION _UxGT("Отклонение")
// TODO: IDEX Menu
#define MSG_OFFSETS_MENU _UxGT("Размещение сопел")
#define MSG_X_OFFSET _UxGT("2-е сопло X")
#define MSG_Y_OFFSET _UxGT("2-е сопло Y")
#define MSG_Z_OFFSET _UxGT("2-е сопло Z")
#define MSG_UBL_MANUAL_MESH _UxGT("Постр. сетку от руки") #define MSG_UBL_MANUAL_MESH _UxGT("Постр. сетку от руки")
#define MSG_UBL_BC_INSERT _UxGT("Пост. шимм и измер.") #define MSG_UBL_BC_INSERT _UxGT("Пост. шимм и измер.")
#define MSG_UBL_BC_INSERT2 _UxGT("Измерение") #define MSG_UBL_BC_INSERT2 _UxGT("Измерение")
@ -239,7 +253,7 @@
#define MSG_CONTRAST _UxGT("Контраст LCD") #define MSG_CONTRAST _UxGT("Контраст LCD")
#define MSG_STORE_EEPROM _UxGT("Сохранить настройки") #define MSG_STORE_EEPROM _UxGT("Сохранить настройки")
#define MSG_LOAD_EEPROM _UxGT("Загрузить настройки") #define MSG_LOAD_EEPROM _UxGT("Загрузить настройки")
#define MSG_RESTORE_FAILSAFE _UxGT("Восстановить настр.") #define MSG_RESTORE_FAILSAFE _UxGT("Вернуть настройки")
#define MSG_INIT_EEPROM _UxGT("Инициализация EEPROM") #define MSG_INIT_EEPROM _UxGT("Инициализация EEPROM")
#define MSG_REFRESH _UxGT("Обновить") #define MSG_REFRESH _UxGT("Обновить")
#define MSG_WATCH _UxGT("Информационный экран") #define MSG_WATCH _UxGT("Информационный экран")
@ -266,12 +280,21 @@
#define MSG_CONTROL_RETRACT_RECOVERF _UxGT("Возврат V") #define MSG_CONTROL_RETRACT_RECOVERF _UxGT("Возврат V")
#define MSG_CONTROL_RETRACT_RECOVER_SWAPF _UxGT("Возврат смены V") #define MSG_CONTROL_RETRACT_RECOVER_SWAPF _UxGT("Возврат смены V")
#define MSG_AUTORETRACT _UxGT("Авто Втягивание") #define MSG_AUTORETRACT _UxGT("Авто Втягивание")
// TODO: Filament Change Swap / Purge Length
#define MSG_TOOL_CHANGE _UxGT("Смена сопел")
#define MSG_TOOL_CHANGE_ZLIFT _UxGT("Поднятие по Z")
// TODO: Singlenozzle, nozzle standby
#define MSG_FILAMENTCHANGE _UxGT("Смена филамента") #define MSG_FILAMENTCHANGE _UxGT("Смена филамента")
#define MSG_FILAMENTLOAD _UxGT("Загрузка филамента") #define MSG_FILAMENTLOAD _UxGT("Загрузка филамента")
#define MSG_FILAMENTUNLOAD _UxGT("Выгрузка филамента") #define MSG_FILAMENTUNLOAD _UxGT("Выгрузка филамента")
#define MSG_FILAMENTUNLOAD_ALL _UxGT("Выгрузить всё") #define MSG_FILAMENTUNLOAD_ALL _UxGT("Выгрузить всё")
#define MSG_INIT_SDCARD _UxGT("Иниц. SD карту") #define MSG_INIT_SDCARD _UxGT("Активировать SD")
#define MSG_CHANGE_SDCARD _UxGT("Сменить SD карту") #define MSG_CHANGE_SDCARD _UxGT("Сменить SD карту")
#define MSG_RELEASE_SDCARD _UxGT("Деактивировать SD")
#define MSG_ZPROBE_OUT _UxGT("Z датчик вне стола") #define MSG_ZPROBE_OUT _UxGT("Z датчик вне стола")
#define MSG_SKEW_FACTOR _UxGT("Фактор наклона") #define MSG_SKEW_FACTOR _UxGT("Фактор наклона")
#define MSG_BLTOUCH _UxGT("BLTouch") #define MSG_BLTOUCH _UxGT("BLTouch")
@ -279,6 +302,9 @@
#define MSG_BLTOUCH_RESET _UxGT("Сброс BLTouch") #define MSG_BLTOUCH_RESET _UxGT("Сброс BLTouch")
#define MSG_BLTOUCH_DEPLOY _UxGT("Установка BLTouch") #define MSG_BLTOUCH_DEPLOY _UxGT("Установка BLTouch")
#define MSG_BLTOUCH_STOW _UxGT("Набивка BLTouch") #define MSG_BLTOUCH_STOW _UxGT("Набивка BLTouch")
// TODO: TouchMI Probe, Manual deploy/stow
#define MSG_HOME _UxGT("Паркуй") // Used as MSG_HOME " " MSG_X MSG_Y MSG_Z " " MSG_FIRST #define MSG_HOME _UxGT("Паркуй") // Used as MSG_HOME " " MSG_X MSG_Y MSG_Z " " MSG_FIRST
#define MSG_FIRST _UxGT("первый") #define MSG_FIRST _UxGT("первый")
#define MSG_ZPROBE_ZOFFSET _UxGT("Смещение Z") #define MSG_ZPROBE_ZOFFSET _UxGT("Смещение Z")
@ -291,10 +317,12 @@
#define MSG_ERR_REDUNDANT_TEMP _UxGT("Ошибка: Избыточная Т") #define MSG_ERR_REDUNDANT_TEMP _UxGT("Ошибка: Избыточная Т")
#define MSG_THERMAL_RUNAWAY _UxGT("УБЕГАНИЕ ТЕПЛА") #define MSG_THERMAL_RUNAWAY _UxGT("УБЕГАНИЕ ТЕПЛА")
#define MSG_THERMAL_RUNAWAY_BED _UxGT("УБЕГАНИЕ ТЕПЛА СТОЛА") #define MSG_THERMAL_RUNAWAY_BED _UxGT("УБЕГАНИЕ ТЕПЛА СТОЛА")
// TODO: Heated chamber
#define MSG_ERR_MAXTEMP _UxGT("Ошибка: Т макс.") #define MSG_ERR_MAXTEMP _UxGT("Ошибка: Т макс.")
#define MSG_ERR_MINTEMP _UxGT("Ошибка: Т мин.") #define MSG_ERR_MINTEMP _UxGT("Ошибка: Т мин.")
#define MSG_ERR_MAXTEMP_BED _UxGT("Ошибка: Т стола макс") #define MSG_ERR_MAXTEMP_BED _UxGT("Ошибка: Т стола макс")
#define MSG_ERR_MINTEMP_BED _UxGT("Ошибка: Т стола мин.") #define MSG_ERR_MINTEMP_BED _UxGT("Ошибка: Т стола мин.")
// TODO: Heated chamber
#define MSG_ERR_Z_HOMING MSG_HOME _UxGT(" ") MSG_X MSG_Y _UxGT(" ") MSG_FIRST #define MSG_ERR_Z_HOMING MSG_HOME _UxGT(" ") MSG_X MSG_Y _UxGT(" ") MSG_FIRST
#define MSG_HALTED _UxGT("ПРИНТЕР ОСТАНОВЛЕН") #define MSG_HALTED _UxGT("ПРИНТЕР ОСТАНОВЛЕН")
#define MSG_PLEASE_RESET _UxGT("Сделайте сброс") #define MSG_PLEASE_RESET _UxGT("Сделайте сброс")
@ -303,9 +331,9 @@
#define MSG_SHORT_MINUTE _UxGT("м") // One character only #define MSG_SHORT_MINUTE _UxGT("м") // One character only
#define MSG_HEATING _UxGT("Нагрев...") #define MSG_HEATING _UxGT("Нагрев...")
#define MSG_COOLING _UxGT("Охлаждение...") #define MSG_COOLING _UxGT("Охлаждение...")
#define MSG_COOLING_COMPLETE _UxGT("Охлаждение выполнено")
#define MSG_BED_HEATING _UxGT("Нагрев стола...") #define MSG_BED_HEATING _UxGT("Нагрев стола...")
#define MSG_BED_COOLING _UxGT("Охлаждение стола...") #define MSG_BED_COOLING _UxGT("Охлаждение стола...")
// TODO: Heated chamber
#define MSG_DELTA_CALIBRATE _UxGT("Калибровка Delta") #define MSG_DELTA_CALIBRATE _UxGT("Калибровка Delta")
#define MSG_DELTA_CALIBRATE_X _UxGT("Калибровать X") #define MSG_DELTA_CALIBRATE_X _UxGT("Калибровать X")
#define MSG_DELTA_CALIBRATE_Y _UxGT("Калибровать Y") #define MSG_DELTA_CALIBRATE_Y _UxGT("Калибровать Y")
@ -348,7 +376,7 @@
#endif #endif
#define MSG_INFO_MIN_TEMP _UxGT("Мин. Т") #define MSG_INFO_MIN_TEMP _UxGT("Мин. Т")
#define MSG_INFO_MAX_TEMP _UxGT("Макс. Т") #define MSG_INFO_MAX_TEMP _UxGT("Макс. Т")
#define MSG_INFO_PSU _UxGT("Блок питания") #define MSG_INFO_PSU _UxGT("БП")
#define MSG_DRIVE_STRENGTH _UxGT("Сила привода") #define MSG_DRIVE_STRENGTH _UxGT("Сила привода")
#define MSG_DAC_PERCENT _UxGT("Привод %") #define MSG_DAC_PERCENT _UxGT("Привод %")
#define MSG_DAC_EEPROM_WRITE _UxGT("Запись DAC EEPROM") #define MSG_DAC_EEPROM_WRITE _UxGT("Запись DAC EEPROM")
@ -363,6 +391,16 @@
#define MSG_ERR_PROBING_FAILED _UxGT("Не удалось прощупать") #define MSG_ERR_PROBING_FAILED _UxGT("Не удалось прощупать")
#define MSG_M600_TOO_COLD _UxGT("M600: Низкая Т") #define MSG_M600_TOO_COLD _UxGT("M600: Низкая Т")
// TODO: MMU2
// TODO: Mixing
#define MSG_GAMES _UxGT("Игры")
#define MSG_BRICKOUT _UxGT("Кирпичи")
#define MSG_INVADERS _UxGT("Вторжение")
#define MSG_SNAKE _UxGT("Змейка")
#define MSG_MAZE _UxGT("Лабиринт")
// //
// Filament Change screens show up to 3 lines on a 4-line display // Filament Change screens show up to 3 lines on a 4-line display
// ...or up to 2 lines on a 3-line display // ...or up to 2 lines on a 3-line display
@ -398,3 +436,14 @@
#define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Выдавливание...") #define MSG_FILAMENT_CHANGE_PURGE_1 _UxGT("Выдавливание...")
#define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Возобновление...") #define MSG_FILAMENT_CHANGE_RESUME_1 _UxGT("Возобновление...")
#endif // LCD_HEIGHT < 4 #endif // LCD_HEIGHT < 4
#define MSG_TMC_DRIVERS _UxGT("Драйвера TMC")
#define MSG_TMC_CURRENT _UxGT("Текущие настройки")
#define MSG_TMC_HYBRID_THRS _UxGT("Гибридный режим")
#define MSG_TMC_HOMING_THRS _UxGT("Режим без эндстопов")
#define MSG_TMC_STEPPING_MODE _UxGT("Режим шага")
#define MSG_TMC_STEALTH_ENABLED _UxGT("Тихий режим вкл")
// TODO: Service
// TODO: Backlash

@ -503,6 +503,10 @@ void menu_motion() {
MENU_ITEM(function, MSG_LEVEL_CORNERS, _lcd_level_bed_corners); MENU_ITEM(function, MSG_LEVEL_CORNERS, _lcd_level_bed_corners);
#endif #endif
#if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST)
MENU_ITEM(gcode, MSG_M48_TEST, PSTR("G28\nM48 P10"));
#endif
// //
// Disable Steppers // Disable Steppers
// //

Loading…
Cancel
Save