BLE Supervision Timeout
Understanding Supervision Timeout
The timeout must be large enough to accommodate the connection interval and slave latency: the peripheral may legitimately not respond for (1+SL)×CI. The Bluetooth spec requires timeout > (1+SL)×CI×2. Apple recommends a 3× multiplier for robustness.
Too short a timeout causes false disconnects in noisy environments (RF interference, crowded 2.4 GHz). Too long delays detecting that a device has moved out of range or powered off, leaving the central scanning a dead connection.
Tsup > (1 + SL) × CI × 2
Apple recommendation:
Tsup ≥ (1 + SL) × CI × 3
Example: CI=100 ms, SL=4:
Min: (1+4) × 100 × 2 = 1000 ms
Recommended: 1500 ms (1.5 s)
Timeout Recommendations
| Application | CI | SL | Timeout |
|---|---|---|---|
| Gaming HID | 7.5 ms | 0 | 500 ms |
| Wearable | 30 ms | 9 | 2 s |
| Sensor | 500 ms | 4 | 10 s |
| Asset tracker | 4 s | 0 | 20 s |
Frequently Asked Questions
How to set it?
Must be > (1+SL)×CI×2. Apple requires ≥3× for stability. Typical: 2-6 s for wearables, 10-20 s for slow sensors.
What happens on expiry?
Both devices declare connection lost. No disconnect packet sent. App gets "connection timeout" event. Reconnection takes 1-5 s.
Unexpected drops?
Timeout too short, RF interference causing consecutive losses, out of range, deep sleep miss, or mobile OS background throttling.