Modify M190 and M140 ti add cooler options

parent f6944831
...@@ -79,14 +79,15 @@ ...@@ -79,14 +79,15 @@
* M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil) * M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil)
* M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil) * M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil)
* M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil) * M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil)
* M140 - Set bed target temp * M140 - Set bed or cooler target temp
* M145 - Set the heatup state H<hotend> B<bed> F<fan speed> for S<material> (0=PLA, 1=ABS) * M145 - Set the heatup state H<hotend> B<bed> F<fan speed> for S<material> (0=PLA, 1=ABS)
* M150 - Set BlinkM Color Output R: Red<0-255> U(!): Green<0-255> B: Blue<0-255> over i2c, G for green does not work. * M150 - Set BlinkM Color Output R: Red<0-255> U(!): Green<0-255> B: Blue<0-255> over i2c, G for green does not work.
* M163 - Set a single proportion for a mixing extruder. Requires COLOR_MIXING_EXTRUDER. * M163 - Set a single proportion for a mixing extruder. Requires COLOR_MIXING_EXTRUDER.
* M164 - Save the mix as a virtual extruder. Requires COLOR_MIXING_EXTRUDER and MIXING_VIRTUAL_TOOLS. * M164 - Save the mix as a virtual extruder. Requires COLOR_MIXING_EXTRUDER and MIXING_VIRTUAL_TOOLS.
* M165 - Set the proportions for a mixing extruder. Use parameters ABCDHI to set the mixing factors. Requires COLOR_MIXING_EXTRUDER. * M165 - Set the proportions for a mixing extruder. Use parameters ABCDHI to set the mixing factors. Requires COLOR_MIXING_EXTRUDER.
* M190 - S[xxx] Wait for bed current temp to reach target temp. Waits only when heating * M190 - S[xxx] Wait for bed or cooler current temp to reach target temp. Waits only when heating bed or cooling cooler
- R[xxx] Wait for bed current temp to reach target temp. Waits when heating and cooling - R[xxx] Wait for bed or cooler current temp to reach target temp. Waits when heating and cooling
- C parameter select Cooler, omitting it selec bed.
* M200 - D[millimeters]- set filament diameter and set E axis units to cubic millimeters (use S0 to set back to millimeters). * M200 - D[millimeters]- set filament diameter and set E axis units to cubic millimeters (use S0 to set back to millimeters).
* M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000 Z1000 E0 S1000 E1 S1000 E2 S1000 E3 S1000) in mm/sec^2 * M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000 Z1000 E0 S1000 E1 S1000 E2 S1000 E3 S1000) in mm/sec^2
* M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E0 S1000 E1 S1000 E2 S1000 E3 S1000) in mm/sec * M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E0 S1000 E1 S1000 E2 S1000 E3 S1000) in mm/sec
...@@ -106,7 +107,7 @@ ...@@ -106,7 +107,7 @@
* M301 - Set PID parameters P I and D * M301 - Set PID parameters P I and D
* M302 - Allow cold extrudes * M302 - Allow cold extrudes
* M303 - PID relay autotune S<temperature> sets the target temperature (default target temperature = 150C). H<hotend> C<cycles> U<Apply result> * M303 - PID relay autotune S<temperature> sets the target temperature (default target temperature = 150C). H<hotend> C<cycles> U<Apply result>
* M304 - Set bed PID parameters P I and D or Water Cooling if L parameter * M304 - Set bed PID parameters P I and D or Water Cooling if C parameter
* M350 - Set microstepping mode. * M350 - Set microstepping mode.
* M351 - Toggle MS1 MS2 pins directly. * M351 - Toggle MS1 MS2 pins directly.
* M400 - Finish all moves * M400 - Finish all moves
......
...@@ -217,6 +217,12 @@ ...@@ -217,6 +217,12 @@
#define TEMP_BED_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one #define TEMP_BED_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one
#define TEMP_BED_WINDOW 1 // (degC) Window around target to start the residency timer x degC early. #define TEMP_BED_WINDOW 1 // (degC) Window around target to start the residency timer x degC early.
// Cooler temperature must be close to target for this long before M190 returns success
#define TEMP_COOLER_RESIDENCY_TIME 0 // (seconds)
#define TEMP_COOLER_HYSTERESIS 1 // (degC) range of +/- temperatures considered "close" to the target one
#define TEMP_COOLER_WINDOW 1 // (degC) Window around target to start the residency timer x degC early.
// When temperature exceeds max temp, your heater will be switched off. // When temperature exceeds max temp, your heater will be switched off.
// When temperature exceeds max temp, your cooler cannot be activaed. // When temperature exceeds max temp, your cooler cannot be activaed.
// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure!
......
...@@ -217,6 +217,11 @@ ...@@ -217,6 +217,11 @@
#define TEMP_BED_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one #define TEMP_BED_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one
#define TEMP_BED_WINDOW 1 // (degC) Window around target to start the residency timer x degC early. #define TEMP_BED_WINDOW 1 // (degC) Window around target to start the residency timer x degC early.
// Cooler temperature must be close to target for this long before M190 returns success
#define TEMP_COOLER_RESIDENCY_TIME 0 // (seconds)
#define TEMP_COOLER_HYSTERESIS 1 // (degC) range of +/- temperatures considered "close" to the target one
#define TEMP_COOLER_WINDOW 1 // (degC) Window around target to start the residency timer x degC early.
// When temperature exceeds max temp, your heater will be switched off. // When temperature exceeds max temp, your heater will be switched off.
// When temperature exceeds max temp, your cooler cannot be activaed. // When temperature exceeds max temp, your cooler cannot be activaed.
// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure!
......
...@@ -115,6 +115,9 @@ ...@@ -115,6 +115,9 @@
#define LASER_INTENSITY_PIN 6 // Digital pins 2, 3, 5, 6, 7, 8 are attached to timers we can use #define LASER_INTENSITY_PIN 6 // Digital pins 2, 3, 5, 6, 7, 8 are attached to timers we can use
#define LASER_FIRING_PIN 5 #define LASER_FIRING_PIN 5
#endif #endif
#if DISABLED(ORIG_TEMP_COOLER_PIN)
#define TEMP_COOLER_PIN ORIG_HEATER_0_PIN // Default to the first thermistor
#endif
#if ENABLED(LASER_POWER_DOWN) #if ENABLED(LASER_POWER_DOWN)
#define LASER_POWER_PIN 9 // This is currently hard-coded to timer2 which services pins 9, 10 #define LASER_POWER_PIN 9 // This is currently hard-coded to timer2 which services pins 9, 10
#endif // LASER_POWER_DOWN #endif // LASER_POWER_DOWN
......
...@@ -119,14 +119,15 @@ ...@@ -119,14 +119,15 @@
* M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil) * M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil)
* M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil) * M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil)
* M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil) * M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil)
* M140 - Set bed target temp * M140 - Set bed or cooler target temp
* M145 - Set the heatup state H<hotend> B<bed> F<fan speed> for S<material> (0=PLA, 1=ABS) * M145 - Set the heatup state H<hotend> B<bed> F<fan speed> for S<material> (0=PLA, 1=ABS)
* M150 - Set BlinkM Color Output R: Red<0-255> U(!): Green<0-255> B: Blue<0-255> over i2c, G for green does not work. * M150 - Set BlinkM Color Output R: Red<0-255> U(!): Green<0-255> B: Blue<0-255> over i2c, G for green does not work.
* M163 - Set a single proportion for a mixing extruder. Requires COLOR_MIXING_EXTRUDER. * M163 - Set a single proportion for a mixing extruder. Requires COLOR_MIXING_EXTRUDER.
* M164 - Save the mix as a virtual extruder. Requires COLOR_MIXING_EXTRUDER and MIXING_VIRTUAL_TOOLS. * M164 - Save the mix as a virtual extruder. Requires COLOR_MIXING_EXTRUDER and MIXING_VIRTUAL_TOOLS.
* M165 - Set the proportions for a mixing extruder. Use parameters ABCDHI to set the mixing factors. Requires COLOR_MIXING_EXTRUDER. * M165 - Set the proportions for a mixing extruder. Use parameters ABCDHI to set the mixing factors. Requires COLOR_MIXING_EXTRUDER.
* M190 - Sxxx Wait for bed current temp to reach target temp. Waits only when heating * M190 - Sxxx Wait for bed or cooler current temp to reach target temp. Waits only when heating Waits only when heating bed or cooling cooler
* Rxxx Wait for bed current temp to reach target temp. Waits when heating and cooling * Rxxx Wait for bed or cooler current temp to reach target temp. Waits when heating and cooling
* C parameter select Cooler, omitting it selec bed.
* M200 - set filament diameter and set E axis units to cubic millimeters (use S0 to set back to millimeters).:D<millimeters>- * M200 - set filament diameter and set E axis units to cubic millimeters (use S0 to set back to millimeters).:D<millimeters>-
* M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) * M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000)
* M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! * M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!!
...@@ -149,7 +150,7 @@ ...@@ -149,7 +150,7 @@
* M301 - Set PID parameters P I D and C * M301 - Set PID parameters P I D and C
* M302 - Allow cold extrudes, or set the minimum extrude S<temperature>. * M302 - Allow cold extrudes, or set the minimum extrude S<temperature>.
* M303 - PID relay autotune S<temperature> sets the target temperature (default target temperature = 150C). H<hotend> C<cycles> U<Apply result> * M303 - PID relay autotune S<temperature> sets the target temperature (default target temperature = 150C). H<hotend> C<cycles> U<Apply result>
* M304 - Set bed PID parameters P I and D or cooling if L parameter * M304 - Set bed PID parameters P I and D or cooling if C parameter
* M350 - Set microstepping mode. * M350 - Set microstepping mode.
* M351 - Toggle MS1 MS2 pins directly. * M351 - Toggle MS1 MS2 pins directly.
* M380 - Activate solenoid on active extruder * M380 - Activate solenoid on active extruder
......
...@@ -2940,6 +2940,27 @@ inline void do_blocking_move_to_z(float z) { do_blocking_move_to(current_positio ...@@ -2940,6 +2940,27 @@ inline void do_blocking_move_to_z(float z) { do_blocking_move_to(current_positio
} }
#endif #endif
#if HAS(TEMP_COOLER)
void print_coolerstates() {
ECHO_MV(SERIAL_C, degCooler(), 1);
ECHO_MV(" /", degTargetCooler(), 1);
ECHO_M(SERIAL_CAT);
#if ENABLED(COOLER_WATTS)
ECHO_VM(((COOLER_WATTS) * getCoolerPower()) / 127, "W");
#else
#if ENABLED(FAST_PWM_COOLER)
ECHO_V(getPwmCooler(false));
#else
ECHO_V(getCoolerPower());
#endif
#endif
#if ENABLED(SHOW_TEMP_ADC_VALUES)
ECHO_MV(" ADC C:", degCooler(), 1);
ECHO_MV("C->", rawBedCooler() / OVERSAMPLENR, 0);
#endif
}
#endif // HAS(TEMP_COOLER)
inline void wait_heater(bool no_wait_for_cooling = true) { inline void wait_heater(bool no_wait_for_cooling = true) {
#if ENABLED(TEMP_RESIDENCY_TIME) #if ENABLED(TEMP_RESIDENCY_TIME)
...@@ -3088,6 +3109,79 @@ inline void wait_bed(bool no_wait_for_cooling = true) { ...@@ -3088,6 +3109,79 @@ inline void wait_bed(bool no_wait_for_cooling = true) {
KEEPALIVE_STATE(IN_HANDLER); KEEPALIVE_STATE(IN_HANDLER);
} }
#if HAS(TEMP_COOLER)
inline void wait_cooler(bool no_wait_for_heating = true) {
#if TEMP_COOLER_RESIDENCY_TIME > 0
millis_t residency_start_ms = 0;
// Loop until the temperature has stabilized
#define TEMP_COOLER_CONDITIONS (!residency_start_ms || PENDING(now, residency_start_ms + (TEMP_COOLER_RESIDENCY_TIME) * 1000UL))
#else
// Loop until the temperature is very close target
#define TEMP_COOLER_CONDITIONS (wants_to_heat ? isHeatingCooler() : isCoolingCooler())
#endif
float theTarget = -1;
bool wants_to_cool;
cancel_cooldown = false;
millis_t now, next_temp_ms = 0;
KEEPALIVE_STATE(NOT_BUSY);
// Wait for temperature to come close enough
do {
now = millis();
if (ELAPSED(now, next_temp_ms)) { //Print Temp Reading every 1 second while heating up.
next_temp_ms = now + 1000UL;
print_coolerstates();
#if TEMP_COOLER_RESIDENCY_TIME > 0
ECHO_M(SERIAL_W);
if (residency_start_ms) {
long rem = (((TEMP_COOLER_RESIDENCY_TIME) * 1000UL) - (now - residency_start_ms)) / 1000UL;
ECHO_EV(rem);
}
else {
ECHO_EM("?");
}
#else
ECHO_E;
#endif
}
// Target temperature might be changed during the loop
if (theTarget != degTargetCooler()) {
wants_to_heat = isHeatingCooler();
theTarget = degTargetCooler();
// Exit if S<higher>, continue if S<lower>, R<higher>, or R<lower>
if (no_wait_for_heating && wants_to_heat) break;
// Prevent a wait-forever situation if R is misused i.e. M190 C R50
// Simply don't wait to heat a cooler over 25C
if (wants_to_heat && theTarget > 25) break;
}
idle();
refresh_cmd_timeout(); // to prevent stepper_inactive_time from running out
#if TEMP_COOLER_RESIDENCY_TIME > 0
float temp_diff = fabs(degTargetBed() - theTarget);
if (!residency_start_ms) {
// Start the TEMP_COOLER_RESIDENCY_TIME timer when we reach target temp for the first time.
if (temp_diff < TEMP_COOLER_WINDOW) residency_start_ms = millis();
}
else if (temp_diff > TEMP_COOLER_HYSTERESIS) {
// Restart the timer whenever the temperature falls outside the hysteresis.
residency_start_ms = millis();
}
#endif //TEMP_COOLER_RESIDENCY_TIME > 0
} while (!cancel_cooldown && TEMP_COOLER_CONDITIONS);
LCD_MESSAGEPGM(MSG_COOLER_DONE);
KEEPALIVE_STATE(IN_HANDLER);
}
#endif
/****************************************************************************** /******************************************************************************
***************************** G-Code Functions ******************************** ***************************** G-Code Functions ********************************
...@@ -5292,6 +5386,7 @@ inline void gcode_M77() { ...@@ -5292,6 +5386,7 @@ inline void gcode_M77() {
*/ */
inline void gcode_M81() { inline void gcode_M81() {
disable_all_heaters(); disable_all_heaters();
disable_all_coolers();
st_synchronize(); st_synchronize();
disable_e(); disable_e();
finishAndDisableSteppers(); finishAndDisableSteppers();
...@@ -5644,9 +5739,14 @@ inline void gcode_M104() { ...@@ -5644,9 +5739,14 @@ inline void gcode_M104() {
inline void gcode_M105() { inline void gcode_M105() {
if (setTargetedExtruder(105)) return; if (setTargetedExtruder(105)) return;
#if HAS(TEMP_0) || HAS(TEMP_BED) || ENABLED(HEATER_0_USES_MAX6675) #if HAS(TEMP_0) || HAS(TEMP_BED) || ENABLED(HEATER_0_USES_MAX6675) || HAS(TEMP_COOLER)
ECHO_S(OK); ECHO_S(OK);
print_heaterstates(); #if HAS(TEMP_0) || HAS(TEMP_BED) || ENABLED(HEATER_0_USES_MAX6675)
print_heaterstates();
#endif
#if HAS(TEMP_COOLER)
print_coolerstates();
#endif
#else // HASNT(TEMP_0) && HASNT(TEMP_BED) #else // HASNT(TEMP_0) && HASNT(TEMP_BED)
ECHO_LM(ER, SERIAL_ERR_NO_THERMISTORS); ECHO_LM(ER, SERIAL_ERR_NO_THERMISTORS);
#endif #endif
...@@ -5841,11 +5941,17 @@ inline void gcode_M122() { ...@@ -5841,11 +5941,17 @@ inline void gcode_M122() {
#endif //BARICUDA #endif //BARICUDA
/** /**
* M140: Set bed temperature * M140: Set bed or cooler temperature
*/ */
inline void gcode_M140() { inline void gcode_M140() {
if (DEBUGGING(DRYRUN)) return; if (DEBUGGING(DRYRUN)) return;
if (code_seen('S')) setTargetBed(code_value()); if (code_seen('C')) {
if (code_seen('S')) setTargetCooler(code_value());
}
else {
if (code_seen('S')) setTargetBed(code_value());
}
} }
#if ENABLED(ULTIPANEL) && TEMP_SENSOR_0 != 0 #if ENABLED(ULTIPANEL) && TEMP_SENSOR_0 != 0
...@@ -5992,19 +6098,37 @@ inline void gcode_M140() { ...@@ -5992,19 +6098,37 @@ inline void gcode_M140() {
inline void gcode_M165() { gcode_get_mix(); } inline void gcode_M165() { gcode_get_mix(); }
#endif // COLOR_MIXING_EXTRUDER #endif // COLOR_MIXING_EXTRUDER
#if HAS(TEMP_BED) #if HAS(TEMP_BED) || HAS(TEMP_COOLER)
/** /**
* M190: Sxxx Wait for bed current temp to reach target temp. Waits only when heating * M190: Sxxx Wait for bed or cooler current temp to reach target temp. Waits only when heating for bed, cooling for cooler
* Rxxx Wait for bed current temp to reach target temp. Waits when heating and cooling * Rxxx Wait for bed or cooler current temp to reach target temp. Waits when heating and cooling
* C select cooler, omitting select bed
*
*/ */
inline void gcode_M190() { inline void gcode_M190() {
if (DEBUGGING(DRYRUN)) return; if (DEBUGGING(DRYRUN)) return;
#if HAS(TEMP_COOLER)
if code_seen('C') {
LCD_MESSAGEPGM(MSG_COOLER_COOLING);
bool no_wait_for_heating = code_seen('S');
if (no_wait_for_heating || code_seen('R')) setTargetCooler(code_value());
LCD_MESSAGEPGM(MSG_BED_HEATING); wait_cooler(no_wait_for_heating);
bool no_wait_for_cooling = code_seen('S'); }
if (no_wait_for_cooling || code_seen('R')) setTargetBed(code_value()); #endif
#if HAS(TEMP_BED) && HAS(TEMP_COOLER)
else {
#elif HAS(TEMP_BED)
if (!code_seen('C')) {
#endif
#if HAS(TEMP_BED)
LCD_MESSAGEPGM(MSG_BED_HEATING);
bool no_wait_for_cooling = code_seen('S');
if (no_wait_for_cooling || code_seen('R')) setTargetBed(code_value());
wait_bed(no_wait_for_cooling); wait_bed(no_wait_for_cooling);
}
#endif
} }
#endif // HAS(TEMP_BED) #endif // HAS(TEMP_BED)
...@@ -6493,13 +6617,13 @@ inline void gcode_M226() { ...@@ -6493,13 +6617,13 @@ inline void gcode_M226() {
// M304: Set bed PID parameters P I and D // M304: Set bed PID parameters P I and D
inline void gcode_M304() { inline void gcode_M304() {
#if ENABLED(PIDTEMPCOOLER) #if ENABLED(PIDTEMPCOOLER)
if (code_seen('L')) { if (code_seen('C')) {
if (code_seen('P')) coolerKp = code_value(); if (code_seen('P')) coolerKp = code_value();
if (code_seen('I')) coolerKi = scalePID_i(code_value()); if (code_seen('I')) coolerKi = scalePID_i(code_value());
if (code_seen('D')) coolerKd = scalePID_d(code_value()); if (code_seen('D')) coolerKd = scalePID_d(code_value());
updatePID(); updatePID();
ECHO_SMV(OK, " L p:", coolerKp); ECHO_SMV(OK, " C p:", coolerKp);
ECHO_MV(" i:", unscalePID_i(coolerKi)); ECHO_MV(" i:", unscalePID_i(coolerKi));
ECHO_EMV(" d:", unscalePID_d(coolerKd)); ECHO_EMV(" d:", unscalePID_d(coolerKd));
...@@ -7256,6 +7380,7 @@ inline void gcode_M503() { ...@@ -7256,6 +7380,7 @@ inline void gcode_M503() {
if ((millis() - last_set > 60000) && cnt <= FILAMENT_CHANGE_PRINTER_OFF) beep = true; if ((millis() - last_set > 60000) && cnt <= FILAMENT_CHANGE_PRINTER_OFF) beep = true;
if (cnt >= FILAMENT_CHANGE_PRINTER_OFF && !sleep) { if (cnt >= FILAMENT_CHANGE_PRINTER_OFF && !sleep) {
disable_all_heaters(); disable_all_heaters();
disable_all_coolers();
sleep = true; sleep = true;
lcd_reset_alert_level(); lcd_reset_alert_level();
LCD_ALERTMESSAGEPGM("Zzzz Zzzz Zzzz"); LCD_ALERTMESSAGEPGM("Zzzz Zzzz Zzzz");
...@@ -8250,7 +8375,7 @@ void process_next_command() { ...@@ -8250,7 +8375,7 @@ void process_next_command() {
#endif // HAS(HEATER_2) #endif // HAS(HEATER_2)
#endif // BARICUDA #endif // BARICUDA
case 140: // M140 Set bed temp case 140: // M140 Set bed or cooler temp
gcode_M140(); break; gcode_M140(); break;
#if ENABLED(BLINKM) #if ENABLED(BLINKM)
...@@ -8269,8 +8394,8 @@ void process_next_command() { ...@@ -8269,8 +8394,8 @@ void process_next_command() {
gcode_M165(); break; gcode_M165(); break;
#endif #endif
#if HAS(TEMP_BED) #if HAS(TEMP_BED) || HAS(TEMP_COOLER)
case 190: // M190 - Wait for bed heater to reach target. case 190: // M190 - Wait for bed heater or for cooler to reach target.
gcode_M190(); break; gcode_M190(); break;
#endif //TEMP_BED_PIN #endif //TEMP_BED_PIN
...@@ -9430,6 +9555,7 @@ void kill(const char* lcd_msg) { ...@@ -9430,6 +9555,7 @@ void kill(const char* lcd_msg) {
void stop() { void stop() {
disable_all_heaters(); disable_all_heaters();
disable_all_coolers();
#ifdef LASER #ifdef LASER
if (laser.diagnostics) ECHO_LM(INFO, "Laser set to off, stop() called"); if (laser.diagnostics) ECHO_LM(INFO, "Laser set to off, stop() called");
laser_extinguish(); laser_extinguish();
......
...@@ -267,7 +267,7 @@ extern uint8_t active_driver; ...@@ -267,7 +267,7 @@ extern uint8_t active_driver;
#endif #endif
#if HAS(TEMP_COOLER) #if HAS(TEMP_COOLER)
void print_heaterstates(); void print_coolerstates();
#endif #endif
#if ENABLED(FIRMWARE_TEST) #if ENABLED(FIRMWARE_TEST)
......
...@@ -182,9 +182,11 @@ ...@@ -182,9 +182,11 @@
#define SERIAL_KI " Ki: " #define SERIAL_KI " Ki: "
#define SERIAL_KD " Kd: " #define SERIAL_KD " Kd: "
#define SERIAL_T " T:" #define SERIAL_T " T:"
#define SERIAL_C " C:"
#define SERIAL_B " B:" #define SERIAL_B " B:"
#define SERIAL_AT " @" #define SERIAL_AT " @"
#define SERIAL_BAT " B@:" #define SERIAL_BAT " B@:"
#define SERIAL_CAT " C@:"
#define SERIAL_W " W:" #define SERIAL_W " W:"
#define SERIAL_PID_AUTOTUNE_FINISHED SERIAL_PID_AUTOTUNE " finished! Put the last Kp, Ki and Kd constants from above into Configuration.h or send command M500 for save in EEPROM the new value!" #define SERIAL_PID_AUTOTUNE_FINISHED SERIAL_PID_AUTOTUNE " finished! Put the last Kp, Ki and Kd constants from above into Configuration.h or send command M500 for save in EEPROM the new value!"
#define SERIAL_PID_DEBUG " PID_DEBUG " #define SERIAL_PID_DEBUG " PID_DEBUG "
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -218,6 +220,9 @@ ...@@ -218,6 +220,9 @@
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
#define MSG_CONFIG "Configuration" #define MSG_CONFIG "Configuration"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "часа" #define MSG_END_HOUR "часа"
#define MSG_END_MINUTE "минути" #define MSG_END_MINUTE "минути"
...@@ -218,6 +220,9 @@ ...@@ -218,6 +220,9 @@
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
#define MSG_CONFIG "Configuration" #define MSG_CONFIG "Configuration"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -218,6 +220,9 @@ ...@@ -218,6 +220,9 @@
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
#define MSG_CONFIG "Configuration" #define MSG_CONFIG "Configuration"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -218,6 +220,10 @@ ...@@ -218,6 +220,10 @@
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
#define MSG_CONFIG "Configuration" #define MSG_CONFIG "Configuration"
......
...@@ -183,6 +183,8 @@ ...@@ -183,6 +183,8 @@
#define MSG_ERR_MINTEMP "Chyba: NIZKA TEPLOTA" #define MSG_ERR_MINTEMP "Chyba: NIZKA TEPLOTA"
#define MSG_ERR_MAXTEMP_BED "Chyba: VYSOKA TEPLOTA PODL." #define MSG_ERR_MAXTEMP_BED "Chyba: VYSOKA TEPLOTA PODL."
#define MSG_ERR_MINTEMP_BED "Chyba: NIZKA TEPLOTA PODL." #define MSG_ERR_MINTEMP_BED "Chyba: NIZKA TEPLOTA PODL."
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hod" #define MSG_END_HOUR "hod"
#define MSG_END_MINUTE "min" #define MSG_END_MINUTE "min"
...@@ -220,6 +222,9 @@ ...@@ -220,6 +222,9 @@
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
#define MSG_CONFIG "Configuration" #define MSG_CONFIG "Configuration"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "timer" #define MSG_END_HOUR "timer"
#define MSG_END_MINUTE "minutter" #define MSG_END_MINUTE "minutter"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Opvarmet" #define MSG_HEATING_COMPLETE "Opvarmet"
#define MSG_BED_HEATING "Opvarmer plade" #define MSG_BED_HEATING "Opvarmer plade"
#define MSG_BED_DONE "Plade opvarmet" #define MSG_BED_DONE "Plade opvarmet"
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "tage" #define MSG_END_DAY "tage"
#define MSG_END_HOUR "uur" #define MSG_END_HOUR "uur"
#define MSG_END_MINUTE "minuten" #define MSG_END_MINUTE "minuten"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -241,6 +243,9 @@ ...@@ -241,6 +243,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "heures" #define MSG_END_HOUR "heures"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -155,12 +155,17 @@ ...@@ -155,12 +155,17 @@
#define MSG_ERR_MINTEMP "Err: temp. min." #define MSG_ERR_MINTEMP "Err: temp. min."
#define MSG_ERR_MAXTEMP_BED "Err: MAXTEMP BED" #define MSG_ERR_MAXTEMP_BED "Err: MAXTEMP BED"
#define MSG_ERR_MINTEMP_BED "Err: MINTEMP BED" #define MSG_ERR_MINTEMP_BED "Err: MINTEMP BED"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_HOUR "horas" #define MSG_END_HOUR "horas"
#define MSG_END_MINUTE "minutos" #define MSG_END_MINUTE "minutos"
#define MSG_HEATING "Quentando..." #define MSG_HEATING "Quentando..."
#define MSG_HEATING_COMPLETE "Xa esta quente" #define MSG_HEATING_COMPLETE "Xa esta quente"
#define MSG_BED_HEATING "Quentando cama" #define MSG_BED_HEATING "Quentando cama"
#define MSG_BED_DONE "Cama esta quente" #define MSG_BED_DONE "Cama esta quente"
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
#define MSG_DELTA_CALIBRATE "Calibracion Delta" #define MSG_DELTA_CALIBRATE "Calibracion Delta"
#define MSG_DELTA_CALIBRATE_X "Calibrar X" #define MSG_DELTA_CALIBRATE_X "Calibrar X"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "Err: TEMP MINIMA" #define MSG_ERR_MINTEMP "Err: TEMP MINIMA"
#define MSG_ERR_MAXTEMP_BED "Err: TEMP MASSIMA PIATTO" #define MSG_ERR_MAXTEMP_BED "Err: TEMP MASSIMA PIATTO"
#define MSG_ERR_MINTEMP_BED "Err: TEMP MINIMA PIATTO" #define MSG_ERR_MINTEMP_BED "Err: TEMP MINIMA PIATTO"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "giorni" #define MSG_END_DAY "giorni"
#define MSG_END_HOUR "ore" #define MSG_END_HOUR "ore"
#define MSG_END_MINUTE "minuti" #define MSG_END_MINUTE "minuti"
...@@ -241,6 +243,9 @@ ...@@ -241,6 +243,9 @@
#define MSG_HEATING_COMPLETE "Riscaldamento finito." #define MSG_HEATING_COMPLETE "Riscaldamento finito."
#define MSG_BED_HEATING "Riscaldamento piatto." #define MSG_BED_HEATING "Riscaldamento piatto."
#define MSG_BED_DONE "Piatto riscaldato." #define MSG_BED_DONE "Piatto riscaldato."
#define MSG_COOLER_COOLING "Raffreddamento..."
#define MSG_COOLER_DONE "Raffreddamento finito."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -183,6 +183,8 @@ ...@@ -183,6 +183,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -219,6 +221,9 @@ ...@@ -219,6 +221,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -186,6 +186,8 @@ ...@@ -186,6 +186,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -222,6 +224,9 @@ ...@@ -222,6 +224,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -157,12 +157,17 @@ ...@@ -157,12 +157,17 @@
#define MSG_ERR_MINTEMP "Err: T Mínima" #define MSG_ERR_MINTEMP "Err: T Mínima"
#define MSG_ERR_MAXTEMP_BED "Err: T Base Máxima" #define MSG_ERR_MAXTEMP_BED "Err: T Base Máxima"
#define MSG_ERR_MINTEMP_BED "Err: T Base Mínima" #define MSG_ERR_MINTEMP_BED "Err: T Base Mínima"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_HOUR "Horas" #define MSG_END_HOUR "Horas"
#define MSG_END_MINUTE "Minutos" #define MSG_END_MINUTE "Minutos"
#define MSG_HEATING "Aquecendo..." #define MSG_HEATING "Aquecendo..."
#define MSG_HEATING_COMPLETE "Aquecida." #define MSG_HEATING_COMPLETE "Aquecida."
#define MSG_BED_HEATING "Aquecendo base.." #define MSG_BED_HEATING "Aquecendo base.."
#define MSG_BED_DONE "Base aquecida." #define MSG_BED_DONE "Base aquecida."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
#define MSG_DELTA_CALIBRATE "Calibrar Delta" #define MSG_DELTA_CALIBRATE "Calibrar Delta"
#define MSG_DELTA_CALIBRATE_X "Calibrar X" #define MSG_DELTA_CALIBRATE_X "Calibrar X"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -161,12 +161,17 @@ ...@@ -161,12 +161,17 @@
#define MSG_ERR_MINTEMP "Err: T Mínima" #define MSG_ERR_MINTEMP "Err: T Mínima"
#define MSG_ERR_MAXTEMP_BED "Err: T Base Máxima" #define MSG_ERR_MAXTEMP_BED "Err: T Base Máxima"
#define MSG_ERR_MINTEMP_BED "Err: T Base Mínima" #define MSG_ERR_MINTEMP_BED "Err: T Base Mínima"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_HOUR "horas" #define MSG_END_HOUR "horas"
#define MSG_END_MINUTE "minutos" #define MSG_END_MINUTE "minutos"
#define MSG_HEATING "Aquecendo..." #define MSG_HEATING "Aquecendo..."
#define MSG_HEATING_COMPLETE "Aquecida." #define MSG_HEATING_COMPLETE "Aquecida."
#define MSG_BED_HEATING "Aquecendo base.." #define MSG_BED_HEATING "Aquecendo base.."
#define MSG_BED_DONE "Base aquecida." #define MSG_BED_DONE "Base aquecida."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
#define MSG_DELTA_CALIBRATE "Calibração Delta" #define MSG_DELTA_CALIBRATE "Calibração Delta"
#define MSG_DELTA_CALIBRATE_X "Calibrar X" #define MSG_DELTA_CALIBRATE_X "Calibrar X"
......
...@@ -181,6 +181,8 @@ ...@@ -181,6 +181,8 @@
#define MSG_ERR_MINTEMP "MINTEMP ERROR" #define MSG_ERR_MINTEMP "MINTEMP ERROR"
#define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR" #define MSG_ERR_MAXTEMP_BED "MAXTEMP BED ERROR"
#define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR" #define MSG_ERR_MINTEMP_BED "MINTEMP BED ERROR"
#define MSG_ERR_MAXTEMP_COOLER "MAXTEMP COOLER ERROR"
#define MSG_ERR_MINTEMP_COOLER "MINTEMP COOLER ERROR"
#define MSG_END_DAY "days" #define MSG_END_DAY "days"
#define MSG_END_HOUR "hours" #define MSG_END_HOUR "hours"
#define MSG_END_MINUTE "minutes" #define MSG_END_MINUTE "minutes"
...@@ -217,6 +219,9 @@ ...@@ -217,6 +219,9 @@
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
#define MSG_BED_DONE "Bed done." #define MSG_BED_DONE "Bed done."
#define MSG_COOLER_COOLING "Cooling..."
#define MSG_COOLER_DONE "Cooling done."
// Extra // Extra
#define MSG_LASER "Laser Preset" #define MSG_LASER "Laser Preset"
......
...@@ -999,6 +999,7 @@ static void lcd_preheat_gum_menu() { ...@@ -999,6 +999,7 @@ static void lcd_preheat_gum_menu() {
void lcd_cooldown() { void lcd_cooldown() {
disable_all_heaters(); disable_all_heaters();
disable_all_coolers();
fanSpeed = 0; fanSpeed = 0;
lcd_return_to_status(); lcd_return_to_status();
} }
......
...@@ -162,6 +162,7 @@ void Endstops::report_state() { ...@@ -162,6 +162,7 @@ void Endstops::report_state() {
card.closefile(); card.closefile();
quickStop(); quickStop();
disable_all_heaters(); // switch off all heaters. disable_all_heaters(); // switch off all heaters.
disable_all_coolers();
} }
#endif #endif
} }
......
...@@ -100,7 +100,6 @@ unsigned char soft_pwm_bed; ...@@ -100,7 +100,6 @@ unsigned char soft_pwm_bed;
unsigned char soft_pwm_cooler; unsigned char soft_pwm_cooler;
void setPwmCooler(unsigned char pwm); void setPwmCooler(unsigned char pwm);
unsigned char getPwmCooler(bool soft);
#if ENABLED(BABYSTEPPING) #if ENABLED(BABYSTEPPING)
......
...@@ -200,6 +200,7 @@ HOTEND_ROUTINES(0); ...@@ -200,6 +200,7 @@ HOTEND_ROUTINES(0);
int getHeaterPower(int heater); int getHeaterPower(int heater);
int getCoolerPower(); int getCoolerPower();
unsigned char getPwmCooler(bool soft);
void disable_all_heaters(); void disable_all_heaters();
void disable_all_coolers(); void disable_all_coolers();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment