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

Scan windows dropping while connected.

I've been attempting to optimize my scan and connection intervals in order to maintain the highest percentage of time scanning while maintaining connections, following the advice set out in section 15.10 of the S140 spec, and have been running issues.  Currently I'm running with a scan interval of 500ms (800 units of 0.625ms) with a scan window of 200ms, and a connection interval of 500ms (400 units of 1.25ms), and am maintaining a connection with one device while not preforming any particular communication with it other than allowing the connection to be maintained.

Prior to the connection being established, the scan provides me with advertising packets 40% of the time, 200ms on, 300ms off.

After the connection is established, until it is released, the scan only provides me with advertising packets 20% of the time, 200ms on, 800ms off.

It appears that every other scan window is being skipped.  From the suggested interval documentation, it seems implied that optimizing the intervals the way that i have should allow the connection communications to be scheduled in a way that will not interfere with the scanning.  Is there something that I'm missing here?  Any additional settings required, or limitations that I'm unaware of?

Thanks,

Drew

Parents
  • Hi Drew,

    Connection and scanning role has the same scheduling priority at level 3 according to Table 30 Scheduling Priorities in S140 Specification v1.1 

    When the scanner slot is blocked by the advertising slot, it will only reschedule on the next event which is 500ms after. This result in that the chip only does scanning 200ms in 1 seconds. 

    What you can do to improve the scanning rate is to reduce the scan interval to says 100ms and do scanning window of 50ms for example. Scanning period will only be blocked for 100ms when the advertising events happen instead of blocking for 500ms. 

Reply
  • Hi Drew,

    Connection and scanning role has the same scheduling priority at level 3 according to Table 30 Scheduling Priorities in S140 Specification v1.1 

    When the scanner slot is blocked by the advertising slot, it will only reschedule on the next event which is 500ms after. This result in that the chip only does scanning 200ms in 1 seconds. 

    What you can do to improve the scanning rate is to reduce the scan interval to says 100ms and do scanning window of 50ms for example. Scanning period will only be blocked for 100ms when the advertising events happen instead of blocking for 500ms. 

Children
No Data
Related