Unable to subscribe to notifications from Arduino GATT server

Former Member
Former Member

I have an app running on a Fenix 6x that subscribes to BLE notify characteristics (using code like `characteristic.getDescriptor(Ble.cccdUuid()).requestWrite([0x1,0x0]b);`). Whenever I try this while connected to the Arduino hardware, one of two things happens:

1. `getDescriptor(Ble.cccdUuid())` returns null, even though it’s registered in the profile and the Arduino characteristic definitely has it.

2. `onDescriptorWrite` is called with status `STATUS_WRITE_FAIL`

and obviously notifications are never received.

Notifications work perfectly between the connect IQ app and an nRF Connect GATT server, and also between the Arduino and an nRF Connect client. It’s just the combination of connect IQ app and Arduino that doesn’t seem to work.

I’m using SDK 3.2.2. All BLE operations are in a queue. I’d really appreciate any help here, we’d much prefer to use notifications as the BLE reads are so slow.

  • Former Member
    Former Member over 4 years ago in reply to jim_m_58

    All values are 4 bytes or less. The notify data is not particularly relevant to this issue though because it never gets that far (unless you mean the descriptor write, which is 2 bytes for the CCCD?)