[BETA] ESP32 BLE initial support

The ESP32 board is a really promising, amazing piece of hardware! :wink:

I’ve just added some initial ESP32 BLE support: https://github.com/blynkkk/blynk-library/blob/master/examples/Boards_Bluetooth/ESP32_BLE/ESP32_BLE.ino
You can try it out and leave your feedback here.
Currently, it’s a bit tricky to get connected, but once it connects, seems to be working really reliably.

Important notes

  1. You need latest ESP32 Core with BLE library included. Here’s a hint on how to get it.
  2. Blynk App can’t connect => just retry. Also try disabling/enabling Bluetooth on your smartphone.
  3. If it says “Connecting…” for a while, just wait - it can take some 10-15 seconds to connect for some reason.
  4. I tested it with Android only. iOS may work better, or fail completely! :slight_smile:
  5. If you have installed BLEPeripheral library, it can conflict with ESP32 BLE.
5 Likes

After trying the updated library with the ESP32, I was not able to get the ESP32 to connect to my iPhone 6. I am willing to test any code for you if needed. If the ESP32 does work with BLE, I will be able to incorporate Blynk into a locking mechanism for a team at my college.

1 Like

Hello,
i try ble example… and have errors:

Waiting for connections…
[19]
___ __ __
/ _ )/ /_ _____ / /__
/ _ / / // / _ / '/
/
//_, /////_
/
__/ v0.5.0 on Arduino

[31126] BLE connect
E (44693) BT: lmp_version_below LMP version 6 < 8
E (44695) BT: l2cble_start_conn_update, the last connection update command still pending.
[33089] BLE disconnect
[33089] Disconnected
[39908] BLE connect

Any suggestion for this?

Same here:

(Phone: LG G4, Android 6.0, Blynk 2.17.2)

[32173] BLE connect
E (46738) BT: lmp_version_below LMP version 6 < 8
E (47367) BT: FOR LE SC LTK IS USED INSTEAD OF STK
[36493] BLE disconnect
[36493] Disconnected
[120892] BLE connect
E (135513) BT: lmp_version_below LMP version 6 < 8
E (135515) BT: l2cble_start_conn_update, the last connection update command still pending.
E (135872) BT: FOR LE SC LTK IS USED INSTEAD OF STK
[122845] BLE disconnect
[122845] Disconnected

Unfortunately it totally fails on IOS - the device is not showing up in Blynk. (The newest ESP32 Arduino lib is being used from)

To confirm that BLE is working n ESP32 I checked it with the BLExplr APP:

The ESP32 is showing up via BLE in BLExpr as “Blynk” and I was able to connect.

It is offering one “BLE Shield
Service” with two characteristics “TX” and “RX”.

