From 442b2e16de8705c91127c2d4efaf010847491942 Mon Sep 17 00:00:00 2001 From: Yuri D'Elia Date: Fri, 3 Jun 2022 12:29:29 +0200 Subject: [PATCH] Set pid_tuning_finished globally to true Use pid_tuning_finished as a flag to prevent automatic PID management. As a result, set the default start-up state to true and adjust the dependent code accordingly. --- Firmware/temperature.cpp | 2 +- Firmware/ultralcd.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Firmware/temperature.cpp b/Firmware/temperature.cpp index bfb4b74ad..f705c0089 100755 --- a/Firmware/temperature.cpp +++ b/Firmware/temperature.cpp @@ -85,7 +85,7 @@ float current_temperature_bed = 0.0; #ifdef PIDTEMP float _Kp, _Ki, _Kd; int pid_cycle, pid_number_of_cycles; - bool pid_tuning_finished = false; + bool pid_tuning_finished = true; #endif //PIDTEMP unsigned char soft_pwm_bed; diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index cb7e20f29..c233299a5 100755 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -1018,6 +1018,7 @@ void lcd_commands() lcd_commands_step = 3; } if (lcd_commands_step == 3 && !blocks_queued()) { //PID calibration + pid_tuning_finished = false; // ensure we don't move to the next step early sprintf_P(cmd1, PSTR("M303 E0 S%3u"), pid_temp); // setting the correct target temperature (for visualization) is done in PID_autotune enquecommand(cmd1); @@ -1025,7 +1026,6 @@ void lcd_commands() lcd_commands_step = 2; } if (lcd_commands_step == 2 && pid_tuning_finished) { //saving to eeprom - pid_tuning_finished = false; custom_message_state = 0; lcd_setstatuspgm(_i("PID cal. finished"));////MSG_PID_FINISHED c=20 setAllTargetHotends(0); // reset all hotends temperature including the number displayed on the main screen