1. Introduction | 2. Objectives | 3. Basic Concepts of Bluetooth Low Energy | 4. Analysis and Bluetooth LE Applications | 5. Glossary | Related Components | GIVEAWAY Terms | Test Your Knowledge
Giveaway:
Read through the module and take our quiz. If you earn 100% on the quiz you will be eligible to win one of three Nordic nRF52840 Dev Kits, the single board dev kit for the nRF52840 SoC. See Terms & Conditions.
Bluetooth is everywhere: in your speakers, wireless headphones, cars, wearables, medical devices, and more. The older Classic Bluetooth (BR/EDR) started as a short-distance cable-replacement technology in mice, keyboards, and other PC devices, and expanded to Bluetooth Low Energy (Bluetooth LE) technology. Bluetooth LE technology is present in applications where power is essential and small amounts of data are transferred infrequently at lower cost and bandwidth. It unlocks a myriad of possibilities, finding implementations in multiple fields such as medicine, the smart industry, and the Internet of Things (IoT). This learning module will provide an in-depth understanding of Bluetooth LE technology and expand on Bluetooth LE development platforms available in the market.
2. Objectives
Upon completion of this module, you will be able to:
Describe Bluetooth Low Energy technology, features, and its operation
Explain the difference between Bluetooth Classic and Bluetooth LE
Discuss how Bluetooth Low Energy consumes less power and is a go-to wireless connectivity technology today
Understand how to get started with the Nordic Bluetooth LE development platform
Bluetooth Low Energy (Bluetooth LE, formerly known as Bluetooth Smart) is a wireless technology that transmits wireless data using radio waves. It was introduced in the 4.0 version of the Bluetooth specification, released in 2010. The focus here is on minimal power consumption and optimization for low cost, low bandwidth, and complexity reduction. Bluetooth LE is created for IoT applications, and runs on a 2.4 GHz ISM band similar to Bluetooth Classic, Wi-Fi, and Zigbee wireless communication protocols. IoT devices often run on batteries and require low power consumption; Bluetooth LE achieves this by keeping the radio on only when needed and sending small amounts of data at low transfer speeds. When not in use, the device drops into sleep mode to conserve energy.
Bluetooth LE is an independent standard incompatible with the classic Bluetooth protocol. There are differences between Bluetooth LE and Bluetooth Classic in terms of technical specifications, implementation, and the types of applications to which they're individually suited. These differences may not be immediately obvious to the end user, as most laptops, tablets, and smartphones come equipped with Bluetooth Smart Ready (aka Dual Mode Bluetooth), combining both Bluetooth Classic and Bluetooth LE for a seamless user experience (Figure 1).
We will now focus on some critical differences between the two variations of Bluetooth.
Figure 1: Bluetooth Classic (left), Bluetooth Smart Ready (Both Classic and LE)-center, and Bluetooth LE (Smart)-right. (Image Source: Bluetooth SIG)
- 3.1 What is the difference between Bluetooth LE and Bluetooth Classic?
Bluetooth Classic radio streams data over 79 channels in the 2.4GHz unlicensed ISM frequency band, and is typically used for short-range communication with relatively higher throughput than Bluetooth LE. The classic mode supports 1Mbps, 2Mbps, and 3Mbps communication speeds. Supporting point-to-point device communication, Bluetooth Classic primarily enables wireless audio streaming and uninterrupted transfer/exchange of a large amount of data. However, its two main limitations are that it quickly consumes battery life and is expensive.
Bluetooth LE is radically different from Bluetooth Classic. It transmits data over 40 channels in the 2.4GHz unlicensed ISM frequency band, and supports multiple communication topologies, ranging from point-to-point to broadcast, and, most recently from 2017 onwards, mesh. It also finds broad use as a device-positioning technology to satisfy the growing demand for high accuracy indoor location services. Bluetooth LE offers throughput of up to 2Mbps and excels in areas that do not require the exchange of large amounts of data.
With each revision, Bluetooth connectivity has become more reliable and secure, and easier to deploy. A significant change occurred in 2016 when Bluetooth 5.0 increased its range speed and data capacity. The Bluetooth Special Interest Group (SIG) introduced Bluetooth LE Audio in 2020, allowing one device to share audio with multiple devices. For example, one smartphone can simultaneously share audio with several pairs of headphones.
Protocol | Bluetooth Classic | Bluetooth Low Energy |
---|---|---|
Connect to iOS without MFI | No | Yes |
Throughput | 1Mbps, 2Mbps, and 3Mbps | 1Mbps, 2Mbps (Bluetooth 5.0) |
Max Range (free field) | 10 meters | Up to 1,000 meters (outdoors)* |
Power Consumption | 100x to 2x of reference | 1 (reference) |
Powered via Coin Cell Battery | No | Yes |
Topology | Point-to-Point / Star | Point-to-Point, Star, Mesh |
Table 1: Bluetooth Classic vs. Bluetooth LE
* Using Bluetooth Long Range feature
- 3.2 Digging Deeper into Bluetooth LE Architecture
Figure 2 represents the different layers within the Bluetooth LE architecture. The three main blocks in a Bluetooth LE device's architecture are the Application, the Host, and the Controller. The application is the user application that interfaces with the Bluetooth protocol stack. Standardized profiles exist to cover critical cases, including alert notifications, blood pressure and glucose monitoring, proximity, proprietary, and others. The upper and lower layers of the Bluetooth protocol stack are covered by the Host and the Controller, respectively. The Host communicates with the Bluetooth LE module via the Host Controller Interface (HCI). The HCI interfaces the Controller with the Host.
Figure 2: The Architecture of Bluetooth LE (Image Source: Nordic Semiconductor)
The Host layer standardizes the way Bluetooth LE devices discover, identify, and talk to each other. It consists of the following:
L2CAP: Logical Link Control and Adaptation Protocol acts as a protocol multiplexer and manages segmentation and reassembly of packets for the higher layer of protocols in this layer. It also provides logical channels, which are multiplexed over one or multiple logical links.
ATT: Attribute Protocol provides the means to transmit data between Bluetooth LE devices by a simple client-server model. It relies on a Bluetooth LE connection and offers procedures to read, write, indicate, and notify attribute values over that connection.
GATT: Generic Attribute Profile is built on top of the Attribute Protocol (ATT) and establishes a common framework for the data transported and stored by the Attribute Protocol. GATT also provides information about the attributes. The GATT defines three vital entities: characteristics, services, and profiles that standardize how devices exchange data with each other.
GAP: Generic Access Profile layer provides the means for Bluetooth LE devices to advertise themselves or other devices, discover devices, open and manage connections, and broadcast data.
SM: Security Manager provides the means for bonding devices, encrypting and decrypting data, and enabling device privacy.
A controller is the actual Bluetooth chip or hardware that facilitates transmission and receipt of Bluetooth LE signals. It consists of the Link Layer and the Physical Layer. The physical layer comprises all of the complex analog circuits that transmit and receive the digital data over the air (details in Section 4). The Link Layer, on the other hand, is responsible for scanning, advertising, creating, and maintaining links (connections) between devices.
- 3.3 Bluetooth LE Network Topologies and Roles: How Do They Work?
A Bluetooth Low Energy device can communicate with the outside world using two methods: broadcasting or connection. Each mechanism has its advantages and limitations, and they are both subject to the Generic Access Profile (GAP) guidelines.
- 3.3.1 Broadcasting and Observing
Connectionless broadcasting essentially enables the sending of data one way to anyone or anything capable of picking up the transmitted data. A Broadcaster sends non-connectable advertising packets periodically to anyone willing to receive them. An Observer repeatedly scans the preset frequencies to receive any non-connectable advertising packets currently being broadcast (Figure 3). Broadcasting is fast and easy to use, and a good choice for pushing tiny amounts of data on a fixed schedule or to multiple devices (with no security or privacy provisions).
- 3.3.2 Connections
Connections allow bilateral data transmission. A connection is a permanent, periodic data exchange of packets between two devices. It is thus inherently private (Figure 4a). Connections involve two separate roles:
Central: Repeatedly scans the preset frequencies for connectable advertising packets and, when suitable, initiates a connection.
Peripheral: A device that sends connectable advertising packets periodically and accepts incoming connections.
Beginning with version 4.1 of the specification, any restrictions on role combinations were removed, and devices can simultaneously act as both a central and a peripheral. Additionally, a central can be connected to multiple peripherals, and vice-versa. The topologies could be mixed freely on a broader Bluetooth LE network, as shown in Figure 4b. Since then, more advanced dual-mode and single-mode devices have emerged that are able to concurrently combine multiple roles.
Image Source: OReilly Library
The critical parameter of Bluetooth LE is low power. Bluetooth LE chip manufacturers can now produce microscale, power-efficient Bluetooth LE solutions with reduced system costs. Because there are inevitable tradeoffs in efficiency with solutions having a single processor performing both networking and computational duties, developers are now moving towards dual-core solutions. In a dual-core wireless SoC, a powerful processor with a high clock rate is exclusive to the computational heavy lifting, and it is then switched off to save power until it is needed again. The other, a power-optimized processor with a slower clock, can be allocated to wireless networking.
- 4.1 Nordic's nRF5340 SoC
Nordic's nRF5340 is a wireless ultra-low-power Multicore System-on-Chip (SoC) with two fully programmable Arm Cortex-M33 processors: an application core and a network core. The application processor is optimized for performance and can run at either 128 MHz (for 514 CoreMark performance) or 64 MHz, while the network processor is optimized for efficiency (101 CoreMark/mA at 64 MHz). Together, these two cores deliver a stable connection and effective computing capabilities for any project at a low power cost. The nRF5340 SoC is designed to support USB, Bluetooth 5.2, Bluetooth LE Audio, Bluetooth mesh, Bluetooth direction finding, Thread, NFC, Zigbee, and a 2.4 GHz proprietary protocol. The application processor has 1 MB Flash, 512 KB RAM, a floating-point unit (FPU), an 8 KB 2-way associative cache, and DSP instruction capabilities.
The nRF5340's dual-core architecture is divided into distinctly defined subsystems. An efficient and stable subsystem based on the network processor supervises the RF protocol software (e.g., the Bluetooth LE stack). The application processor subsystem only awakens when it is time to run the complex application software, and it then quickly returns to a low-power sleep mode when the operation is complete. To make things even more battery-friendly, each processor can benefit from the power management system. The nRF5340 SoC radio effectively combines advanced features and minimal current use. The 0 dBm TX current is 3.4 mA, while the RX current is only 2.7 mA.
The module also incorporates Arm CryptoCell-312, Arm TrustZone, and Secure Key Storage for a secure connection. The combination of two flexible processors, an advanced feature set and security, and an operating temperature up to 105 °C, makes it a good choice for LE Audio, professional lighting, advanced wearables, and other complex IoT applications.
- 4.2 Nordic nRF5340 Development Kit
The nRF5340 Development Kit (DK) from Nordic Semiconductor integrates the nRF5340 SoC and contains everything necessary to get started with Bluetooth LE development on a single board. The DK supports Bluetooth LE with features such as high-throughput 2 Mbps, Advertising Extensions, and Long Range. Mesh protocols like Bluetooth mesh, thread, and Zigbee can run concurrently with Bluetooth LE, enabling smartphones to provision, commission, configure, and control mesh nodes. NFC, ANT, 802.15.4, and 2.4 GHz proprietary protocols are also supported. The DK is bundled with an NFC antenna (available inside the box) and quickly enables testing of the nRF5340's NFC-A tag functionality. A SEGGER J-Link debugger is included on the board, enabling programming and debugging of the nRF5340 SoC and external targets.
All analog and digital interfaces and GPIOs are available via headers and edge connectors. The kit is Arduino Uno Rev3 hardware compatible, making it usable with a variety of external device shields. Four buttons and four LEDs simplify input and output to and from the nRF5340 SoC, and are all user-programmable. On-board external memory is connected to the 96 MHz QSPI peripheral in the nRF5340 SoC. The nRF5340 DK is typically powered via USB, but can be powered by a wide range of sources within the supply range of 1.7 to 5.0 V. Figure 6 illustrates some of the relevant features, and, for specific details, a hardware user guide of the nRF5340 DK is available.
- 4.3. Getting Started with Bluetooth LE Development
The nRF5340 DK includes hardware, pre-programmed firmware, documentation, hardware schematics, and layout files. The nRF Connect SDK (software development kit) provides software development support for the nRF5340 DK and is a common platform for all cellular IoT and short-range project developments. The SDK integrates Zephyr RTOS, protocol stacks, a range of application samples, hardware drivers, and much more.
Running a test application on the nRF5340 DK is straightforward. This pre-compiled Heart Rate Monitor (HRM) demo application is available on the development kit, and ensures that the kit functions as expected and communication between the computer and the DK works.
Step 1 - Ensure Minimum requirements: Ensure that you have all the required hardware and your computer fulfills the software requirements.
Hardware requirements: nRF5340 DK, a Micro-USB 2.0 cable, and Personal computer (PC). (Figure 7)
Software requirements: Windows 8 or 10, macOS, or Linux OS
Figure 7b. Install nRF Connect for Desktop
Step 2 - Running the First Test:
Download the Heart Rate Monitor (HRM) demo application from nRF5340 DK Downloads and extract it into a folder of your choice. There will be two HEX files in the folder: one for the application core (peripheral_hr.hex) and one for the network core (hci_open_amp.hex).
Install nRF Connect for Desktop and nRF Connect Programmer. See Installing the Programmer for instructions.
Use nRF Connect Programmer to program the HEX files of the demo application. See Programming a Development Kit or the nRF51 Dongle for more information.
Press the reset button. The development kit will now restart and run the application. Note that while restarting, the JLINK drive will be disconnected.
Download and install the Nordic nRF Toolbox app from the Google Play or App Store.
Open nRF Toolbox. Note: Enable Bluetooth if prompted.
Tap HRM → Tap Connect → Select Zephyr Heartrate Sensor. A simulated heart rate and battery charge percentage is displayed.
Now you are ready to set up your development toolchain and build an application from the source code. Nordic's documentation contains the necessary information to walk you through developing your own Bluetooth LE application using the nRF5340 DK.
Authentication: The process or action of verifying the identity of a user, device, or process.
Bluetooth: A technology standard specifying wireless data exchange between fixed or mobile devices over short distances.
Bluetooth Low Energy (Bluetooth LE): A technology standard specifying wireless data exchange at ranges similar to Bluetooth Classic, but at reduced power consumption and cost.
Bluetooth Mesh: A new Bluetooth specification that builds on top of Bluetooth LE and allows Bluetooth LE devices to form a many-to-many network topology.
Development Kit (DK): A development platform used for application development.
Network Topology: The way in which different elements in a network are interrelated or arranged.
Packet: A formatted unit of data carried by a network. A packet consists of control information and user data, which is also known as the payload.
Peripheral: A Bluetooth LE device that sends out advertising packets and allows other Bluetooth LE devices (specifically Centrals) to connect to it.
Real-time operating system (RTOS): A computing environment that reacts to input within a specific time period. A real-time deadline can be so small that the system reaction appears instantaneous.
Software Development Kit (SDK): A set of tools used for developing applications for a specific device or operating system.
System-on-Chip (SoC): A microchip that integrates all the necessary electronic circuits and components of a computer or other electronic system on a single integrated circuit.
Universal Serial Bus (USB): An industry standard that establishes specifications for cables, connectors, and protocols for connection, communication, and power delivery between computers, peripheral devices, and other computers.
*Trademark. Nordic Semiconductors is a trademark of Nordic Semiconductors Inc. Other logos, product and/or company names may be trademarks of their respective owners.
Related ComponentsBack to Top
The element14 ESSENTIALS of Bluetooth Low Energy provides an in-depth understanding of Bluetooth LE technology and expands on Bluetooth LE development platforms available in the market. To extend the knowledge covered in the main module, this supplementary guide discusses the types of related components used for prototyping or product development.
Development Boards
The nRF5340 DK is the development kit for the nRF5340 System-on-Chip (SoC), containing everything needed to get started with development on a single board. It supports Bluetooth Low Energy with features such as high-throughput 2 Mbps, Advertising Extensions, and Long Range. Mesh protocols like Bluetooth mesh, Thread, and Zigbee can run concurrently with Bluetooth LE, enabling smartphones to provision, commission, configure and control mesh nodes. NFC, ANT, 802.15.4 and 2.4 GHz proprietary protocols are also supported.
The DK is bundled with an NFC antenna that quickly enables testing of nRF5340’s NFC-A tag functionality. A SEGGER J-Link debugger is on the board, enabling programming and debugging of both the nRF5340 SoC and external targets.
All analog and digital interfaces and GPIOs are available via headers and edge connectors. The kit is Arduino Uno Rev3 hardware compatible, meaning it can be easily interfaced with external device shields. An on-board external memory is connected to the 96 MHz QSPI peripheral in the nRF5340 SoC.
The nRF5340 DK is typically powered via USB, but can be powered by a wide range of sources, within the supply range of 1.7 to 5.0 V. Current consumption can be measured by using the dedicated current measurement pins, for example by using Nordic’s Power Profiler Kit II.
The nRF52833 DK is a single-board development kit for Bluetooth 5.1, Bluetooth mesh, Thread, Zigbee, 802.15.4, and 2.4 GHz proprietary applications using the nRF52833 multi-protocol SoC. The kit is compatible with the Arduino Uno Rev3 standard, making it possible to use a wide range of 3rd-party shields during development, including the compatible Power Profiler Kit from Nordic Semiconductor.
The kit has access to all I/Os (42) and interfaces via connectors. It includes an integrated PCB trace antenna and an RF connector for direct RF test measurements. There is also a connector for an external NFC antenna (included in kit).
Development on the nRF52833 DK is supported by the nRF Connect SDK, providing all necessary examples, libraries, and drivers to get started with Bluetooth Low Energy development and many other wireless protocols. Everything needed to start development can be downloaded from nRF52833-DK software and tools. It is also possible to use the nRF5 SDK with the nRF52833 DK.
The nRF52 DK is a single-board development kit (DK) for Bluetooth Low Energy, Bluetooth mesh, ANT, and 2.4 GHz proprietary applications using the nRF52810 and nRF52832 SoCs. It includes an NFC antenna that quickly enables utilization of the NFC-A tag peripheral on the nRF52832.
The kit is compatible with the Arduino Uno Revision 3 standard, making it possible to use 3rd-party shields that are compatible to this standard. It comes with an on-board SEGGER J-Link debugger, allowing programming and debugging both the on-board SoC and external SoCs through the debug out header.
It can be powered by USB or by an external source, but also includes a CR2032 battery holder, enabling in-field testing of prototypes. A range of software examples are available from the nRF Connect SDK to support Bluetooth LE, Bluetooth Mesh, Zigbee, Thread, and 2.4 GHz applications. SEGGER Embedded Studio (Nordic Edition) and Visual Studio Code IDEs are natively supported. It is also possible to use the nRF5 SDK with the nRF52 DK.
SoCs
nRF5340-QKAA-R RF Transceiver, 2.4 GHz, 2 MBPS, AQFN-94, -40 °C to 105 °C
nRF5340 Variants
nRF5340-CLAA-R RF Transceiver, 2.4 GHz, 2 Mbps, 3 dBm Output Power, -40 °C to 105 °C, 1.7 V To 5.5 V, aQFN-94
nRF5340-CLAA-R7 RF Transceiver, 2.4 GHz, 2 Mbps, 3 dBm Output Power, -40 °C to 105 °C, 1.7 V To 5.5 V, aQFN-94
The nRF5340 is a wireless System-on-Chip (SoC) with two Arm Cortex-M33 processors. The combination of two flexible processors, the advanced feature set, and an operating temperature up to 105 °C makes it a good choice for LE audio, professional lighting, advanced wearables, and other complex IoT applications.
The nRF5340 is an all-in-one SoC, including a superset of the most prominent nRF52 Series features. Features like USB, Bluetooth 5.2, up to 105 °C operating temperature, and more are combined with more performance, memory, integration, while minimizing current consumption.
The application processor is optimized for performance and can be clocked at either 128 or 64 MHz, using voltage-frequency scaling. The highest performance (514 CoreMark) is achieved with 128 MHz, while running at 64 MHz offers a more efficient option (73 CoreMark/mA). The application processor has 1 MB Flash, 512 KB RAM, a floating-point unit (FPU), an 8 KB 2-way associative cache, and DSP instruction capabilities.
The network processor is clocked at 64 MHz and is optimized for low power and efficiency (101 CoreMark/mA). It has 256 KB Flash and 64 KB RAM. It is fully programmable, enabling the developer to select which parts of the code to run with the highest efficiency, in addition to the wireless protocol stack.
The nRF5340 improves security by incorporating Arm CryptoCell-312, Arm TrustZone, and Secure Key Storage. Arm TrustZone efficiently provides system-wide hardware isolation for trusted software by separating between secure and non-secure regions on a single core. The security attributes of the Flash, RAM, and peripherals are easily configured through the nRF Connect SDK. The Arm CryptoCell-312 hardware accelerates the strong ciphers and encryption standards required in the most security-conscious IoT products. Secure Key Storage is enabled by the Key Management Unit (KMU) peripheral, where the keys are physically isolated from processor access, and only the Arm CryptoCell-312 can access the secure keys. The secure bootloader in the nRF Connect SDK establishes a root-of-trust and extends this to a chain-of-trust by only booting software that has a verified signature. The bootloader also verifies that all incoming device firmware updates originate from an authenticated source.
Test Your KnowledgeBack to Top
Are you ready to demonstrate your knowledge of Bluetooth Low Energy? Then take a quick 10-question multiple choice quiz to see how much you've learned. To earn the Wireless Protocol IV Badge, read through the learning module, attain 100% on the Quiz, leave us some feedback in the comments section, and give the learning module a star rating.