→ 2nd image is missing here because new users cannot post 2 images ;-(
it could be found in the reply to this thread

I was not able to connect via the Blynk App on an iPhone X.
The ESP32 device never showed up in the BlynkApp via “Select BLE device”.

Could you please check it out in the APP
I am also happy to help you Beta testing it.

Thanks,
Janosch

BTW:
I would also kindly ask for supporting Analog Inputs on the ESP32 and ESP8266

1 Like

or here:

Just tested it on Android app with next setups:

  • Espressif framework from ‘stage’ git branch
  • Blynk library 5.0.0
  • Esp32 BLE Android 0.4.7 (not latest, as 0.4.8 has some bugs, maybe 0.4.9 would be ok)

I had no problems with connection to the board as described in the first post. Had anybody tried to test it on Android?

1 Like

I was also trying to get an idea, why it is not working from IOS Blynk App.

The Blynk App on either my iPhone and on my iPad is not showing up any Blynk device.
Nothing feedback from the Arduino terminal window.

If I connect to the ESP32 with the BLExplr I get the following feedback:

So my BLE on the ESP32 is working, but it seems, that the IOSBlynk APP needs to be updated.

Dear Blynk Team please please please update the Blynk App for IOS asap.

Thanks,

Janosch

BlynkConnectViaBLExplr

I can confirm that the following works fine:

Blynk App Android 2.18.1
Blynk Lib Arduino 0.5.1
ESP32_BLE_Android 0.4.7

Happy Blynking!

2 Likes

Have you tried ESP32_BLE_Android 0.4.9? I’ve thought it should fix bugs in 0.4.8 version.

Yes, just this moment. The latest Espressif ESP32-Arduino version and the latest ESP32_BLE_Android 0.4.9 version from the git repos do work as well with my setup.

Well, for the first time in ever… I can say I have a spare ESP32 :star_struck: and thus was able to give this a try.

I simply loaded in the base sketch from the GitHub link above and added in some existing code for a physical RGB LED

It showed up as Blynk and didn’t want to connect on my older Samsung Note8 tablet… so far… but connected right away on my LG G6 :ok_hand:

Latest ESP32 core (do they even have version numbers? If so, where?)
Blynk 0.5.2
ESP32 DEVKIT (no name clone?) (Chip rev1)
Android 7.0
App 2.20.1
Local Server (if that matters)

The ESP32/Blynk BLE link is WORLDS stabler than my old LightBlueBean… I think I might bury it (the LBB, not the ESP :stuck_out_tongue_winking_eye: ) and see what kind of a beanstalk grows from it :seedling:

1 Like

Hi friends. I compiling example for ESP32 BLE but I cannot connecting to BLE. in the serial monitor getting error with big packets.

the error:

[10496] BLE connect
E (17775) BT: bta_gattc_conn_cback() - cif=3 connected=0 conn_id=3 reason=0x0013
[17760] BLE disconnect
[17760] Disconnected
[47448] BLE connect
[58271] Packet too big: 14435
[58271] Packet too big: 12641
[58271] Packet too big: 12897

the example code for ESP32 BLE:

#define BLYNK_PRINT Serial

#define BLYNK_USE_DIRECT_CONNECT

#include <BlynkSimpleEsp32_BLE.h>
#include <BLEDevice.h>
#include <BLEServer.h>

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "c0e04624c9a747a9838c5811aed72aca";

void setup()
{
  // Debug console
  Serial.begin(9600);

  Serial.println("Waiting for connections...");

  Blynk.begin(auth);
}

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

Welcome to BETAville

It may simply be an incompatibility with your phone? Whatever it is.

Are you running the absolute latest ESP32 core?

1 Like

thanks for reply. yes I installed latest ESP32 core from git

Well, as I ran into months ago, probably just a phone compatibility… One refused to work properly while the other worked great.

It appears that it will simply work or not. Nothing else can be done that I am aware of as it is BETA and apparently untouched for awhile.

1 Like

Ok. I testing with my sister’s tablet ( asus zenpad8 with android 6 ) and its working like a charm. so the problem with my smartphone.

1 Like

Can you add

#define BLYNK_DEBUG

and show the debug info?

Hi,

I’m using:
Blynk App Android 2.26.7
Blynk Lib Arduino 0.5.3
ESP core feature/stage
What is ESP32_BLE_Android ?

I have no problems connecting to the ESP32 with BLE, but on the Blynk Android app it stays disconnected.

Booting...
Starting BLE...
[30]
    ___  __          __
   / _ )/ /_ _____  / /__
  / _  / / // / _ \/  '_/
 /____/_/\_, /_//_/_/\_\
        /___/ v0.5.3 on ESP32

  Give Blynk a Github star! => https://github.com/blynkkk/blynk-library

Done
Battery level updated - voltage (935) battery level (3.74)
[41950] BLE connect

Any hints?

Thank you

Just for reference,

Everything is working now, I missed the step were I need to add a BLE widget to my project.

If I use thw BLE widget on my Android app to pair with the ESP32 everything works as expected without connection issues.

Source: Problems with Bluetooth

1 Like