diff --git a/esphome/components/nextion/nextion.cpp b/esphome/components/nextion/nextion.cpp index 56bbc840fb..74e453e028 100644 --- a/esphome/components/nextion/nextion.cpp +++ b/esphome/components/nextion/nextion.cpp @@ -397,8 +397,12 @@ bool Nextion::remove_from_q_(bool report_empty) { } void Nextion::process_serial_() { - // Read all available bytes in batches to reduce UART call overhead. int avail = this->available(); + if (avail <= 0) { + return; + } + + // Read all available bytes in batches to reduce UART call overhead. uint8_t buf[64]; while (avail > 0) { size_t to_read = std::min(static_cast(avail), sizeof(buf));