This chapter gives an indication of achievable BLE connection throughput for GATT procedures used to send and receive data in stated SoftDevice configurations.
Maximum throughput will only be possible when the application reads data packets as they are received, and provides new data as packets are transmitted, without delay. The SoftDevice may transfer more packets than reserved by the bandwidth configuration when data transfer is simplex (read or write only), because extra time is available in the event to transfer data.
All data throughput values apply to packet transfers over an encrypted connection using maximum payload sizes.
Protocol | BW Config | Method | Maximum data throughput |
---|---|---|---|
GATT Client | HIGH |
Receive Notification Send Write command Send Write request Simultaneous receive Notification and send Write command |
149.2 kbps 149.2 kbps 10.6 kbps 127.9 kbps (each direction) |
GATT Server | HIGH |
Send Notification Receive Write command Receive Write request Simultaneous send Notification and receive Write command |
149.2 kbps 149.2 kbps 10.6 kbps 127.9 kbps (each direction) |
GATT Client | MID |
Receive Notification Send Write command Send Write request Simultaneous receive Notification and send Write command |
63.9 kbps 63.9 kbps 10.6 kbps 63.9 kbps (each direction) |
GATT Server | MID |
Send Notification Receive Write command Receive Write request Simultaneous send Notification and receive Write command |
63.9 kbps 63.9 kbps 10.6 kbps 63.9 kbps (each direction) |
GATT Client | LOW |
Receive Notification Send Write command Send Write request Simultaneous receive Notification and send Write command |
21.3 kbps 21.3 kbps 10.6 kbps 21.3 kbps (each direction) |
GATT Server | LOW |
Send Notification Receive Write command Receive Write request Simultaneous send Notification and receive Write command |
21.3 kbps 21.3 kbps 10.6 kbps 21.3 kbps (each direction) |
The following table Table 2 shows maximum data throughput at a connection interval of 17.5 ms that allows up to 8 LOW bandwidth concurrent connections per interval.
Only throughput for LOW bandwidth configuration is indicated. For higher bandwidth configurations, a longer connection interval would need to be used for each connection to prevent connection events from overlapping. See Scheduling for more information on how connections can be configured.
Throughput may get reduced if a peripheral link is running because peripheral links are not synchronized with central links. If a peripheral link is running, throughput may decrease to half for up to two central links and the peripheral link.
Protocol | BW Config | Method | Maximum data throughput |
---|---|---|---|
GATT - Client | LOW | Receive Notification |
9.1 kbps |
Send Write command |
9.1 kbps |
||
Send Write request |
4.6 kbps |
||
Simultaneous receive Notification and send Write command |
9.1 kbps (each direction) |
||
GATT - Server | LOW | Send Notification |
9.1 kbps |
Receive Write command |
9.1 kbps |
||
Receive Write request |
4.5 kbps |
||
Simultaneous send Notification and receive Write command |
9.1 kbps (each direction) |