diff --git a/Marlin/src/lcd/extui/Creality/Creality_DWIN.cpp b/Marlin/src/lcd/extui/Creality/Creality_DWIN.cpp index 6afcbb6a77..e7bed7d90b 100644 --- a/Marlin/src/lcd/extui/Creality/Creality_DWIN.cpp +++ b/Marlin/src/lcd/extui/Creality/Creality_DWIN.cpp @@ -161,8 +161,8 @@ void onStartup() void onIdle() { - while (rtscheck.RTS_RecData() > 0 && (rtscheck.recdat.data[0]!=0 || rtscheck.recdat.addr!=0)) - rtscheck.RTS_HandleData(); + int dataRec; + do { dataRec = rtscheck.RTS_RecData(); } while (dataRec > 0); if (reEntryPrevent && reEntryCount < 120) { reEntryCount++; @@ -597,6 +597,7 @@ int RTSSHOW::RTS_RecData() SERIAL_ECHOLNPGM("d3: ", tmp[5] , " - d4 ", tmp[6]); rx_datagram_state = DGUS_IDLE; + RTS_HandleData(); return 2; break; } @@ -1905,7 +1906,7 @@ void RTSSHOW::RTS_HandleData() //PrinterStatusKey[1] = 3; //pause_resume_selected = true; } - else if (ExtUI::pauseModeStatus == PAUSE_MESSAGE_PURGE || ExtUI::pauseModeStatus == PAUSE_MESSAGE_OPTION) { + else { #if ENABLED(FILAMENT_RUNOUT_SENSOR) if(getFilamentRunoutState() && getFilamentRunoutEnabled(getActiveTool())) ExtUI::setFilamentRunoutEnabled(false, getActiveTool());