Merge pull request #85 from PavelSindler/pause_print_fix

pause print fix for absolute mode
This commit is contained in:
PavelSindler 2017-11-15 11:52:59 +01:00 committed by GitHub
commit cc839280a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -553,7 +553,6 @@ static void lcd_status_screen()
void lcd_commands() void lcd_commands()
{ {
char cmd1[25];
if (lcd_commands_type == LCD_COMMAND_LONG_PAUSE) if (lcd_commands_type == LCD_COMMAND_LONG_PAUSE)
{ {
if(lcd_commands_step == 0) { if(lcd_commands_step == 0) {
@ -596,10 +595,16 @@ void lcd_commands()
strcpy(cmd1, "G1 Z"); strcpy(cmd1, "G1 Z");
strcat(cmd1, ftostr32(pause_lastpos[Z_AXIS])); strcat(cmd1, ftostr32(pause_lastpos[Z_AXIS]));
enquecommand(cmd1); 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("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; lcd_commands_step = 1;
} }
if (lcd_commands_step == 3 && !blocks_queued()) { //wait for nozzle to reach target temp 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"); strcpy(cmd1, "M104 S");
strcat(cmd1, ftostr3(HotendTempBckp)); strcat(cmd1, ftostr3(HotendTempBckp));
enquecommand(cmd1); enquecommand(cmd1);
enquecommand_P(PSTR("G90")); //absolute positioning
strcpy(cmd1, "G1 X"); strcpy(cmd1, "G1 X");
strcat(cmd1, ftostr32(pause_lastpos[X_AXIS])); strcat(cmd1, ftostr32(pause_lastpos[X_AXIS]));
strcat(cmd1, " Y"); strcat(cmd1, " Y");
@ -862,7 +867,7 @@ void lcd_commands()
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 F2400"));
enquecommand_P(PSTR("G1 X0 Y1 E5.0000")); 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 F2400"));
enquecommand_P(PSTR("G1 X0 Y1 E5.0000")); enquecommand_P(PSTR("G1 X0 Y1 E5.0000"));
enquecommand_P(PSTR("G1 X50 Y1 E-3.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 if (lcd_commands_type == LCD_COMMAND_STOP_PRINT) /// stop print
{ {
uint8_t stopped_extruder;
if (lcd_commands_step == 0) if (lcd_commands_step == 0)
{ {