Hi all,
I'm trying to writing a device information service client on top of ble_app_multilink_central example on nRF52830 using SDK14.1.0 and softdevice 5.0 and have a big trouble getting it works.
I have defined only one instance do m_db_disc as on this link.
But it is very strange that the end_handle reported on BLE_GATTC_EVT_PRIM_SRVC_DISC_RSP is invalid (65536). The UUID looks fine (0x180A) and start_handle returned is 17. Also, it can scan the UUIDs of all the characteristics. But it doesn't feel right to have an end_handle 65536.
Another issue is that the discovery stops on discovering the descriptors for the second service. If I call lbs_init_c() first, I could get the discovery success message on debug log for LBS. If I call the dis_init_c() first, then I could have a successful discovery for DIS but LBS stuck at descriptor discovery. The code is broken somewhere in descriptors_discover() in ble_db_discovery.c but I cannot pinpoint the exact location yet.
Any help and comment is very much appreciated and thanks in advance!
Arthur
ble_dis_c.c ble_dis_c.h Makefile sdk_config.h ble_db_discovery.c main.c ble_app_blinky_dis.zip