[SOLVED] zeRGBa/joystick widget stops working in Android app after reconnecting Bluetooth classic

• Hardware model + communication type: Arduino UNO with Bluetooth module HC-06
• Smartphone OS: Android 6.0.1
• App version: 2.26.4
• Blynk server
• Blynk Library version 0.5.3

Problem: In the Android app, when using Bluetooth classic, zeRGBa often (in about 50% of the cases) stops working after disconnecting (due to out-of-range) and reconnecting Bluetooth again

Create one zeRGBa widget on V0 in merge mode, send on release=0FF, write interval=100ms
Create one Button widget on V1

First run the application and test that V0 and V1 work.
Then go out the range of the device, but keep using zeRGBa widget (this is what kids really do) when leaving the connection range. Keep using zeRGBa when the connection is being made again when coming back in the range.
Now you can see (most of the time) that the connection comes back, the button widget clearly works. But zeRGBa widget doesn’t work anymore. You need to close the Blynk app and restart the app to get the widget working again.

  • The same bug is in the joystick widget
  • When using BLE instead of Bluetooth classic, it works ok
  • When using setting “send on release=ON”, it works ok

Sketch:


#define BLYNK_DEBUG
#define BLYNK_PRINT Serial
#define BLYNK_USE_DIRECT_CONNECT

#include <BlynkSimpleSerialBLE.h>
#include <SoftwareSerial.h>

SoftwareSerial BTSerial(2, 3); // RX, TX

char auth[] = "...";

// zeRGBa widget on V0 in merge mode, send on release=0FF, write interval=100ms
BLYNK_WRITE(V0)
{
  BLYNK_PRINT.println("BLYNK_WRITE V0");
}


// Widget Button on V1
BLYNK_WRITE(V1)
{
  BLYNK_PRINT.println("BLYNK_WRITE V1");
}

void setup()
{
  BLYNK_PRINT.begin(115200);
  BLYNK_PRINT.println("Setup started");

  BTSerial.begin(9600);
  Blynk.begin(BTSerial, auth);
}

void loop()
{
  Blynk.run();
}


Output after reconnecting. V1 (button widget) clearly works, but zeRGBa widget (V0) doesn’t produce any byte on Bluetooth classic

[124018] Heartbeat timeout: 124018, 108017, 122020
[124019] Connecting...
[137709] >[02|00|01|00] 
[137742] >5fca7bb5941f4c1daa31368e3d4b69b1
[137743] Ready
[137743] Free RAM: 1516
[137744] <[00|00|01|00|C8]
[140753] >[14|00|02|00|08]
[140762] >vw[00]1[00]440
BLYNK_WRITE V1
[140768] >[14|00|03|00|06]
[140775] >vw[00]1[00]0
BLYNK_WRITE V1
[141043] >[14|00|04|00|08]
[141051] >vw[00]1[00]440

(B.T.W. I discovered this issue during the development of the ESP32 Bluetooth (classic!) Blynk adapter. But I found out that the bug could be reproduced on HC-06)

Both of your bluetooth issues will be fixed in the next 2.26.5 release.

I just tried, and both Bluetooth issues are not solved in 2.26.5

Thanks, We’ll check it

Solved in 2.26.7! Thanks!