Primary channel scanner timing

S140 SoftDevice Specification

The following figure shows that when scanning for advertisers with no active connections, the scan interval and window can be any value within the Bluetooth Core Specification.

Figure 1. Scanner timing - no active connections
Page-1 Sheet.1 Sheet.2 Scanner Scanner Duration (horizontal) .60 scanWindow scanWindow Sheet.3 time time Duration (horizontal) .12 scanInterval scanInterval Sheet.13 Scanner Scanner

The examples in this section demonstrate a Scanner that is configured to listen on one PHY, resulting in one Scanner timing-event. Correspondingly, listening on two PHYs would result in two Scanner timing-events.

Figure 2. Scanner timing when scanning on two PHYs
Page-1 Sheet.1 Sheet.2 Scanner_1M Scanner_1M Duration (horizontal) .60 scanWindow scanWindow Sheet.3 time time Duration (horizontal) .12 scanInterval scanInterval Sheet.18 Scanner_Coded Scanner_Coded Duration (horizontal) .19 scanWindow scanWindow Sheet.22 Scanner_1M Scanner_1M Sheet.23 Scanner_Coded Scanner_Coded

A primary channel scanner timing-event is always placed after the central link timing-events. Scanner timing - one or more connections as a Central shows that when there are one or more active connections, the scanner or observer role timing-event will be placed after the link timing-events. With scanInterval equal to the connectionInterval and a scanWindow ≤ (connectionInterval - (∑ tevent + tScanReserved)), scanning will proceed without overlapping with central link timing-events.

Figure 3. Scanner timing - one or more connections as a Central
Scanner timing - one or more connections as a Central

The following figure shows a scenario where free time is available between link timing-events, but still the scanner timing-event is placed after all connections.

Figure 4. Scanner timing - always after connections
Page-1 Sheet.4 Sheet.5 Scanner Scanner Sheet.7 C0 C0 Sheet.10 time time Sheet.12 Duration (horizontal) .15 scanWindow scanWindow Sheet.16 C0 C0 Duration (horizontal) .19 connectionInterval connectionInterval Duration (horizontal) .9 tScanReserved tScanReserved Sheet.20 C1 C1 Sheet.21 C3 C3 Sheet.26 C2 C2

The following figure shows a Scanner with a long scanWindow which will cause some connection timing-events to be dropped.

Figure 5. Scanner timing - one connection, long window
Page-1 Sheet.6 Sheet.13 Scanner Scanner Sheet.14 C0 C0 Sheet.17 time time Duration (horizontal) .20 scanWindow scanWindow Sheet.21 C0 C0 Duration (horizontal) .22 connectionInterval connectionInterval Duration (horizontal) .23 tevent-C0 tevent-C0