I'm currently porting an existing NRF SDK code base to NRF Connect SDK (Zephyr)..
Our existing code used ble_link_ctx_manager to maintain per connection state in a common service. How should I do the same with zephyr?
The sole use in this code base was for flags indicating which notifications were enabled. I can imagine this is important in cases where a device may maintain multiple connections and also support multiple notification characteristics related to multiple data sources. One connected device may be interested in a certain subset of data while another device is interested in a different subset.
With Zephyr it seems bt_gatt_notify sometimes checks the ccc value to determine if the notification is enabled, at least for the case where connection parameter is NULL. Is it also true for a case where a specific connection is indicated or is it necessary for the application to check the ccc state?
Is it only necessary to track the ccc state in parallel with the BT controller when that state is by the app for example ot activate a sensor when 1 or more connections requests the notifications?