This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

ble_radio_notification_evt_handler_t timeslot API and softdevice

I am using the timeslot API and softdevice to advertise two separate types of message. This works well. But I have also used ble_radio_notification_evt_handler_t in an attempt to change the payload of the softdevice advertisement.

Unfortunately through experimentation I have found that ble_radio_notification_evt_handler_t is called on any radio activity. There doesn't appear to be a context.

Any ideas how to run code before or after (just) the softdevice advertises?

I'm using S130 V11 nrf51

Many thanks in advance

John

Parents
  • Hi Kristin, Roger,

    I believe that timer actually might solve it if you set it to the middle of the adv. interval then jitter should oscillate a bit but in average you could run both adv. interval and timer in sync. Of course this isn't usable if you need 100% precision over long period of time (hours/days).

    Cheers Jan

  • On a first look it seems to me kind of overkill to fire timer for one-time period on each such event, I'd rather set infinite timer and sync it once with adv. interval (and then resync as needed - hourly or longer?). Again it works until you don't require 100% timer accuracy over long periods. In that case you would need to go with custom (or open source) stack and make this inherit feature of low layers...

Reply
  • On a first look it seems to me kind of overkill to fire timer for one-time period on each such event, I'd rather set infinite timer and sync it once with adv. interval (and then resync as needed - hourly or longer?). Again it works until you don't require 100% timer accuracy over long periods. In that case you would need to go with custom (or open source) stack and make this inherit feature of low layers...

Children
No Data
Related