I'm just playing with BLE on ESP32, and it's looking really good (although loads of warnings! :) ).
@JumJum you mentioned issues with BLE UART? It looks like you can turn it on with NRF.setServices({},{uart:true})?
One thing I noticed is that while it has the service 6e400001-b5a3-f393-e0a9-e50e24dcca9e once connected, that's not actually advertised - that could well be affecting whether the device is found or not (usually I advertise it in the 'scan response' packet).
The other thing, which I think explains your dropout when trying to connect on windows (and which I get issues with as well) is notifications on the TX characteristic (6e400003...).
If you connect with NRF connect, then go to that characteristic and click the 3 downarrow icon to the right of it, that should enable notifications. It does on something like a Puck.js (the button is toggleable) - you should be able to change the 'characteristic configuration' descriptor between 'Notifications and indications disabled' and 'Notifications enabled'.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Hi,
I'm just playing with BLE on ESP32, and it's looking really good (although loads of warnings! :) ).
@JumJum you mentioned issues with BLE UART? It looks like you can turn it on with
NRF.setServices({},{uart:true})
?One thing I noticed is that while it has the service
6e400001-b5a3-f393-e0a9-e50e24dcca9e
once connected, that's not actually advertised - that could well be affecting whether the device is found or not (usually I advertise it in the 'scan response' packet).The other thing, which I think explains your dropout when trying to connect on windows (and which I get issues with as well) is notifications on the TX characteristic (
6e400003...
).If you connect with NRF connect, then go to that characteristic and click the 3 downarrow icon to the right of it, that should enable notifications. It does on something like a Puck.js (the button is toggleable) - you should be able to change the 'characteristic configuration' descriptor between 'Notifications and indications disabled' and 'Notifications enabled'.
I think it must be something like the write to the characteristic descriptor needing a special response? It looks like you need something like this: https://github.com/espressif/esp-idf/blob/master/examples/bluetooth/gatt_server/main/gatts_demo.c#L356-L404