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

How does the S130 do scheduling for the radio?

Hello,

when using the S130 with multiple connections and sporadic advertisement and scan procedures, I get a connection timeout after a few minutes, now I must know, how these events are scheduled internally. I think that connection events should be preferred in most cases, though it might be possible to skip one or two, when slave latency is enabled. As far as I know, the device must reschedule at times to meet the new requirements that are sent by the master (a connection event offset for example). When this is done, this might collide with the advertisement schedule. Will the advertisement schedule be shifted in this case? I hope I could get some insight on this because I am a little in the dark because there is no API to find out any of this, the problem is that I do not have any measuring equipment as well, which makes it hard to find out why connections were lost. I have a connection interval of 30 milliseconds at the moment and a connection supervision time of 4000 milliseconds, so i would not expect that a connection gets lost.

Thanks, Marius

Parents Reply Children
  • Hello, I did this, but it did not help me further. I am also wondering why it says "Channel Map configuration Setup of channel map for all connections from the application". I do not think, this feature does yet exist in S130 0.9. I am not having the troubles with lost advertisements but rather with lost connections. I've just changed the interval to 100ms and I will report back with the behaviour. I do have between 1 and 4 concurrent links depending on the device. I do not know however, why a disconnect could happen with a 30ms interval. Does the Softdevice not do balancing between the links so that every link gets its turn once in a while if they collide? I hope that there will be a production release Softdevice with a specified behaviour soon.

  • UPDATE: I have checked now with a connection interval of 100ms and the problem persists, only after a longer time. I think I got it after about an hour. One device had about 2-3 connections and missed all its connection intervals I guess. The peripheral did then run into a timeout and closed the connection.

  • May I ask you to have a look at the nRF Sniffer and the user guide for it. This could be used as a tool to see which package that are lost and from which end they are lost. I would try to increment the connection interval as well as it seems like you run into this issue faster with a shorter connection interval. It would be interesting to see the sniffer trace of what happens in your setup when this occurs.

    Please also see the limitations stated in the S130 release note:

    • The scanner can skip scan intervals if the scan window and the scan interval are of the same or similar size (DRGN-5013).
    • After sending a connection parameter update, the radio events for the updated link may block scheduled events for other links or flash operations (DRGN-5151).
Related