diff --git a/lib/VeDirectFrameHandler/VeDirectFrameHandler.cpp b/lib/VeDirectFrameHandler/VeDirectFrameHandler.cpp index 982bb647..df1aae1c 100644 --- a/lib/VeDirectFrameHandler/VeDirectFrameHandler.cpp +++ b/lib/VeDirectFrameHandler/VeDirectFrameHandler.cpp @@ -73,11 +73,7 @@ void VeDirectFrameHandler::loop() unsigned long now = millis(); if ((millis() - getLastUpdate()) > (_pollInterval * 1000)) { - while ( Serial2.available()) { - if ((millis() - now) > 500) { - now = millis(); - yield(); - } + while ( Serial2.available() && (getLastUpdate() < now)) { rxData(Serial2.read()); } }