fan error: long pause is used during print, resuming print resets error flag; stop print used during heating phase

This commit is contained in:
PavelSindler 2017-09-22 20:43:30 +02:00
parent 7e71d21a03
commit d1a065881b
3 changed files with 26 additions and 17 deletions

View file

@ -460,33 +460,36 @@ extern void stop_and_save_print_to_ram(float z_move, float e_move);
extern void restore_print_from_ram_and_continue(float e_move); extern void restore_print_from_ram_and_continue(float e_move);
void fanSpeedError(unsigned char _fan) { void fanSpeedError(unsigned char _fan) {
if (card.sdprinting) { if (card.sdprinting) {
if(heating_status != 0) lcd_print_stop(); if (heating_status != 0) {
lcd_print_stop();
}
else lcd_sdcard_pause(); else lcd_sdcard_pause();
} }
else {
setTargetHotend0(0); setTargetHotend0(0);
}
//lcd_update();
WRITE(BEEPER, HIGH);
delayMicroseconds(2000);
WRITE(BEEPER, LOW);
delayMicroseconds(100);
SERIAL_ERROR_START; SERIAL_ERROR_START;
switch (_fan) { switch (_fan) {
case 0: case 0:
fanSpeed = 255;
//lcd_print_stop();
SERIAL_ERRORLNPGM("ERROR: Extruder fan speed is lower then expected"); SERIAL_ERRORLNPGM("ERROR: Extruder fan speed is lower then expected");
LCD_ALERTMESSAGEPGM("Err: EXTR. FAN ERROR"); if (get_message_level() == 0) {
WRITE(BEEPER, HIGH);
delayMicroseconds(200);
WRITE(BEEPER, LOW);
delayMicroseconds(100);
LCD_ALERTMESSAGEPGM("Err: EXTR. FAN ERROR");
}
break; break;
case 1: case 1:
//stop_and_save_print_to_ram(0, 0);
SERIAL_ERRORLNPGM("ERROR: Print fan speed is lower then expected"); SERIAL_ERRORLNPGM("ERROR: Print fan speed is lower then expected");
LCD_ALERTMESSAGEPGM("Err: PRINT FAN ERROR"); if (get_message_level() == 0) {
WRITE(BEEPER, HIGH);
delayMicroseconds(200);
WRITE(BEEPER, LOW);
delayMicroseconds(100);
LCD_ALERTMESSAGEPGM("Err: PRINT FAN ERROR");
}
break; break;
} }
} }

View file

@ -828,6 +828,7 @@ void lcd_sdcard_pause() {
static void lcd_sdcard_resume() { static void lcd_sdcard_resume() {
lcd_return_to_status(); lcd_return_to_status();
lcd_reset_alert_level(); //for fan speed error
lcd_commands_type = LCD_COMMAND_LONG_PAUSE_RESUME; lcd_commands_type = LCD_COMMAND_LONG_PAUSE_RESUME;
} }
@ -5498,6 +5499,10 @@ void lcd_reset_alert_level()
lcd_status_message_level = 0; lcd_status_message_level = 0;
} }
uint8_t get_message_level()
{
return lcd_status_message_level;
}
#ifdef DOGLCD #ifdef DOGLCD
void lcd_setcontrast(uint8_t value) void lcd_setcontrast(uint8_t value)
{ {

View file

@ -14,6 +14,7 @@
void lcd_setstatuspgm(const char* message); void lcd_setstatuspgm(const char* message);
void lcd_setalertstatuspgm(const char* message); void lcd_setalertstatuspgm(const char* message);
void lcd_reset_alert_level(); void lcd_reset_alert_level();
uint8_t get_message_level();
void lcd_adjust_z(); void lcd_adjust_z();
void lcd_pick_babystep(); void lcd_pick_babystep();
void lcd_alright(); void lcd_alright();