Skip to content

ESP32 Support #20

Open
Open
@Jip-Hop

Description

@Jip-Hop

I got really enthusiastic when I saw this library! But can't get it to work with my DOIT ESP32 Devkit V1. Seems like a great candidate because of it's inbuilt Bluetooth LE and Arduino IDE compatibility.

Can this library work with the ESP32? Or does it need changes?

I found this fork or Web-Bluetooth-Terminal, which supposedly adds ESP32 support. But it didn't work for me either.

I'm using this sketch from this tutorial on the ESP32 to enable Bluetooth LE. It uses the UART service UUID 6E400001-B5A3-F393-E0A9-E50E24DCCA9E and a characteristic of 6E400002-B5A3-F393-E0A9-E50E24DCCA9E for receiving data with "WRITE" and a characteristic of 6E400003-B5A3-F393-E0A9-E50E24DCCA9E used to send data with "NOTIFY". This also matches the UUID and characteristic in the Web Bluetooth Terminal fork by kpatel122. So I had a good feeling about it 😝

I can connect to the ESP32 with Adafruit Bluefruit LE Connect for OS X. It connects to the ESP32 just fine, logs the received data and I can send values to it as well, which shows up in the Arduino Serial Monitor. So far so good.

Screenshot 2019-11-21 at 10 26 39

Screenshot 2019-11-21 at 10 42 55

But then trying to connect with Web Bluetooth Terminal in the latest Google Chrome, it won't list any devices. Same with the fork. I tried using the underlying BluetoothTerminal.js API directly in this JSitor snippet, but it doesn't list any device in the permission dialog either. It just says: "No compatible devices found."

Looking in chrome://bluetooth-internals it shows me the following info for the ESP32:

ESP32: UNSUPPORTED_DEVICE
Name: ESP32
Address: 30:AE:A4:40:50:7E
GATT Connected: Not Connected
Latest RSSI:Unknown
Services: Unknown

If I enable the Experimental Web Platform features in chrome://flags (which I just did for testing, because I can't expect users of my web app to do this), I can send an receive data from the chrome://bluetooth-internals page, but the ESP32 still won't show up in Web Bluetooth Terminal, not in the fork and not in my JSitor snippet.

Screenshot 2019-11-21 at 10 28 31

Is this a dead end? Would be great to know what can be done to get this working with the ESP32.

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions