diff --git a/src/uart/emsuart_esp32.cpp b/src/uart/emsuart_esp32.cpp index 2b7bf1fd3..f09e4542d 100644 --- a/src/uart/emsuart_esp32.cpp +++ b/src/uart/emsuart_esp32.cpp @@ -52,7 +52,8 @@ void EMSuart::uart_event_task(void * pvParameters) { uart_read_bytes(EMSUART_NUM, telegram, length, portMAX_DELAY); EMSESP::incoming_telegram(telegram, (uint8_t)(length - 1)); } else { // flush buffer up to break - uart_flush_input(EMSUART_NUM); + uint8_t buf[UART_FIFO_LEN]; + uart_read_bytes(EMSUART_NUM, buf, length, portMAX_DELAY); } length = 0; } else if (event.type == UART_BUFFER_FULL) {