diff --git a/Firmware/temperature.cpp b/Firmware/temperature.cpp old mode 100644 new mode 100755 index ef15c66b5..f64c5d9de --- a/Firmware/temperature.cpp +++ b/Firmware/temperature.cpp @@ -264,11 +264,13 @@ static void temp_runaway_stop(bool isPreheat, bool isBed); soft_pwm_bed = (MAX_BED_POWER)/2; timer02_set_pwm0(soft_pwm_bed << 1); bias = d = (MAX_BED_POWER)/2; + target_temperature_bed = (int)temp; // to display the requested target bed temperature properly on the main screen } else { soft_pwm[extruder] = (PID_MAX)/2; bias = d = (PID_MAX)/2; + target_temperature[extruder] = (int)temp; // to display the requested target extruder temperature properly on the main screen } diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 6f8594724..a82c347c5 100755 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -1765,6 +1765,7 @@ void lcd_commands() if (lcd_commands_step == 3 && !blocks_queued()) { //PID calibration strcpy(cmd1, "M303 E0 S"); strcat(cmd1, ftostr3(pid_temp)); + // setting the correct target temperature (for visualization) is done in PID_autotune enquecommand(cmd1); lcd_setstatuspgm(_i("PID cal. "));////MSG_PID_RUNNING c=20 r=1 lcd_commands_step = 2; @@ -1773,6 +1774,7 @@ void lcd_commands() pid_tuning_finished = false; custom_message_state = 0; lcd_setstatuspgm(_i("PID cal. finished"));////MSG_PID_FINISHED c=20 r=1 + setAllTargetHotends(0); // reset all hotends temperature including the number displayed on the main screen if (_Kp != 0 || _Ki != 0 || _Kd != 0) { strcpy(cmd1, "M301 P"); strcat(cmd1, ftostr32(_Kp));