I'm implementing a BLE Central based on S132 with functionality for getting a descriptor list from a connected device.
To avoid having to maintain a complete discovery database of services, characteristics and descriptors I first call sd_ble_gattc_descriptors_discover() with a range of 0x0001-0xFFFF. This gives me a BLE_GATTC_EVT_DESC_DISC_RSP containing a number of descriptors. Within the event processing I call sd_ble_gattc_descriptors_discover() again with a range of "max. descriptor handle plus one"-0xFFFF. I then get no BLE_GATTC_EVT_DESC_DISC_RSP or timeout events.
I use the same approach for Service and Characteristics discovery (continuing until no more services/characteristics are returned) and it works fine. Any idea why it's not working?