Fix sporadic display issues on Anycubic 1.0 display #536
@@ -78,7 +78,8 @@ static void sendLine_P(PGM_P str) {
|
|||||||
|
|
||||||
AnycubicMediaPrintState AnycubicTouchscreenClass::mediaPrintingState = AMPRINTSTATE_NOT_PRINTING;
|
AnycubicMediaPrintState AnycubicTouchscreenClass::mediaPrintingState = AMPRINTSTATE_NOT_PRINTING;
|
||||||
AnycubicMediaPauseState AnycubicTouchscreenClass::mediaPauseState = AMPAUSESTATE_NOT_PAUSED;
|
AnycubicMediaPauseState AnycubicTouchscreenClass::mediaPauseState = AMPAUSESTATE_NOT_PAUSED;
|
||||||
|
uint32_t AnycubicTouchscreenClass::time_last_cyclic_tft_command = 0;
|
||||||
|
uint8_t AnycubicTouchscreenClass::delayed_tft_command = 0;
|
||||||
|
|
||||||
#if ENABLED(POWER_OUTAGE_TEST)
|
#if ENABLED(POWER_OUTAGE_TEST)
|
||||||
int PowerInt = 6;
|
int PowerInt = 6;
|
||||||
@@ -261,10 +262,13 @@ void AnycubicTouchscreenClass::ResumePrint() {
|
|||||||
|
|
||||||
// trigger the user message box
|
// trigger the user message box
|
||||||
DoFilamentRunoutCheck();
|
DoFilamentRunoutCheck();
|
||||||
|
if ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) {
|
||||||
// re-enable the continue button
|
// re-enable the continue button
|
||||||
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: Resume Print with filament sensor still "
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: Resume Print with filament sensor still "
|
||||||
"tripped... J18");
|
"tripped... J18");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
delayed_tft_command = 18;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -1000,7 +1004,6 @@ void AnycubicTouchscreenClass::FilamentRunout() {
|
|||||||
DoFilamentRunoutCheck();
|
DoFilamentRunoutCheck();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void AnycubicTouchscreenClass::DoFilamentRunoutCheck() {
|
void AnycubicTouchscreenClass::DoFilamentRunoutCheck() {
|
||||||
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
|
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
|
||||||
// NOTE: getFilamentRunoutState() only returns the runout state if the job is
|
// NOTE: getFilamentRunoutState() only returns the runout state if the job is
|
||||||
@@ -1012,9 +1015,12 @@ void AnycubicTouchscreenClass::DoFilamentRunoutCheck() {
|
|||||||
// play tone to indicate filament is out
|
// play tone to indicate filament is out
|
||||||
injectCommands(F("\nM300 P200 S1567\nM300 P200 S1174\nM300 P200 "
|
injectCommands(F("\nM300 P200 S1567\nM300 P200 S1174\nM300 P200 "
|
||||||
"S1567\nM300 P200 S1174\nM300 P2000 S1567"));
|
"S1567\nM300 P200 S1174\nM300 P2000 S1567"));
|
||||||
|
if ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) {
|
||||||
// tell the user that the filament has run out and wait
|
// tell the user that the filament has run out and wait
|
||||||
SENDLINE_DBG_PGM("J23", "TFT Serial Debug: Blocking filament prompt... J23");
|
SENDLINE_DBG_PGM("J23", "TFT Serial Debug: Blocking filament prompt... J23");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
delayed_tft_command = 23;
|
||||||
} else {
|
} else {
|
||||||
SENDLINE_DBG_PGM("J15", "TFT Serial Debug: Non blocking filament runout... J15");
|
SENDLINE_DBG_PGM("J15", "TFT Serial Debug: Non blocking filament runout... J15");
|
||||||
}
|
}
|
||||||
@@ -1042,29 +1048,49 @@ void AnycubicTouchscreenClass::UserConfirmRequired(const char* const msg) {
|
|||||||
if (strcmp_P(msg, PSTR("Nozzle Parked")) == 0) {
|
if (strcmp_P(msg, PSTR("Nozzle Parked")) == 0) {
|
||||||
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
||||||
mediaPauseState = AMPAUSESTATE_PARKED;
|
mediaPauseState = AMPAUSESTATE_PARKED;
|
||||||
// enable continue button
|
if ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) {
|
||||||
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm SD print paused done... J18");
|
// enable continue button
|
||||||
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm SD print paused done... J18");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
delayed_tft_command = 18;
|
||||||
} else if (strcmp_P(msg, PSTR("Load Filament")) == 0) {
|
} else if (strcmp_P(msg, PSTR("Load Filament")) == 0) {
|
||||||
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
||||||
mediaPauseState = AMPAUSESTATE_FILAMENT_OUT;
|
mediaPauseState = AMPAUSESTATE_FILAMENT_OUT;
|
||||||
// enable continue button
|
if ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) {
|
||||||
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm Filament is out... J18");
|
// enable continue button
|
||||||
SENDLINE_DBG_PGM("J23", "TFT Serial Debug: UserConfirm Blocking filament prompt... J23");
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm Filament is out... J18");
|
||||||
|
SENDLINE_DBG_PGM("J23", "TFT Serial Debug: UserConfirm Blocking filament prompt... J23");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
delayed_tft_command = 118;
|
||||||
} else if (strcmp_P(msg, PSTR("Filament Purging...")) == 0) {
|
} else if (strcmp_P(msg, PSTR("Filament Purging...")) == 0) {
|
||||||
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
||||||
mediaPauseState = AMPAUSESTATE_FILAMENT_PURGING;
|
mediaPauseState = AMPAUSESTATE_FILAMENT_PURGING;
|
||||||
// enable continue button
|
if ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) {
|
||||||
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm Filament is purging... J18");
|
// enable continue button
|
||||||
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm Filament is purging... J18");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
delayed_tft_command = 18;
|
||||||
} else if (strcmp_P(msg, PSTR("HeaterTimeout")) == 0) {
|
} else if (strcmp_P(msg, PSTR("HeaterTimeout")) == 0) {
|
||||||
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
||||||
mediaPauseState = AMPAUSESTATE_HEATER_TIMEOUT;
|
mediaPauseState = AMPAUSESTATE_HEATER_TIMEOUT;
|
||||||
// enable continue button
|
if ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) {
|
||||||
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm SD Heater timeout... J18");
|
// enable continue button
|
||||||
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm SD Heater timeout... J18");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
delayed_tft_command = 18;
|
||||||
} else if (strcmp_P(msg, PSTR("Reheat finished.")) == 0) {
|
} else if (strcmp_P(msg, PSTR("Reheat finished.")) == 0) {
|
||||||
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
mediaPrintingState = AMPRINTSTATE_PAUSED;
|
||||||
mediaPauseState = AMPAUSESTATE_REHEAT_FINISHED;
|
mediaPauseState = AMPAUSESTATE_REHEAT_FINISHED;
|
||||||
// enable continue button
|
if ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) {
|
||||||
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm SD Reheat done... J18");
|
// enable continue button
|
||||||
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: UserConfirm SD Reheat done... J18");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
delayed_tft_command = 18;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -1107,6 +1133,7 @@ void AnycubicTouchscreenClass::GetCommandFromTFT() {
|
|||||||
case 4: // A4 GET FAN SPEED
|
case 4: // A4 GET FAN SPEED
|
||||||
SEND_PGM_VAL("A4V ", int(getActualFan_percent(FAN0)));
|
SEND_PGM_VAL("A4V ", int(getActualFan_percent(FAN0)));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 5: // A5 GET CURRENT COORDINATE
|
case 5: // A5 GET CURRENT COORDINATE
|
||||||
SEND_PGM("A5V X: ");
|
SEND_PGM("A5V X: ");
|
||||||
LCD_SERIAL.print(current_position[X_AXIS]);
|
LCD_SERIAL.print(current_position[X_AXIS]);
|
||||||
@@ -1289,6 +1316,7 @@ void AnycubicTouchscreenClass::GetCommandFromTFT() {
|
|||||||
} else {
|
} else {
|
||||||
SEND_PGM_VAL("A20V ", feedrate_percentage);
|
SEND_PGM_VAL("A20V ", feedrate_percentage);
|
||||||
SENDLINE_PGM("");
|
SENDLINE_PGM("");
|
||||||
|
time_last_cyclic_tft_command = millis();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1654,7 +1682,7 @@ void AnycubicTouchscreenClass::GetCommandFromTFT() {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
#endif
|
#endif // if ENABLED(KNUTWURST_CHIRON)
|
||||||
|
|
||||||
#if ENABLED(KNUTWURST_4MAXP2)
|
#if ENABLED(KNUTWURST_4MAXP2)
|
||||||
|
|
||||||
@@ -1702,7 +1730,6 @@ void AnycubicTouchscreenClass::GetCommandFromTFT() {
|
|||||||
break;
|
break;
|
||||||
#endif // #if ENABLED(KNUTWURST_4MAXP2)
|
#endif // #if ENABLED(KNUTWURST_4MAXP2)
|
||||||
|
|
||||||
|
|
||||||
case 32: // a32 clean leveling beep flag
|
case 32: // a32 clean leveling beep flag
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -1840,143 +1867,145 @@ void AnycubicTouchscreenClass::GetCommandFromTFT() {
|
|||||||
} else {
|
} else {
|
||||||
Laser_printer_st.pic_vector = 0;
|
Laser_printer_st.pic_vector = 0;
|
||||||
}
|
}
|
||||||
break;
|
}
|
||||||
case 37:
|
break;
|
||||||
if (CodeSeen('S')) {
|
|
||||||
int coorvalue;
|
|
||||||
coorvalue = CodeValueInt();
|
|
||||||
if (coorvalue == 0) {
|
|
||||||
Laser_printer_st.pic_x_mirror = 0;
|
|
||||||
} else if (coorvalue == 1) {
|
|
||||||
Laser_printer_st.pic_x_mirror = 1; // x
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 38:
|
case 37:
|
||||||
if (CodeSeen('S')) {
|
if (CodeSeen('S')) {
|
||||||
int coorvalue;
|
int coorvalue;
|
||||||
coorvalue = CodeValueInt();
|
coorvalue = CodeValueInt();
|
||||||
Laser_printer_st.pic_laser_time = coorvalue;
|
if (coorvalue == 0) {
|
||||||
}
|
Laser_printer_st.pic_x_mirror = 0;
|
||||||
break;
|
} else if (coorvalue == 1) {
|
||||||
|
Laser_printer_st.pic_x_mirror = 1; // x
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 39:
|
case 38:
|
||||||
if (CodeSeen('S')) { // A39
|
if (CodeSeen('S')) {
|
||||||
float coorvalue;
|
int coorvalue;
|
||||||
coorvalue = CodeValue();
|
coorvalue = CodeValueInt();
|
||||||
Laser_printer_st.laser_height = coorvalue;
|
Laser_printer_st.pic_laser_time = coorvalue;
|
||||||
SEND_PGM("laser_height = ");
|
}
|
||||||
LCD_SERIAL.print(Laser_printer_st.laser_height);
|
break;
|
||||||
SENDLINE_PGM("");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 40:
|
case 39:
|
||||||
if (CodeSeen('S')) { // A40
|
if (CodeSeen('S')) { // A39
|
||||||
float coorvalue;
|
float coorvalue;
|
||||||
coorvalue = CodeValue();
|
coorvalue = CodeValue();
|
||||||
Laser_printer_st.pic_pixel_distance = coorvalue;
|
Laser_printer_st.laser_height = coorvalue;
|
||||||
}
|
SEND_PGM("laser_height = ");
|
||||||
break;
|
LCD_SERIAL.print(Laser_printer_st.laser_height);
|
||||||
|
SENDLINE_PGM("");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 41:
|
case 40:
|
||||||
if (CodeSeen('S')) {
|
if (CodeSeen('S')) { // A40
|
||||||
float coorvalue;
|
float coorvalue;
|
||||||
coorvalue = CodeValue();
|
coorvalue = CodeValue();
|
||||||
Laser_printer_st.x_offset = coorvalue;
|
Laser_printer_st.pic_pixel_distance = coorvalue;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 42:
|
case 41:
|
||||||
if (CodeSeen('S')) {
|
if (CodeSeen('S')) {
|
||||||
float coorvalue;
|
float coorvalue;
|
||||||
coorvalue = CodeValue();
|
coorvalue = CodeValue();
|
||||||
Laser_printer_st.y_offset = coorvalue;
|
Laser_printer_st.x_offset = coorvalue;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 43:
|
case 42:
|
||||||
if (CodeSeen('S')) { // y
|
if (CodeSeen('S')) {
|
||||||
int coorvalue;
|
float coorvalue;
|
||||||
coorvalue = CodeValueInt();
|
coorvalue = CodeValue();
|
||||||
if (coorvalue == 0) {
|
Laser_printer_st.y_offset = coorvalue;
|
||||||
Laser_printer_st.pic_y_mirror = 0;
|
}
|
||||||
} else if (coorvalue == 1) {
|
break;
|
||||||
Laser_printer_st.pic_y_mirror = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 44:
|
case 43:
|
||||||
send_laser_param();
|
if (CodeSeen('S')) { // y
|
||||||
break;
|
int coorvalue;
|
||||||
|
coorvalue = CodeValueInt();
|
||||||
|
if (coorvalue == 0) {
|
||||||
|
Laser_printer_st.pic_y_mirror = 0;
|
||||||
|
} else if (coorvalue == 1) {
|
||||||
|
Laser_printer_st.pic_y_mirror = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case 49: // A49
|
case 44:
|
||||||
laser_on_off = 0;
|
send_laser_param();
|
||||||
WRITE(HEATER_0_PIN, 0);
|
break;
|
||||||
break;
|
|
||||||
|
|
||||||
case 50: // A50
|
case 49: // A49
|
||||||
if (laser_on_off == 0) {
|
laser_on_off = 0;
|
||||||
laser_on_off = 1;
|
WRITE(HEATER_0_PIN, 0);
|
||||||
} else {
|
break;
|
||||||
laser_on_off = 0;
|
|
||||||
WRITE(HEATER_0_PIN, 0);
|
case 50: // A50
|
||||||
}
|
if (laser_on_off == 0) {
|
||||||
break;
|
laser_on_off = 1;
|
||||||
|
} else {
|
||||||
|
laser_on_off = 0;
|
||||||
|
WRITE(HEATER_0_PIN, 0);
|
||||||
|
}
|
||||||
|
break;
|
||||||
#endif // if ENABLED(KNUTWURST_MEGA_P_LASER)
|
#endif // if ENABLED(KNUTWURST_MEGA_P_LASER)
|
||||||
|
|
||||||
#if ENABLED(KNUTWURST_MEGA_P)
|
#if ENABLED(KNUTWURST_MEGA_P)
|
||||||
case 51:
|
case 51:
|
||||||
if (CodeSeen('H')) {
|
if (CodeSeen('H')) {
|
||||||
injectCommands(F(
|
injectCommands(F(
|
||||||
"G1 Z5 F500\n"
|
"G1 Z5 F500\n"
|
||||||
"G1 X30 Y30 F5000\n"
|
"G1 X30 Y30 F5000\n"
|
||||||
"G1 Z0.15 F300"
|
"G1 Z0.15 F300"
|
||||||
));
|
));
|
||||||
} else if (CodeSeen('I')) {
|
} else if (CodeSeen('I')) {
|
||||||
injectCommands(F(
|
injectCommands(F(
|
||||||
"G1 Z5 F500\n"
|
"G1 Z5 F500\n"
|
||||||
"G1 X190 Y30 F5000\n"
|
"G1 X190 Y30 F5000\n"
|
||||||
"G1 Z0.15 F300"
|
"G1 Z0.15 F300"
|
||||||
));
|
));
|
||||||
} else if (CodeSeen('J')) {
|
} else if (CodeSeen('J')) {
|
||||||
injectCommands(F(
|
injectCommands(F(
|
||||||
"G1 Z5 F500\n"
|
"G1 Z5 F500\n"
|
||||||
"G1 X190 Y190 F5000\n"
|
"G1 X190 Y190 F5000\n"
|
||||||
"G1 Z0.15 F300"
|
"G1 Z0.15 F300"
|
||||||
));
|
));
|
||||||
} else if (CodeSeen('K')) {
|
} else if (CodeSeen('K')) {
|
||||||
injectCommands(F(
|
injectCommands(F(
|
||||||
"G1 Z5 F500\n"
|
"G1 Z5 F500\n"
|
||||||
"G1 X30 Y190 F5000\n"
|
"G1 X30 Y190 F5000\n"
|
||||||
"G1 Z0.15 F300"
|
"G1 Z0.15 F300"
|
||||||
));
|
));
|
||||||
} else if (CodeSeen('L')) {
|
} else if (CodeSeen('L')) {
|
||||||
injectCommands(F("G1 X100 Y100 Z50 F5000"));
|
injectCommands(F("G1 X100 Y100 Z50 F5000"));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
} // switch
|
||||||
}
|
|
||||||
TFTbufindw = (TFTbufindw + 1) % TFTBUFSIZE;
|
|
||||||
TFTbuflen += 1;
|
|
||||||
}
|
|
||||||
serial3_count = 0; // clear buffer
|
|
||||||
} else {
|
|
||||||
if (serial3_char == ';') {
|
|
||||||
TFTcomment_mode = true;
|
|
||||||
}
|
|
||||||
if (!TFTcomment_mode) {
|
|
||||||
TFTcmdbuffer[TFTbufindw][serial3_count++] = serial3_char;
|
|
||||||
}
|
}
|
||||||
|
TFTbufindw = (TFTbufindw + 1) % TFTBUFSIZE;
|
||||||
|
TFTbuflen += 1;
|
||||||
|
} // if (!TFTcomment_mode)
|
||||||
|
serial3_count = 0; // clear buffer
|
||||||
|
} else {
|
||||||
|
if (serial3_char == ';') {
|
||||||
|
TFTcomment_mode = true;
|
||||||
|
}
|
||||||
|
if (!TFTcomment_mode) {
|
||||||
|
TFTcmdbuffer[TFTbufindw][serial3_count++] = serial3_char;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} // while
|
||||||
|
}
|
||||||
|
|
||||||
#if ENABLED(KNUTWURST_MEGA_P_LASER)
|
#if ENABLED(KNUTWURST_MEGA_P_LASER)
|
||||||
void prepare_laser_print() {
|
void prepare_laser_print() {
|
||||||
@@ -2062,6 +2091,29 @@ void AnycubicTouchscreenClass::GetCommandFromTFT() {
|
|||||||
TFTbuflen = (TFTbuflen - 1);
|
TFTbuflen = (TFTbuflen - 1);
|
||||||
TFTbufindr = (TFTbufindr + 1) % TFTBUFSIZE;
|
TFTbufindr = (TFTbufindr + 1) % TFTBUFSIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// In case of too short time after last cyclic tft command it has to be
|
||||||
|
// wait to avoid missing action after acyclic command by the tft.
|
||||||
|
if ( (delayed_tft_command > 0) && ( millis() - time_last_cyclic_tft_command >= WAIT_MS_UNTIL_ACYCLIC_SEND ) ) {
|
||||||
|
switch (delayed_tft_command) {
|
||||||
|
case 23: {
|
||||||
|
SENDLINE_DBG_PGM("J23", "TFT Serial Debug: delayed J23");
|
||||||
|
delayed_tft_command = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 18: {
|
||||||
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: delayed J18");
|
||||||
|
delayed_tft_command = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 118: {
|
||||||
|
SENDLINE_DBG_PGM("J23", "TFT Serial Debug: delayed J23");
|
||||||
|
SENDLINE_DBG_PGM("J18", "TFT Serial Debug: delayed J18");
|
||||||
|
delayed_tft_command = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AnycubicTouchscreenClass::OnPrintTimerStarted() {
|
void AnycubicTouchscreenClass::OnPrintTimerStarted() {
|
||||||
|
@@ -138,6 +138,7 @@ enum AnycubicMediaPauseState {
|
|||||||
#define SM_BLTZ_EXIT_L "<SAVE and EXIT>"
|
#define SM_BLTZ_EXIT_L "<SAVE and EXIT>"
|
||||||
#define SM_HS_DISABLE_L "<Disable HiSpeed Mode>"
|
#define SM_HS_DISABLE_L "<Disable HiSpeed Mode>"
|
||||||
#define SM_HS_ENABLE_L "<Enable HiSpeed Mode>"
|
#define SM_HS_ENABLE_L "<Enable HiSpeed Mode>"
|
||||||
|
#define WAIT_MS_UNTIL_ACYCLIC_SEND 500
|
||||||
#endif // !KNUTWURST_DGUS2_TFT
|
#endif // !KNUTWURST_DGUS2_TFT
|
||||||
|
|
||||||
#if ENABLED(KNUTWURST_DGUS2_TFT)
|
#if ENABLED(KNUTWURST_DGUS2_TFT)
|
||||||
@@ -228,6 +229,8 @@ class AnycubicTouchscreenClass {
|
|||||||
|
|
||||||
static AnycubicMediaPrintState mediaPrintingState;
|
static AnycubicMediaPrintState mediaPrintingState;
|
||||||
static AnycubicMediaPauseState mediaPauseState;
|
static AnycubicMediaPauseState mediaPauseState;
|
||||||
|
static uint32_t time_last_cyclic_tft_command;
|
||||||
|
static uint8_t delayed_tft_command;
|
||||||
|
|
||||||
#if defined(POWER_OUTAGE_TEST)
|
#if defined(POWER_OUTAGE_TEST)
|
||||||
struct OutageDataStruct {
|
struct OutageDataStruct {
|
||||||
|
Reference in New Issue
Block a user