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

what is Softdevice BLE central/peripheral Link?

Hi,

In SD_S132v7 chapter "Radio Notification", `Link-0 / Link-1 / ...`  are mentioned several times, what's the meaning of that?

I mean, does it refer to a physical link associated with a specific peer, or just a logical concept so we can map several links to 1 physical peer?

currently, I have a multi-central device and several(<=8) 1-peripheral devices, CI(connection interval = 18), CEL(connection event length = 5), what I want to know is how SD schedules every connection?

regards,

chxt

  • Hi, Terje

    1. option-1 have a larger packet send delay which we are trying to avoid. in option-2 as minimum SI(scan interval) is 20ms, that may cause some links to be scheduled too far(~ 2 * CI), but we want a stable maximum packet send delay time.

    2. We do have a fixed pattern, all peripherals send data nearly at the same time with fixed period(~100ms), not every other CI, but every n-th CI where n is constant but not predetermined. we try to schedule scanning at those 'empyt' CIs but can't find a way.

    regards,

    chxt

  • Hi,

    I think I understand now.

    The SoftDevice scheduler schedules radio events based on "type of event", "about to time out" and "blocked consecutively". There is no prioritizing based on "has anything to send", and certainly not on "peer has anything to send" (how would we know?)

    Would it be a solution to use longer connection interval, then sync up the measurements (taken on the peripheral side) with when the connection events happen? I have a hard time coming up with other ways to consistently give low latency from measurement on peripheral to data received on central, combined with scanning on the central...

    Alternatively, you can try enabling scanning when you get data on the central side, and let it run until it is "about time to get data again". If you are lucky you may be able to squeeze in a scan event or two. (Scan will typically be blocked a few times before getting through, though.)

    Regards,
    Terje

  • Hi,

    I was thinking to use the strategy of enbaling/disabling scanning when appropriate, but since skipped CI number and active links are not pre-programmed, it seems not a easy task to implement robustly, we consider to set this aside now and return to it later.

    thanks for your help!

    regards,

    chxt

  • Hi,

    You are right this is not an easy task to implement robustly, especially if the timing from the peer is not set in advance. Feel free to return to this thread when you come back to working on it, for continuing the discussion.

    Regards,
    Terje

Related