Hello,
I have created different characteristics with the CCC macro (BT_GATT_CCC) that share the same "Configuration changed callback" function.
Inside the function below, i want to compare and find which uuid has enabled notification from client.
Hello,
I have created different characteristics with the CCC macro (BT_GATT_CCC) that share the same "Configuration changed callback" function.
Inside the function below, i want to compare and find which uuid has enabled notification from client.
Hi,
Sorry, not to familiar with zephyr yet, but trying to answer anyway. When the peer enables notification it writes to the attribute handle for the cccd. This means some where in the stack this must be linked to the rest of the bt_gatt_attr struct. I would guess that is happening in the application layer, so you will likely have to linke this in the application yourself. As a check, what information does this struct contain if you halt the code and check?

Strange thing is that type = 0 which is BT_UUID_TYPE_16 and not 2 = BT_UUID_TYPE_128
Hi,
Sorry for the late reply. I took a closer look at one of our example applications, i.e. the RCSC example. and it seems you should register the CCCD with different handles like this:
BT_GATT_CCC(rsc_meas_ccc_cfg_changed, BT_GATT_PERM_READ | BT_GATT_PERM_WRITE),
BT_GATT_CCC(ctrl_point_ccc_cfg_changed, BT_GATT_PERM_READ | BT_GATT_PERM_WRITE),