What is Bluetooth Low Energy?
Bluetooth Low Energy is a wireless personal area network technology designed by the Bluetooth Special Interest Group; consisting of 150 companies. Following Bluetooth 4.x, the corresponding Mesh Model specification for Bluetooth 5 was released in 2017. It effectively quadrupled the range by using increased transmit power and coded physical layer; doubled the speed by using optical half of the symbol time compared to Bluetooth 4.x; and provided an eight-fold increase in data broadcasting capacity by increasing the advertising data length of Bluetooth Low Energy transmissions. Compared to Classic Bluetooth, Bluetooth Low Energy was intended to provide considerably reduced power consumption and cost; while maintaining a similar communication range.
Figure 1: Bluetooth Low Energy Gateway solution [8]
How Bluetooth Low Energy works
The Bluetooth Low Energy integrated circuits use software radio so updates to the specification can be accommodated through a firmware upgrade. Current mobile devices are commonly released with hardware and software support for both classic Bluetooth and Bluetooth Low Energy.
Bluetooth Low Energy is not backward compatible with the classic Bluetooth Basic Rate/Enhanced Data Rate (BR/EDR) protocol. The Bluetooth 4.0 specification permits devices to implement either or both of the LE and BR/EDR systems. Manufacturers are expected to implement the appropriate specifications for their device in order to ensure compatibility.
Bluetooth Low Energy protocol device may implement multiple profiles. Majority of application profiles are based on the Generic Attribute Profile, which dictates the specifications for sending and receiving short pieces of data, known as attributes over a Low Energy link. It has the following terminology:
- Client: A device that initiates requests and accepts responses e.g. a smartphone.
- Server: A device that receives requests and returns responses e.g. a temperature sensor
- Characteristic: A data value transmitted between client and server e.g. the current temperature value.
- Service: A collection of related characteristics which operate together to perform a particular function e.g. Health Thermometer Service.
- Descriptor: Optional parameters associated with characteristics to provide additional information e.g. Temperature unit Descriptor.
Services, characteristics and descriptors are collectively referred to as attributes and identified by Universally Unique Identifiers (UUIDs). Any implementer may pick a random UUID for proprietary uses. For efficiency, these identifiers are represented as 16-bit or 32-bit values in the protocol instead of 128 bits required for a full UUID. The full list is kept in the Bluetooth Assigned Numbers document online.
Figure 2: Bluetooth Low Energy implementation layers [7]
Generic Attribute Profile provides a number of commands for the client to discover information about the server’s primary/ secondary services, characteristics about the services; and descriptors for the different characteristics. It also offers notifications and indications to the client; for a particular characteristic. This avoids the need to poll the server, which would require the servers radio circuitry to be constantly operational.
The compatible Mobile Operating systems include
- iOS 5 and later
- Android 4.3 and later
- Windows 8 and later
- Blackberry 10
- macOS 10.10
- Linux 3.4 and later through BlueZ 5.0
- Windows Phone 8.1
- Unison OS 5.2
Unlike classic Bluetooth which is a FHSS scheme, Bluetooth Low Energy is classified as a system using digital modulation techniques or a direct sequence spread spectrum. Bluetooth Low Energy uses the same (2.400-2.4835 GHz ISM band) radio frequencies as classic Bluetooth which allows dual-mode devices to share a single radio antenna. However, it has 40 2-MHz channels instead of 79 1MHz channels. Bluetooth Low Energy uses Gaussian frequency shift modulation similar to classic Bluetooth’s Basic Rate Scheme. The bit rate is 1 Mbit/s in Bluetooth 4.x and 2 Mbit/s in Bluetooth 5. The maximum transmit power is 10 mW in in Bluetooth 4.x and 100 mW in Bluetooth 5. Bluetooth Low Energy uses frequency hopping like classic Bluetooth to counteract narrowband interference problems.
Bluetooth Low Energy devices are detected through a procedure based on broadcasting advertising packets using three separate channels in order to reduce interference. The advertising device sends a packet on at least one of these three channels, with a repetition period called the advertising interval. For reducing the chance of multiple consecutive collisions, a random delay of up to 10 milliseconds is added to each advertising interval. The scanner listens to the channel for a duration called the scan window, which is periodically repeated every scan interval.
Figure 3: Link Layer Single Packet Format [3]
Applications of BLE
Bluetooth Low Energy has novel applications in healthcare, fitness, beacons, sensor networks, security and home entertainment industries.
Bluetooth Low energy is designed to enable devices with low power consumption. Several chipmakers including Cambridge Silicon Radio, Dialog Semiconductor, Nordic Semiconductor, STMicroelectronics, Cypress Semiconductor, Silicon Labs and Texas Instruments have introduced their Bluetooth Low Energy optimized chipsets. Devices with peripheral and central roles have different power requirements. The power efficiency of Bluetooth Low Energy peripherals allows them to function for 1-2 years with a 1000mAh coin cell battery. In contrast, a continuous scan can consume 1000mAh in a few hours. With the newer chipsets and advances in software, both Android and iOS phones now have negligible power consumption in real-life Bluetooth Low Energy use scenarios.
- Mesh Profiles: In Bluetooth mesh networking, each device can pass the information forward too other Bluetooth Low energy devices creating a mesh effect. The Bluetooth mesh profile is based on the General Access profile.
- Health care profiles: Dedicated profiles exist for Health care including blood pressure measurement profile, temperature measurement profile, blood glucose monitor profile etc.
- Sports and fitness profiles: Body Composition Service, Cycling speed, Heart rate profile, Location and navigation profile etc.
- Internet connectivity profiles: Internet protocol support.
- Generic Sensors Profile: Environmental Sensing, User Data Service etc.
- HID Connectivity profile: profiles for Bluetooth Low Energy enabled wireless mice, keyboards and other devices
- Proximity sensing profiles: Geolocation, proximity sensor detection etc.
- Alerts and time profiles: Phone alert status, incoming call alerts, time zone information etc.
- Battery service profile: Battery state and battery level notifications etc.
Figure 4: Bluetooth Low Energy Applications [5]
Advantages of BLE
- Ultra Low peak, average and idle mode power requirements: The power efficiency of Bluetooth Low Energy functionality makes it perfect for devices that run for long periods on coin cell batteries or energy-harvesting devices.
- Small size and Low cost: Standardized application development architecture eases development and deployment. Hence innovative wireless devices can be quickly developed and deployed with the Bluetooth high speed technology. Bluetooth Developer Studio is the most prominent tool that both mobile and firmware developers can use to design and debug their Bluetooth Low Energy applications. It is free to use, allow design of Generic Attribute profile services and characteristics, provides automatic source code generation via free vendor plugins; and allows physical device testing using a Bluetooth dongle. Client Emulator Application is very useful for testing out new changes before or during deployment. It allows scanning for nearby advertising Bluetooth Low Energy devices, connecting to one of these devices, discovering their characteristics and read/write to the characteristic values as well. The Bluetooth Sniffers can spy on the communication between the central and peripheral devices. They can also help tremendously in debugging problems with the connection and data transfer.
- Data Length Extensions: The packet size can handle a larger amount of payload, up to 251 B instead of 27 B.
- Compatibility with a large installed base of platforms: Native support for Bluetooth Low Energy technology on every major operating system enables development for billions of connected devices, from home appliances and security system to IoT devices.
- Security: Allows for government-grade security with 128-bit AES data encryption.
- Wide Range: Provides coverage of very large areas.
Figure 5: HM 10 Bluetooth BLE 4.0 [6]
Disadvantages of Bluetooth Low Energy
- Bluetooth 5 “2x” speed feature requires a hardware update so the older devices/chips/modules does not support it.
- In order to achieve the higher throughput, Bluetooth Low Energy devices communicating with each other need to support the new LE 2M PHY.
- The theoretical 2 Mbps throughput cannot be achieved because of the limit on the number of packets per connection interval, inter frame space delay, transmission of empty packets and packet overhead.
- It is not possible to use Bluetooth BR/EDR to communicate with Bluetooth Low Energy device or vice versa.
For practical examples on BLE, you can refer to the following ESP32 BLE tutorial:
References
[1] https://en.wikipedia.org/wiki/Bluetooth_Low_Energy
[2] https://www.bluetooth.com/blog/an-intro-to-bluetooth-mesh-part1/
[3] https://www.bluetooth.com/blog/bluetooth-low-energy-it-starts-with-advertising/
[4] https://www.bluetooth.com/blog/five-essential-tools-for-every-bluetooth-low-energy-developer/
[5] https://s3.amazonaws.com/poly-screenshots.angel.co/enhanced_screenshots/785651-original.png
[6] http://www.alselectro.com/images/Image-2_hldg6x80.jpg
[7] https://atadiat.com/wp-content/uploads/2018/09/Host-Control-HCI.png
[8] https://raw.githubusercontent.com/bluetoother/documents/master/ble-shepherd/ble_network.png