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

Using timeslot API and fds

Hi all,

I am working on a project that requires simultaneous usage of BLE and ESB. I implemented that with the timeslot API and it basically works. However, I need to store some data to flash using fds when a certain packet is received using ESB. I am experiencing a lot of problems to get this to work properly, most notably fds functions returning errors (1, FDS_ERR_OPERATION_TIMEOUT). it seems to make sense to me that the softdevice APIs can't be used during a timeslot. I suppose I must postpone the write action until the softdevice is active again, that is: the timeslot has ended. But what event can I use to be sure the softdevice is ready to be used again, so that I can handle my fds stuff there?

Regards,

Bert

Parents Reply
  • Thanks for your reply!

    At startup I invoke sd_radio_session_open(). Each time the timeslot has elapsed the timer0 handler returns NRF_RADIO_SIGNAL_CALLBACK_ACTION_REQUEST_AND_END to schedule the next timeslot. At what moment am I supposed to receive RADIO_SESSION_CLOSED event? Shouldn't I invoke sd_radio_session_close() to accomplish this? But I assume that to be able to execute sd_radio_session_close() the timeslot must have ended, right?  So I'm confused...

Children
Related