parent
e4d77a6313
commit
e3ca9137b5
1 changed files with 31 additions and 48 deletions
|
@ -516,6 +516,36 @@ void checkExtruderAutoFans()
|
||||||
#define WRITE_FAN(v) WRITE(FAN_PIN, v)
|
#define WRITE_FAN(v) WRITE(FAN_PIN, v)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
inline void _temp_error(int e, const char *msg1, const char *msg2) {
|
||||||
|
if (!IsStopped()) {
|
||||||
|
SERIAL_ERROR_START;
|
||||||
|
if (e >= 0) SERIAL_ERRORLN((int)e);
|
||||||
|
serialprintPGM(msg1);
|
||||||
|
MYSERIAL.write('\n');
|
||||||
|
#ifdef ULTRA_LCD
|
||||||
|
lcd_setalertstatuspgm(msg2);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
|
||||||
|
Stop();
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
void max_temp_error(uint8_t e) {
|
||||||
|
disable_heater();
|
||||||
|
_temp_error(e, MSG_MAXTEMP_EXTRUDER_OFF, MSG_ERR_MAXTEMP);
|
||||||
|
}
|
||||||
|
void min_temp_error(uint8_t e) {
|
||||||
|
disable_heater();
|
||||||
|
_temp_error(e, MSG_MINTEMP_EXTRUDER_OFF, MSG_ERR_MINTEMP);
|
||||||
|
}
|
||||||
|
void bed_max_temp_error(void) {
|
||||||
|
#if HAS_HEATER_BED
|
||||||
|
WRITE_HEATER_BED(0);
|
||||||
|
#endif
|
||||||
|
_temp_error(-1, MSG_MAXTEMP_BED_OFF, MSG_ERR_MAXTEMP_BED);
|
||||||
|
}
|
||||||
|
|
||||||
void manage_heater() {
|
void manage_heater() {
|
||||||
|
|
||||||
if (!temp_meas_ready) return;
|
if (!temp_meas_ready) return;
|
||||||
|
@ -623,14 +653,7 @@ void manage_heater() {
|
||||||
#ifdef TEMP_SENSOR_1_AS_REDUNDANT
|
#ifdef TEMP_SENSOR_1_AS_REDUNDANT
|
||||||
if (fabs(current_temperature[0] - redundant_temperature) > MAX_REDUNDANT_TEMP_SENSOR_DIFF) {
|
if (fabs(current_temperature[0] - redundant_temperature) > MAX_REDUNDANT_TEMP_SENSOR_DIFF) {
|
||||||
disable_heater();
|
disable_heater();
|
||||||
if (IsStopped() == false) {
|
_temp_error(-1, MSG_EXTRUDER_SWITCHED_OFF, MSG_ERR_REDUNDANT_TEMP);
|
||||||
SERIAL_ERROR_START;
|
|
||||||
SERIAL_ERRORLNPGM(MSG_EXTRUDER_SWITCHED_OFF);
|
|
||||||
LCD_ALERTMESSAGEPGM(MSG_ERR_REDUNDANT_TEMP); // translatable
|
|
||||||
}
|
|
||||||
#ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
|
|
||||||
Stop();
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
#endif //TEMP_SENSOR_1_AS_REDUNDANT
|
#endif //TEMP_SENSOR_1_AS_REDUNDANT
|
||||||
|
|
||||||
|
@ -1136,46 +1159,6 @@ void disable_heater() {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void max_temp_error(uint8_t e) {
|
|
||||||
disable_heater();
|
|
||||||
if(IsStopped() == false) {
|
|
||||||
SERIAL_ERROR_START;
|
|
||||||
SERIAL_ERRORLN((int)e);
|
|
||||||
SERIAL_ERRORLNPGM(MSG_MAXTEMP_EXTRUDER_OFF);
|
|
||||||
LCD_ALERTMESSAGEPGM(MSG_ERR_MAXTEMP); // translatable
|
|
||||||
}
|
|
||||||
#ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
|
|
||||||
Stop();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void min_temp_error(uint8_t e) {
|
|
||||||
disable_heater();
|
|
||||||
if(IsStopped() == false) {
|
|
||||||
SERIAL_ERROR_START;
|
|
||||||
SERIAL_ERRORLN((int)e);
|
|
||||||
SERIAL_ERRORLNPGM(MSG_MINTEMP_EXTRUDER_OFF);
|
|
||||||
LCD_ALERTMESSAGEPGM(MSG_ERR_MINTEMP); // translatable
|
|
||||||
}
|
|
||||||
#ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
|
|
||||||
Stop();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void bed_max_temp_error(void) {
|
|
||||||
#if HAS_HEATER_BED
|
|
||||||
WRITE_HEATER_BED(0);
|
|
||||||
#endif
|
|
||||||
if (IsStopped() == false) {
|
|
||||||
SERIAL_ERROR_START;
|
|
||||||
SERIAL_ERRORLNPGM(MSG_MAXTEMP_BED_OFF);
|
|
||||||
LCD_ALERTMESSAGEPGM(MSG_ERR_MAXTEMP_BED); // translatable
|
|
||||||
}
|
|
||||||
#ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
|
|
||||||
Stop();
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef HEATER_0_USES_MAX6675
|
#ifdef HEATER_0_USES_MAX6675
|
||||||
#define MAX6675_HEAT_INTERVAL 250
|
#define MAX6675_HEAT_INTERVAL 250
|
||||||
long max6675_previous_millis = MAX6675_HEAT_INTERVAL;
|
long max6675_previous_millis = MAX6675_HEAT_INTERVAL;
|
||||||
|
|
Reference in a new issue