Is there a way to using the Zephyr bluetooth LE controller to synchronize advertisement data updates with advertisement packets?

I and looking at using an nRF52 device with the nRF Connect SDK version 2.x with a Zephyr Bluetooth LE Controller in a peripheral application where the advertisement data changes with each advertisement packet. I cannot find ble_radio_notification_init() anywhere in the SDK nor can I find ble_radio_notification.h (or .c). From that I infer that it is not supported under this SDK. I can start advertisement with bt_le_adv_start() and can successfully update the advertisement data with bt_le_adv_update_data(), but I can't see any way (signal, semaphore or callback) to know when the packet is sent so I can update the data for the next packet. Could you point me in the right direction?

Failing that, can you tell me if there are any repercussions to setting a large time interval when calling bt_le_adv_start(), sleeping for the desired advertisement interval, calling bt_le_adv_stop(), then calling bt_le_adv_start() immediately with new data? (e.g. if the device is scanned during the stop/start, might the scan go unanswered?)

Note: I am currently developing BT code on the nRF52832 but the device will ultimately use an nRF52840.

Thanks.

Related