One of the most common misunderstandings of Bluetooth LE by people that are not familiar with the technology is that Bluetooth LE is a lightweight subset of Bluetooth Classic. This is not true, as Bluetooth Classic and Bluetooth LE are two fundamentally different protocols with different design goals.
Most wireless technologies, such as Wi-Fi and Bluetooth Classic, were designed to satisfy a wide range of use cases; however, the design of Bluetooth LE is a bit different. Originally created by Nokia and known as Wibree, the primary design focus of Bluetooth LE was to create a radio standard with the lowest possible power consumption and optimized for low cost, low complexity, and low bandwidth.
Bluetooth LE specifications were released as part of the Bluetooth 4.0 Core specifications in June of 2010. The Bluetooth Core Specifications are overseen and updated by the Bluetooth Special Interest Group (SIG).
The adoption rate of Bluetooth LE has been much faster than most other wireless technologies. The reason for this is the adoption of the Bluetooth LE standard in the mobile industry where Apple and Google have put significant effort into including reliable Bluetooth LE stacks with the iOS and Android operating systems and developing easy-to-use-and-understand Bluetooth LE APIs for developers. This makes it very easy for developers to create and interact with devices that have Bluetooth LE radios.
The reason that the mobile industry has been pushing for the adoption of Bluetooth LE is that devices that connect using Bluetooth LE consume far less power, hence the name Bluetooth Low Energy, as compared to other wireless technologies such as Bluetooth Classic and Wi-Fi. This leads to longer battery life for their phones, which leads to happier customers.
Bluetooth devices come in three types, where each type supports either Bluetooth Classic, Bluetooth LE or both. The following chart shows what each type supports:
Device Type |
Bluetooth Classic Support |
Bluetooth LE Support |
Pre-4.0 Bluetooth |
Yes |
No |
Single-Mode |
No |
Yes |
Dual-Mode |
Yes |
Yes |
While the Bluetooth 5.0 specifications were released in June of 2016, at the time this book is being written, there are very few Bluetooth modules for the Arduino that support this new specification. In fact, at this time, there is very little support for the Bluetooth 4.1 or 4.2 specifications either; therefore, in this book, we are going to focus on the Bluetooth 4.0 specifications, knowing that Bluetooth 5.0, 4.2 and 4.1 are all backward compatible with this standard.
In order to design IoT devices that use Bluetooth LE we really need to understand the technology so we know when actually to use it. Therefore, we will delve into this technology a lot further than we have with other technologies in this book. We will start off by looking at the radio specifications.