Hi everyone
I'd like to stream sensor data (20'kHz sampling rate, 16 bit words) from one CC2650+SmartRF06 evaluation board to another. I try to construct my code based on the simpleBLEPeripheral & SimpleBLECentral examples. After reading the CC2650 Developer's guide, I was able to modify the peripheral code and the GATT profile such that I can connect the peripheral device to my phone and exchange some data. Now I'd like to connect two peripheral CC2650 (GATT server) to the other CC2650 (GATT client). Aquestion about that:
I'd like to use notifications. To enable them, I know that the GATT client first needs to write 0x0001 to the configuration attribute of the characteristic that he wants to get notifications. Now in the simpleBLECentral example not UUIDs are used to write to a attribute but handles are used. How exactly is the client able to find out what handle belongs to a known UUID? Why do we use range uf handles (svcStartHdl, svcEndHdl) in the example? Handle variable declaration from the example:
// Discovered service start and end handle
static uint16_t svcStartHdl = 0;
static uint16_t svcEndHdl = 0;
// Discovered characteristic handle
static uint16_t charHdl = 0;