Smart World of IoT, Bluetooth Low Energy, and The Swiss Army Knife of Connectivity!
September 18, 2019
In this installment, we?ll focus on Bluetooth low energy (BLE) and explore the key characteristics that make it the technology of choice for many IoT designers.
Connectivity is a crucial pillar of any IoT system. The most important deciding factors for selecting the right wireless protocols to use for an application include speed, transmission range, security, compatibility, and power consumption. We covered an overview of different wireless technologies in Part 2 of this column series. In this installment, we’ll focus on Bluetooth low energy (BLE) and explore the key characteristics that make it the technology of choice for many IoT designers.
Bluetooth found a niche in wireless human interface devices and audio peripherals with PC and mobile phone connections, catalyzing the market. Although advances in low power Wi-Fi devices have provided alternative connectivity for some applications, demand for Bluetooth is still going strong. BLE, on the other hand, evolved to be the Swiss army knife of connectivity due to its profile flexibility, ease of use with mobile phones, and ultra-low power characteristics. BLE is replacing proprietary protocols such as ZigBee to become the de-facto standard of connectivity in low-power, low-cost IoT devices.
This growth is fueled by the recent updates BLE 5.0 and BLE 5.1 that have improved BLE’s specifications. For example, the improved range ensures that any BLE device such as a smart sensor, smart lock, or lightbulb can be connected flawlessly from anywhere in a house. This is a crucial step toward enabling a true Smart Home. Improved range also benefits devices such as smartwatches so they can receive instant notifications from smartphones that are in a different room.
Another substantial improvement is the significant increase in data rate, making the information transmission richer and smarter. Connectionless services such as beacons providing contextual awareness will be able to transmit more information. For example, beacons will be able to transmit actual content instead of only pointing at the content through a URL. This has the potential to redefine the way Bluetooth devices transmit information today by moving toward connectionless IoT instead of the current Bluetooth-paired devices model. This can also make BLE applications like asset-tracking and smart waste management smarter using BLE Mesh networks.
These improved features, however, also require an improved processor in terms of DMIPs and memory. The underlying hardware (i.e., SoCs or MCU) must change to support these features. Security is an essential, non-negotiable feature for most IoT applications. Data protection is needed at all levels, including storage, processing, and during communications to ensure system reliability. IoT designers prefer to select SoCs that have built-in BLE, sensor interfaces, security features, and flexible peripherals. This also helps them to reduce the BOM and PCB space for IoT devices. See Part 4 of this series for a detailed discussion on fully integrated wireless systems on chips.
Let’s look at some of the features that make BLE flexible and easy to use for IoT applications.
GATT Profiles – Ease of Use
BLE provides several Generic Attribute (GATT) Profiles for typical applications that simplify the firmware and compatibility criteria. Examples include Current Time Service (CTS), Find Me Profile (FMP), Heart Rate Service (HRS), Wireless Lighting Control (Mesh Profile), among others. These profiles allow a peripheral and server to communicate with each other using pre-defined data structures with little overhead. This allows BLE to use simpler protocols than connectivity options such as Wi-Fi. It also yields very high data transmission efficiencies. If your application suits an existing GATT profile, it’s a no-brainer to use it since it reduces the firmware-development time and opens the door to existing app compatibility. A list of standard GATT profiles can be found on the BLE SIG website.
To further simplify the firmware creation process, IDEs such as Cypress’ ModusToolbox provide an easy-to-use graphical interface for BLE. These configurators offer the option to add standard GATT services and configure them before firmware creation so that service-specific events can be handled by the stack itself. This means the application firmware just needs to take care of the high-level events.
Custom Profiles – Flexibility
In specific applications, it may be necessary to create custom profiles that do not adhere to existing standard GATT services. Examples include custom sensor interfaces, capacitive touch sensing, and RGB LED lighting. These innovative interfaces help in integrating many functions using one SoC, thereby providing better power and cost advantages.
A GUI-based approach to firmware design also helps with custom profiles. Figure 3 shows the configuration for a custom user interface example.
Although BLE provides security options for pairing as well as link layer, additional security measures can be implemented with custom profiles if the SoC supports a cryptography block. These SoCs need to provide a complete chain of security in hardware. These hardware SoC security features take less time and energy as compared to their equivalent firmware implementations.
BLE is an ideal solution for low power connectivity. The data rate can be traded off for lower power by adjusting the connection interval and MTU (Maximum Transmission Unit) size. Integrated BLE in the system on chips also allows the SoC to use Deep Sleep power mode efficiently, as we’ve discussed in Part 5 of this column series. The SoC can wake up from the Deep Sleep power modes on BLE events and process the data. Even at high data rates (up to 2Mbps), BLE provides considerable power advantages over Wi-Fi for low data rate connections. Dual-core SoCs provide even more flexibility by using the companion core for BLE stack operations while the main MCU is free to run application firmware, allowing the system to spend even more time in the Deep Sleep mode.
BLE is a packet-based protocol with a master/slave architecture. However, it provides a hassle-free broadcaster mode that doesn’t need pairing. The broadcaster mode can be used by “beacons” to transmit messages to multiple listeners. This technology enables smart devices to perform specific actions when in proximity to a beacon. Devices designed to support beacons should be ultra-low as power is one of the major requirements for broadcasting. BLE beacons also can implement indoor location-tracking capabilities.
Mesh networking evolves BLE beyond a simple master/slave architecture by supporting multiple interconnected nodes. This allows a large number of low power IoT nodes (up to 32767!) to communicate with each other and eliminates the need for a hub/router. BLE Mesh implements a controlled flood network with encrypted and authenticated messages. The basic message segment size is 11 bytes but, using segmentation and re-assembly, can be expanded to 384 bytes. Messages have opcodes, sequence numbers, time to live (TTL), and source and destination addresses. Addressing is flexible and can be used to denote a single node or a group of nodes. BLE Mesh also provides a granular authentication with different types of keys for the networks and specific application functionalities. With BLE Mesh, networks can be bridged to the internet via a smartphone or a low-cost bridging device, like a smart speaker, or using a Wi-Fi/BT combo. Compared to ZigBee – a proprietary mesh protocol, BLE Mesh protocol provides low-cost hardware and a lightweight protocol stack that is based on the familiar Bluetooth, which brings interoperability with phones, PCs, and existing BLE, BT and WiFi/BT devices.
In the next part, we’ll look at a real IoT application built around BLE capable SoCs.
Jaya Kathuria Bindra works as a Senior Manager Applications Engineer at Cypress Semiconductor Corporation where she is managing the Embedded Applications Group and Solutions Development using the PSoC and WiFi/BT platform. She has 15+ years of experience in the Semiconductor Industry. She earned her executive management credential from IIM, Bangalore and holds a bachelor’s degree in Electronics Engineering from the Kurukshetra University.
Nidhin MS works as a Staff Applications Engineer at Cypress Semiconductor Corporation. He has eight years of technical experience with analog, power electronics, touch sensing, embedded computing and connectivity and holds a bachelor’s degree in Electronics and Communication Engineering.
For more blogs by Cypress Semiconductor Corporation, check out: