Hi, we have the exact same problem using evothings cordova-plugin-ble for android. The service exposed with Notify property does not contain the 2902 descriptor:

"descriptors": [
"uuid": "2901"
"characteristic": "dfb1",
"service": "dfb0",
"properties": [

According to Bluetooth specs, it should return 2902 descriptor in order to configure the notifications for this specific service:

https://www.bluetooth.com/specification ... ifications (core version 4.2, page 2229, table 3.10)

Hi Nadeau Christian,

Thanks for your code, is it from bluno basic demo, that open source file? I am not sure in this problem, and will pass it to our team to see what they would say, I will update here.

Good day.
Hi Angelo,

We are using an apache cordova plugin (cross mobile platform framework). The problem is that any generic BLE plugins following the spec properly will try to write to this descriptor in order to enable notifications. And since it's not there, it's totally right to stop the enable notifications process at this point, and prevent the call to (e.g.: android) gatt.setCharacteristicNotification.

if you use native code directly, you are right, you can bypass this check, but it's more a hack than the actual spec.

Is there any reason technical reason why this descriptor was "deprecated" ?

Thanks for your reply,
Hi Don,
Bluno is a customised BLE device.
We may dismiss some functions so as to make BLE device easy to use.
For the time being, we may only recommend to use other plugin. Or ask the plugin owner make a patch on it.