Bluetooth Low Energy

Bluetooth

Bluetooth is a wireless communication protocol standard developed for personal area networks (PAN). The key features of Bluetooth are its low cost, low energy consumption and robustness. At first, this technology was standardized as IEEE 802.15.1.

This standard specifies wireless medium access control (MAC), physical layer (PHY) specifications for wireless personal area networks (WPANs) and explains methods for communication devices in WPANs. However, Bluetooth is currently maintained by the Bluetooth Special Interest Group (SIG). Bluetooth versions are published in a specification called Bluetooth core specification. These specifications are periodically revised and each revision is another Bluetooth version. Revision 1.0a is the first version of Bluetooth specification published on the public website.

Starting with Revision v1.2, the SIG adopted the Bluetooth core specification. Bluetooth operates in the unlicensed 2.4GHz industrial, scientific and medical radio (ISM) band. This frequency band contains frequencies between 2400MHz and 2483.5MHz.

Bluetooth is a constantly developing technology and each major development is specified as a new version. Bluetooth versions up to v2.0 is called as Bluetooth basic rate (BR) . Bluetooth v2.0 specifies Bluetooth enhanced data ratE (v2.0 + EDR) where a new modulation scheme is added for Bluetooth to increase the bit rate, hence enabling higher data transfer speed.

The Bluetooth technology combining the modulation scheme in BR and EDR is called as Bluetooth BR/EDR, which is also known as Bluetooth classic. Bluetooth v3.0 specifies Bluetooth high speed (v3.0 + HS) enabling much higher data rates compared to Bluetooth classic.


Bluetooth Low Energy:

  • With the emergence of Bluetooth v4.0, a technology called Bluetooth low energy (BLE) became available in addition to Bluetooth classic and Bluetooth high speed which is a Bluetooth technology lowering the power consumption considerably. Several new features were added to make BLE technology to consume lower energy when transitioning from v3.0 + HS to v4.0. These features include changes in several layers in
    which some of them are:

    • Physical Layer ( PHY )
    • Link Layer ( LL )
    • Host Controller Interface ( HCI )
    • Logical Link Control and Adaptation Layer Protocol ( L2CAP )
    • Generic Access Profile (GAP)


    When transitioning from v4.2 to v5.0 on December 2016, the maximum achievable BLE range is increased, which is stated as LE Long Range in the specifications. Additional to LE 1M which is the PHY used in Bluetooth 4, Bluetooth 5 adds two new PHY variants to the PHY specification used in Bluetooth 4 which are LE 2M and LE Coded.

    With the help of LE 2M, the speed of Bluetooth 4 is doubled while LE Coded helped to quadruple the range of Bluetooth 4. New LE 2M PHY allows the PHY to operate at 2M s/s and hence enables higher data rates than LE 1M. At the time of writing, the latest Bluetooth version is v5.2. Bluetooth core specification revisions before and after the SIG adoption with their corresponding revision dates can be found in the tables below:


    Devices supporting BLE are known as Bluetooth smart devices whereas devices supporting both BLE and Bluetooth classic are known as Bluetooth smart ready devices. If a device has Bluetooth v4.0 or higher in their specifications, this does not necessarily mean that this device support Bluetooth classic, BLE and Bluetooth high speed modes together. It just shows that this device supports at least one of these modes of the Bluetooth technology complying with the requirements of the corresponding Bluetooth version.

    BLE is a tempting indoor positioning technology due to its low cost and ubiquity. A BLE receiver can measure a value named RSSI from the BLE signal at the time of receiving which can be used for distance calculations making this technology suitable for indoor positioning.

    Moreover, BLE signals carry some data which could be useful for positioning or to identify the signal source. Hence, we explain the packet format of BLE where we extract these signal data that we use for indoor positioning. The BLE packet format has four main sections:


    1. Preamble: This value is an alternate sequence of zeros and ones. Using these sequences, receiver device synchronize its radio to the right frequency and do some more calculations to make sure the remaining part of the BLE packet is received correctly.
    2. Access Address: This address is used as a correlation code to ensure the transmission is indeed for the receiver which is receiving the packet. This address prevents unrelated BLE devices using the same RF channel simultaneously.
    3. Protocol Data Unit (PDU): This section contains the main information of the BLE packet.
    4. Cyclic Redundancy Check(CRC): It is the 3-byte checksum calculated over the PDU.

    PDUs split into two categories which are advertising channel PDUs and data channel PDUs. Yet, we will focus on the advertising channel PDUs (ACP). Access address value is the same for all ACP. ACP have three types:

    1. Advertising PDUs: These PDUs consist of the advertisement packet. There are different specifications like iBeacon, Eddystone and AltBeacon which try to form a standard for advertisement packet. We will only mention iBeacon and Eddystone.
    2. Scanning PDUs: These PDUs consists of the Scan Response Packet. There is no globally accepted standard for scan response packet. Hence, different beacon manufacturers may send different information in this packet like battery status and beacon name.
    3. Initiating PDUs: Link layer uses these PDUs to initiate a connection to the advertiser (beacon).

    In the PDU payload, there is also BLE MAC address information of the beacon even though this MAC address might have been spoofed. If this MAC address does not change, this address can also be used to identify the beacon. Note that, RSSI value is not in the original BLE packet sent by the beacon, but it is the value sensed by the receiver (sniffer) device.
    We mention two specifications iBeacon and Eddystone for the advertisement packet structure which reside in advertising PDUs.

    iBeacon

    It is the Apple’s software protocol to transmit BLE signals. We use this protocol. Some of the fields used by this protocol are:

    • Major: Two byte data. It has a decimal value between 0 and 65535.
    • Minor: Two byte data. It has a decimal value between 0 and 65535.
    • UUID: Sixteen byte data (Thirty two hexadecimal digits).
    • RSSI at 1 meter: This value is determined after calculating RSSI value at thereceiver device 1 meter (1m) away from the beacon. It is used to predict the distance of the beacon to the receiver device.

    UUID, major and minor fields are used to identify the beacon. So, for instance, we can make two groupings using these three fields by grouping beacons by their UUIDs first and then their major values. After all groupings, using the minor value, we can identify each individual beacon.

    Eddystone


    It is the Google’s open software protocol which is designed to be robust and transparent. Inside an Eddystone frame, different payload types can be included:

    • Eddystone-UID: Sixteen byte data.
    • Eddystone-URL: Data generally used by a service to redirect client (receiver) to the service’s website.
    • Eddystone-TLM: Beacon status data.
    • Eddystone-EID (Ephemeral Identifier): An identifier field varies by time
    which can resolved to reach information shared by a service that sends information to a beacon by a key called ephemeral identity key (EID).


    Leave a Reply

    Your email address will not be published. Required fields are marked *


    Math Captcha
    + 34 = 40