Вы находитесь на странице: 1из 20

Bluetooth Low Energy

A timing perspective

Configurations between Bluetooth


Overview : Goals of BLE

Lowest possible power operation
Lowest possible latency
Widest possible range of interoperable devices and

Hardware configurations

Low power methods & Constraints

Lower standby time
3 advertising channels
RF on for 1.2 ms
Idle current dominated by
deep sleep current.

Faster connections
Lower peak power
Relaxed RF parameters
Restricted packet length

Reusing RF

60% silicon area

Same antennae for Wi-Fi
TDMA with Bluetooth

Reusing Host Control Interface

Same physical interfaces

Same drivers in OS

Reusing L2CAP (Logical link control & adaptation protocol)

Segregation of stacks at
known multiplexing point.

Active states of operation & Broadcast











Link-layer activity
Network composed of master/initiator and
slave/advertiser in a piconet (star connected topology).
Master determines the instants in which slaves are
required to listen.
Coordinates the medium access using Time Division Multiple
Access (TDMA) scheme.
When it finds the slave, transmits a connection request,
creating a point-to-point connection.

Post-connection, physical channel divided into nonoverlapping time units called connection events.

Connection events
Starts with master transmitting a request to the slave.
If packet received by slave, has to be acknowledged.

While master and slave alternate in sending packets,

connection is considered open.
Every new connection event has a new data channel
frequency, computed using a frequency hopping
Link-layer connections use a stop-and-wait flow
mechanism based on cumulative acknowledgments.

Data exchange process (master and


Herein, the peripheral device is the slave and the central client is
the master. The three connection intervals use channel 37, 38, 39
for advertising respectively via the peripheral device.

Connection parameters
Set of parameters set by the Central client to determine
when and how Central and Periphery transmit data via
1. Connection interval: How often the Central requests
data from its Peripheral (7.5 ms to 4 s).
2. Slave Latency: A non-zero latency allows the Periphery
to not answer when the Central asks for data up to the
slave latency number of times (0 to 499).
3. Connection Supervision timeout: Determines the
timeout from the last data exchange till a link is

Timeline for a minimum transaction

Time (s)

Master Tx

Radio active (s)

Slave Tx







Empty packet



Empty packet (ack)



Empty packet (ack)

Attribute protocol


Energy for the above transaction = 15 mW * 3 ms

= 45 J

Energy consumption impact

We assume an ideal battery capacity of 230 mAh
(coin-cell battery) and nominal voltage of 3V.
The graph considers the following range of
connInterval between 7.5 to 4000 ms.
connSlaveLatency between 0 and 7.
connSupervisionTimeout = 32 s (max).
For the most energy saving scenario, maximum slave
lifetime = 14.1 years and 12.4 years, for one-way and
round trip respectively.
These are obtained with connInterval = 86.25 ms,
connSlaveLatency = 370 and result in one reading
every 32 s.
For the least energy saving scenario, max slave
lifetime = 2.6 days and 2.0 days for one-way and
round trip respectively.

Maximum piconet size

In BLE, each connection between a master
and a slave is identified by a 32-bit access
address. Beyond this fact, the Bluetooth 4.0
specification does not impose further limits
on the number of slaves that can be
connected to a master.
However, the max number of slaves a
single master can handle is limited by the
connInterval parameter.
The most energy demanding parameters
yield a limited number of slaves per master:
1. For connInterval = 7.5 ms, no. of slaves
per master is between 2 and 11.
2. For connInterval = 4 s and one-way ATT
comm, no. of slaves per master is
approximately 5917.
The max piconet size is also limited by the

Throughput limitations
While the physical layer data rate of BLE is 1 Mbps, the maximum
application layer is throughput = 236.7 kbps.
Also, transmission of data cannot be resumed in case of a faulty packet
connection interrupt, until the beginning of the next connection event,
whereby a new data channel (i.e., a new frequency) is used.
Hence, moderate to high throughput achieved only for low connInterval

For smallest connInterval and connSlaveLatency ( 7.5 ms and 0), max

application layer throughput was found to be 58.48 kbps. This shows
that high throughput has not been a primary goal in the design of the

BLE is defined over an underlying 1Mbps link, however the
actual throughput after you take into consideration
The overhead of the protocol
The fact the link is half-duplex
The limitations in BTLE stacks (all of them) which restrict the
number of packets which can be transmitted per connection
The limitations of various communicating devices which may
limit how often devices connect
Whether you are writing packets requiring responses or writing
without response and dealing with dropped packets.

1. Bluetooth occupies the same bands as WiFi and other BT and/or BT LTE
nodes exist.
2. Due to #1, the SNR of the band is often reduced because the noise
floor is above the "quiet" level. The increases the chances of the
various modulation/coding schemes getting an erroneous symbol
3. #2 means the Bit Error Rate is increased and re-transmits are increased
4. #3 mean the net effective data transfer rate is reduced.

Further analysis of throughput

3 factors that determine maximum throughput with
operation type
connection interval
number of packets transmitted per connection event

Calculation: given a number of packets per interval n

and a connection interval T, the throughput can be
calculated like this:
n * 20 Bits * 1/T

Evaluation of throughput
Protocol efficiency of the BLE data channel is calculated as:
ThroughputBLE (n, m, TTXprep ,TRXproc ,) =


0.16ms + (n+m)*8/1000 + 2* +2 + 2*max(0.15ms, TTXprep +TRXproc )

where n denotes the payload of each frame transferred from the master to the slave (i.e.,
forward frame), m is the payload of the reply frame and 0.16 ms accounts for the time for
transmitting the frame headers.

If we plugin n = 27, TTXprep= TRXproc= = m = 0 and considering

that the overhead introduced by the upper layers of the forward
frame protocols equals 7 bytes:
Maximum application layer throughput = 236.7 kbit/s