diff --git a/esphome/components/ld2420/ld2420.cpp b/esphome/components/ld2420/ld2420.cpp index 01f05b21e5..2fdc73ebb2 100644 --- a/esphome/components/ld2420/ld2420.cpp +++ b/esphome/components/ld2420/ld2420.cpp @@ -541,8 +541,10 @@ void LD2420Component::handle_simple_mode_(const uint8_t *inbuf, int len) { } void LD2420Component::read_batch_(std::span buffer) { + // All current UART available() implementations return >= 0, + // use <= 0 to future-proof against any that may return negative on error. int avail = this->available(); - if (avail == 0) { + if (avail <= 0) { return; }