Bluetooth 5 focuses on broadening the range of Internet of Things (IoT) applications that can utilize BLE. It brings us twice the speed, four times the range, and eight times the advertising capacity.

Some of the most important new features introduced by Bluetooth 5 are:

  • 2 Msym/s PHY for LE (2x the speed)

  • LE Long Range (4x the range)

  • LE Advertising Extensions (8x the Advertising capacity)

Msym/s (Megasymbols per second) is used here instead of Mbps because it refers to the actual radio transmission capability. In some cases multiple symbols will be used to represent a single bit, therefore reducing the Mbps rate.

Twice the Speed, Four Times the Range

The Bluetooth specifications before Bluetooth 5 allowed a single PHY, operating at 1 MSym/sec.

Bluetooth 5 introduced two new (optional) PHYs:

  1. 2M PHY:
    Used to achieve twice the speed of earlier versions of Bluetooth. It offers a couple of extra benefits as well:

    • Reduced power consumption, since the same amount of data is transmitted in less time, thus reducing radio-on time.

    • Improvement of wireless coexistence because of the decreased radio-on time.

However, it has some downsides:

  • It has the potential of reducing the range, as the higher speed results in a decrease in radio sensitivity on the receiving end.

  • The use of the 2M PHY is restricted to the secondary advertisement and data channels.

It is important to note that this new PHY represents a hardware change, so older chipsets and modules may not support it.

  1. Coded PHY:
    Used to achieve four times the range of earlier versions of Bluetooth. The obvious benefit of using the coded PHY is increased range, with two trade-offs:

    • Higher power consumption:
      because we are transmitting multiple symbols to represent one bit of data, resulting in a longer radio-on time to transmit the same amount of data.

    • Reduced speeds:
      because more bits are needed to transmit the same amount of data.

Ranges as far as 800 meters line-of-sight have been recorded while testing with the coded PHY. This makes it possible to use BLE in applications such as ones that require communication with a device hundreds of meters away.

The data rates we discussed above define the rate at which the radio transmits raw data. When it comes to the application data rate — in terms of how much bandwidth your application can utilize — these numbers are reduced.

This is due to mandatory (time) gaps in between packets (150 microseconds, per the Bluetooth specification), packet overhead, as well as some other requirements defined by the specification (for specific use cases such as responses and confirmation packets).

As an example, in the case of the 2M PHY, one can achieve a maximum application data rate of around 1.4 Mbps.

2M PHY

At the application level, you do not need to know much about the low-level details of this PHY, other than setting it when you want to achieve higher speeds. But keep in mind that using this PHY potentially reduces the range.

Another restriction that was mentioned above is that the 2M PHY is not allowed in primary advertisements. There are two ways to utilize this mode:

  • Secondary advertisements (extended advertising mode) are used and sent on the 2M PHY, which allows a connection on that PHY from the central device.

  • Advertising on the primary or secondary channels using the 1M or the coded PHY. When the connection is established, either side can request a PHY update to use the 2M PHY during the connection.

One important thing to note is that the link between a peripheral and a central can be asymmetric, meaning that the packets from the peripheral can be sent using the 1M PHY, while packets from the central can be sent using the 2M PHY.

Coded PHY

Bluetooth 5 achieves a longer range compared to earlier versions of Bluetooth by introducing the new coded PHY. So, what does coding mean? And how does it help achieve a longer range of communication?

It achieves this by utilizing a telecommunications technique called Forward Error Correction (FEC). FEC allows the receiver to recover the data from errors that occur due to noise and interference. It accomplishes this by introducing redundancy in the data being transmitted, using a specific algorithm. So, instead of requiring retransmission of data when an error occurs, the receiver can recover the originally transmitted data by utilizing the redundancy in the data.

There are two coding schemes used by the coded PHY:

  • S = 2, where 2 symbols represent 1 bit therefore supporting a bit rate of 500 kbps.

  • S = 8, where 8 symbols represent 1 bit therefore supporting a bit rate of 125 kbps.

Eight Times the Advertising Capacity

Extended Advertisements

Bluetooth 5 introduced the concept of secondary advertising channels which allow the device to offload data to advertise more data than what is allowed on the primary advertisement channels.

Advertisements that are transmitted only on the primary advertisement channels are called legacy advertisements, whereas advertisements that start by transmission on the primary channels and then continue on the secondary channels are called extended advertisements.

In the case of extended advertisements, the advertisement packets sent on the primary advertisement channels provide the information necessary to discover the offloaded advertisements that are sent on the secondary advertisement channels. These are utilized for sending significantly more data (8x) than legacy advertisements allow (up to 255 bytes vs. 31 bytes). They are also useful in reducing congestion on the three primary advertising channels.

Advertisement packets sent on the secondary advertisement channels can use any of the three PHYs (1M PHY, 2M PHY, or coded PHY), whereas the primary advertisement channels can only use the coded PHY or the original 1M PHY. This means that a central must use the 1M PHY or coded PHY when initially searching for peripherals that are sending out advertising packets.

Periodic Advertisements

Think of the following use case: we have multiple temperature sensors distributed in a building. The temperature readings from these sensors change over time, and they need to be distributed along with other data (location, time of reading, etc.) to multiple devices that pass this data up to the cloud.

We could potentially use extended advertisements since we may have more data than would fit into the legacy advertisement packet (31 bytes), but that means the centrals will have to be looking for advertisements all the time, potentially consuming a lot of power (especially if the advertisement data does not change often).

Instead, we could utilize a new feature that was introduced in Bluetooth 5: periodic advertisements. Periodic advertisements are a special case of extended advertisements and allow a central to “synchronize” to a peripheral that is sending these extended advertisements at a fixed interval. This helps reduce power consumption when the advertisements are sent periodically at longer intervals, while allowing multiple centrals to be synchronized to the same peripheral.

The way periodic advertisements work is by transmitting advertising packets on the primary advertisement channels, which hold information (e.g., time offset, PHY, etc.) to help locate the extended advertisement packet. That packet, in turn, contains fields that define the data needed to synchronize to the periodic advertisement packets — similar to how connections are synchronized using a channel map, hop increment, the selected PHY, etc.

More on Extended Advertisements

Extended advertisements utilize the Secondary Advertisement Channels, which are the same channels used by data packets transmitted during a connection between two devices.

Extended advertisements are not considered part of the advertisement events ( legacy advertisements), which occur on the primary advertising channels (37, 38, and 39).

Extended advertisements are used to “offload” data that would otherwise exist on the Primary Advertising Channels (also called auxiliary packets). Offloading is accomplished by first advertising on the primary channel data values that point to an auxiliary packet on the secondary channel. The advertisement packets sent on the primary channels contain the PHY channel and the offset to the start time of the extended advertisement packet.

Another important aspect is that extended advertisements can use any of the three PHYs (1M PHY, 2M PHY, or the coded PHY), whereas primary advertisement packets can only be sent using the 1M PHY or the coded PHY.

Since non-Bluetooth 5 devices are not able to discover extended advertisements, it is recommended that peripherals also use an advertising set (additional advertisements) with legacy advertising PDUs for older central devices to be able to discover these peripherals.

Here is a diagram showing an example of extended advertising:

Extended Advertising

The periodic advertising mode allows two or more devices to communicate in a connectionless manner. The peripheral device sends out synchronization information along with the other extended advertisement data allowing another device to become synchronized with this peripheral. This synchronization allows devices to receive the peripheral deviceʼs extended advertisements at regular, deterministic intervals.

Here is a diagram showing an example of periodic advertising:

Periodic Advertising