Bluetooth Serial Congestion
Posted: Mon Dec 30, 2019 5:18 pm
Good day,
I am working on a project in which I send a char array to an android studio app using bluetooth from the ESP32.
It works mostly but it does have some strange behaviour where it lags and then sometimes stops completely requiring restart of the esp and the app.
I have anabled debug output and notice these messages:
Firstly this message appears at every send event....
[V][BluetoothSerial.cpp:271] esp_spp_cb(): ESP_SPP_WRITE_EVT: 29 FREE
This message pops up now and then:
[V][BluetoothSerial.cpp:263] esp_spp_cb(): ESP_SPP_CONG_EVT: CONGESTED
If the above message occurs and is followed bu this message:
[V][BluetoothSerial.cpp:271] esp_spp_cb(): ESP_SPP_WRITE_EVT: 29 CONGESTED
The esp program skips the bluetooth transmission several times and then eventually freezes with this message:
[BluetoothSerial.cpp:247] esp_spp_cb(): ESP_SPP_CLOSE_EVT
The code I am using is as follows
void sendAndroidValues()
{
if (SerialBT.hasClient())
{
sprintf(buff,"#%.0f/%.0f/%+.1f/%.1f/%.0f/%.1f/%.1f/~\n",voltageValue[0],voltageValue[1],voltageValue[2],voltageValue[3],voltageValue[4],voltageValue[5],voltageValue[6]);
Serial.print(buff);
SerialBT.print(buff);
delay(20);
}
}
The data is displayed correctly on the app and values respond smoothly until the congestion message etc appears.
What do these messages mean and any advice to get around this problem will be appreciated.
Regards
Lodewyk
I am working on a project in which I send a char array to an android studio app using bluetooth from the ESP32.
It works mostly but it does have some strange behaviour where it lags and then sometimes stops completely requiring restart of the esp and the app.
I have anabled debug output and notice these messages:
Firstly this message appears at every send event....
[V][BluetoothSerial.cpp:271] esp_spp_cb(): ESP_SPP_WRITE_EVT: 29 FREE
This message pops up now and then:
[V][BluetoothSerial.cpp:263] esp_spp_cb(): ESP_SPP_CONG_EVT: CONGESTED
If the above message occurs and is followed bu this message:
[V][BluetoothSerial.cpp:271] esp_spp_cb(): ESP_SPP_WRITE_EVT: 29 CONGESTED
The esp program skips the bluetooth transmission several times and then eventually freezes with this message:
[BluetoothSerial.cpp:247] esp_spp_cb(): ESP_SPP_CLOSE_EVT
The code I am using is as follows
void sendAndroidValues()
{
if (SerialBT.hasClient())
{
sprintf(buff,"#%.0f/%.0f/%+.1f/%.1f/%.0f/%.1f/%.1f/~\n",voltageValue[0],voltageValue[1],voltageValue[2],voltageValue[3],voltageValue[4],voltageValue[5],voltageValue[6]);
Serial.print(buff);
SerialBT.print(buff);
delay(20);
}
}
The data is displayed correctly on the app and values respond smoothly until the congestion message etc appears.
What do these messages mean and any advice to get around this problem will be appreciated.
Regards
Lodewyk