Closed
Description
Hi,
ESP32 miss one function to get current baudrate unlike ESP8266
so I added it in HardwareSerial
uint32_t HardwareSerial::baudRate()
{
return uartGetBaudRate(_uart);
}
But I got inconsistent values when using it:
Setting 57000 give 57000 ->Ok
Setting 115200 give 115201 ->Different
Setting 230400 give 230423 ->Different
Setting 250000 give 250000 ->Ok
There is not such issue on ESP8266
here test sketch which display results at 115200
String result;
void setup() {
result="Set 57000 get ";
Serial.begin(57000);
delay(1000);
result+=String(Serial.baudRate());
result+="\nSet 115200 get ";
Serial.begin(115200);
delay(1000);
result+=String(Serial.baudRate());
result+="\nSet 230400 get ";
Serial.begin(230400);
delay(1000);
result+=String(Serial.baudRate());
result+="\nSet 250000 get ";
Serial.begin(250000);
delay(1000);
result+=String(Serial.baudRate());
Serial.begin(115200);
}
void loop() {
Serial.println(result);
delay(3000);
}
Is that normal ?
Metadata
Metadata
Assignees
Labels
No labels