|
@@ -553,7 +553,6 @@ static void lcd_status_screen()
|
|
|
|
|
|
void lcd_commands()
|
|
|
{
|
|
|
- char cmd1[25];
|
|
|
if (lcd_commands_type == LCD_COMMAND_LONG_PAUSE)
|
|
|
{
|
|
|
if(lcd_commands_step == 0) {
|
|
@@ -596,10 +595,16 @@ void lcd_commands()
|
|
|
strcpy(cmd1, "G1 Z");
|
|
|
strcat(cmd1, ftostr32(pause_lastpos[Z_AXIS]));
|
|
|
enquecommand(cmd1);
|
|
|
- if (axis_relative_modes[3] == true) enquecommand_P(PSTR("M83")); // set extruder to relative mode.
|
|
|
- else enquecommand_P(PSTR("M82")); // set extruder to absolute mode
|
|
|
+
|
|
|
+ if (axis_relative_modes[3] == false) {
|
|
|
+ enquecommand_P(PSTR("M83")); // set extruder to relative mode
|
|
|
enquecommand_P(PSTR("G1 E" STRINGIFY(DEFAULT_RETRACTION))); //unretract
|
|
|
- enquecommand_P(PSTR("G90")); //absolute positioning
|
|
|
+ enquecommand_P(PSTR("M82")); // set extruder to absolute mode
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ enquecommand_P(PSTR("G1 E" STRINGIFY(DEFAULT_RETRACTION))); //unretract
|
|
|
+ }
|
|
|
+
|
|
|
lcd_commands_step = 1;
|
|
|
}
|
|
|
if (lcd_commands_step == 3 && !blocks_queued()) { //wait for nozzle to reach target temp
|
|
@@ -614,7 +619,7 @@ void lcd_commands()
|
|
|
strcpy(cmd1, "M104 S");
|
|
|
strcat(cmd1, ftostr3(HotendTempBckp));
|
|
|
enquecommand(cmd1);
|
|
|
-
|
|
|
+ enquecommand_P(PSTR("G90")); //absolute positioning
|
|
|
strcpy(cmd1, "G1 X");
|
|
|
strcat(cmd1, ftostr32(pause_lastpos[X_AXIS]));
|
|
|
strcat(cmd1, " Y");
|
|
@@ -862,7 +867,7 @@ void lcd_commands()
|
|
|
enquecommand_P(PSTR("G1 X50 Y1 E-5.0000"));
|
|
|
enquecommand_P(PSTR("G1 F2400"));
|
|
|
enquecommand_P(PSTR("G1 X0 Y1 E5.0000"));
|
|
|
- enquecommand_P(PSTR("G1 X50 Y1 E - 5.0000"));
|
|
|
+ enquecommand_P(PSTR("G1 X50 Y1 E-5.0000"));
|
|
|
enquecommand_P(PSTR("G1 F2400"));
|
|
|
enquecommand_P(PSTR("G1 X0 Y1 E5.0000"));
|
|
|
enquecommand_P(PSTR("G1 X50 Y1 E-3.0000"));
|
|
@@ -1126,7 +1131,7 @@ void lcd_commands()
|
|
|
|
|
|
if (lcd_commands_type == LCD_COMMAND_STOP_PRINT) /// stop print
|
|
|
{
|
|
|
- uint8_t stopped_extruder;
|
|
|
+
|
|
|
|
|
|
if (lcd_commands_step == 0)
|
|
|
{
|
|
@@ -1611,7 +1616,7 @@ static void lcd_support_menu()
|
|
|
MENU_ITEM(back, PSTR(ELECTRONICS),lcd_main_menu);
|
|
|
MENU_ITEM(back, PSTR(NOZZLE_TYPE),lcd_main_menu);
|
|
|
MENU_ITEM(back, PSTR("------------"), lcd_main_menu);
|
|
|
- MENU_ITEM(back, PSTR("Date: "), lcd_main_menu);
|
|
|
+ MENU_ITEM(back, MSG_DATE, lcd_main_menu);
|
|
|
MENU_ITEM(back, PSTR(__DATE__), lcd_main_menu);
|
|
|
|
|
|
// Show the FlashAir IP address, if the card is available.
|
|
@@ -1622,10 +1627,7 @@ static void lcd_support_menu()
|
|
|
}
|
|
|
#ifndef MK1BP
|
|
|
MENU_ITEM(back, PSTR("------------"), lcd_main_menu);
|
|
|
- if (!IS_SD_PRINTING)
|
|
|
- {
|
|
|
- MENU_ITEM(function, PSTR("XYZ cal. details"), lcd_service_mode_show_result);
|
|
|
- }
|
|
|
+ if (!IS_SD_PRINTING && !is_usb_printing) MENU_ITEM(function, MSG_XYZ_DETAILS, lcd_service_mode_show_result);
|
|
|
MENU_ITEM(submenu, MSG_INFO_EXTRUDER, lcd_menu_extruder_info);
|
|
|
|
|
|
|
|
@@ -2059,15 +2061,16 @@ void lcd_service_mode_show_result() {
|
|
|
angleDiff = eeprom_read_float((float*)(EEPROM_XYZ_CAL_SKEW));
|
|
|
lcd_update_enable(false);
|
|
|
lcd_implementation_clear();
|
|
|
- lcd_printPGM(PSTR("Y distance from min:"));
|
|
|
- lcd_print_at_PGM(0, 1, PSTR("Left:"));
|
|
|
- lcd_print_at_PGM(0, 3, PSTR("Right:"));
|
|
|
+ lcd_printPGM(MSG_Y_DISTANCE_FROM_MIN);
|
|
|
+ lcd_print_at_PGM(0, 1, MSG_LEFT);
|
|
|
+ lcd_print_at_PGM(0, 2, MSG_RIGHT);
|
|
|
+
|
|
|
for (int i = 0; i < 2; i++) {
|
|
|
if(distance_from_min[i] < 200) {
|
|
|
- lcd_print_at_PGM(8, i + 1, PSTR(""));
|
|
|
+ lcd_print_at_PGM(11, i + 1, PSTR(""));
|
|
|
lcd.print(distance_from_min[i]);
|
|
|
- lcd_print_at_PGM((distance_from_min[i] < 0) ? 14 : 13, i + 1, PSTR("mm"));
|
|
|
- } else lcd_print_at_PGM(8, i + 1, PSTR("N/A"));
|
|
|
+ lcd_print_at_PGM((distance_from_min[i] < 0) ? 17 : 16, i + 1, PSTR("mm"));
|
|
|
+ } else lcd_print_at_PGM(11, i + 1, PSTR("N/A"));
|
|
|
}
|
|
|
delay_keep_alive(500);
|
|
|
KEEPALIVE_STATE(PAUSED_FOR_USER);
|
|
@@ -2078,17 +2081,18 @@ void lcd_service_mode_show_result() {
|
|
|
lcd_implementation_clear();
|
|
|
|
|
|
|
|
|
- lcd_printPGM(PSTR("Measured skew: "));
|
|
|
+ lcd_printPGM(MSG_MEASURED_SKEW);
|
|
|
if (angleDiff < 100) {
|
|
|
+ lcd.setCursor(15, 0);
|
|
|
lcd.print(angleDiff * 180 / M_PI);
|
|
|
lcd.print(LCD_STR_DEGREE);
|
|
|
- }else lcd_print_at_PGM(15, 0, PSTR("N/A"));
|
|
|
+ }else lcd_print_at_PGM(16, 0, PSTR("N/A"));
|
|
|
lcd_print_at_PGM(0, 1, PSTR("--------------------"));
|
|
|
- lcd_print_at_PGM(0, 2, PSTR("Slight skew:"));
|
|
|
+ lcd_print_at_PGM(0, 2, MSG_SLIGHT_SKEW);
|
|
|
lcd_print_at_PGM(15, 2, PSTR(""));
|
|
|
lcd.print(bed_skew_angle_mild * 180 / M_PI);
|
|
|
lcd.print(LCD_STR_DEGREE);
|
|
|
- lcd_print_at_PGM(0, 3, PSTR("Severe skew:"));
|
|
|
+ lcd_print_at_PGM(0, 3, MSG_SEVERE_SKEW);
|
|
|
lcd_print_at_PGM(15, 3, PSTR(""));
|
|
|
lcd.print(bed_skew_angle_extreme * 180 / M_PI);
|
|
|
lcd.print(LCD_STR_DEGREE);
|