BLE Throughput
Understanding BLE Throughput
Without DLE, each BLE packet carries only 20 bytes of ATT payload (27-byte PDU minus 7 bytes of L2CAP/ATT headers). With DLE enabled, the PDU extends to 251 bytes, carrying 244 bytes of ATT data per packet. This reduces overhead from 35% to under 3%, multiplying effective throughput 3-5×.
Multiple packets can be sent per connection event if both sides support it. With 7.5 ms CI, DLE, and 2M PHY, approximately 6 packets fit in one event, yielding ~1.4 Mbps. Real-world throughput also depends on the mobile OS: iOS and Android impose different limits on packets per event.
No DLE, 1M PHY, CI=7.5 ms:
20 B × 6 pkts / 7.5 ms = 128 kbps
DLE, 2M PHY, CI=7.5 ms:
244 B × 6 pkts / 7.5 ms ≈ 1.4 Mbps
Throughput by Configuration
| PHY | DLE | CI | Pkts/Event | Throughput |
|---|---|---|---|---|
| 1M | No (20 B) | 7.5 ms | 6 | ~128 kbps |
| 1M | Yes (244 B) | 7.5 ms | 4 | ~800 kbps |
| 2M | Yes (244 B) | 7.5 ms | 6 | ~1.4 Mbps |
| 1M | Yes (244 B) | 30 ms | 4 | ~200 kbps |
Frequently Asked Questions
What limits throughput?
PHY rate, CI, DLE (27 vs 251 B PDU), MTU, and packets/event. Without DLE: max ~236 kbps. With DLE+2M: ~1.4 Mbps.
What is DLE?
Data Length Extension (BLE 4.2+): PDU from 27 to 251 bytes. ATT payload from 20 to 244 bytes. 3-5× throughput improvement.
Real vs PHY rate?
1 Mbps PHY includes all overhead. Max app throughput ~800 kbps on 1M. Overhead: preamble, headers, CRC, IFS, scheduling gaps.