RTL8720DN Serial receive data not realtime?

When I use BW16 UART to receive data from other modules, it often takes several seconds to receive it. Use the logic analyzer to capture UART signals from other modules and make sure they have been sent… It seems that the UART is placed inside the Queue but I don’t know why not got Serial. available() is not fetched.

I guess is ring buffer, I trace source code now

the condition as below
Serial1 → Debug log output (LOG_UART)
baudrate: 115200
Serial → UART communications interface (LP_UART)
baudrate: 9600

void loop()
{

parseData();

websocket.loop();
}

void parseData() {
while ( Serial.available() > 0) {
char ch = Serial.read();

}
}

I find the reason it seems when send Websock SSL TCP packet Task is busy. uart data not post event to OS. and call Serial1.println is to long 77bytes . cause this issue

I porting Links2004 ArduinoWebsocket to RTL8720DN

now is work well

1 Like

Congratulations! :slight_smile: :+1:

1 Like