BLE Protocol Stack | BLE System Architecture
This page describes BLE Protocol Stack or system architecture. The functions of BLE (Bluetooth Low Energy) system architecture protocol layers are also described.
BLE (Bluetooth Low Energy) is wireless PAN technology designed and maintained by Bluetooth Special Interest Group (SIG). There are various versions of bluetooth. The version 4.2 and above is referred as BLE. The latest in the series are v5.0 and v5.1. BLE specifications are intended to reduce power consumption and cost of devices while maintaining coverage range. BLE is known as "Bluetooth Smart" where as previous version is known as "bluetooth classic".
• BLE is not backward compatible with BR/EDR protocols.
• BLE uses 2.4 GHz ISM frequency band either in dual mode or single mode. Dual mode supports both bluetooth classic and low energy peripherals.
• All BLE devices use the GATT profile (Generic Attribute Profile). The GATT protocol provides series of commands for the client to discover information about BLE server.
• The BLE protocol stack architecture consists of two parts viz. controller and host. Both are interfaced using HCI (Host to Controller Interface).
• Any profiles and applications run on top of GAP & GATT protocol layers.
BLE Protocol Stack | BLE System Architecture
The figure-2 depicts BLE system architecture. Let us understand functions of different layers of this
BLE protocol stack.
• Physical Layer :
• The transmitter uses GFSK modulation and operates at unlicensed 2.4 GHz frequency band.
• Using this PHY layer, BLE offers data rates of 1 Mbps (Bluetooth v4.2)/2 Mbps (Bluetooth v5.0).
• It uses frequency hopping transceiver.
• Two modulation schemes are specified to deliver 1 Msym/s and 2 Msym/s.
• Two PHY layer variants are specified viz. uncoded and coded.
• A Time Division Duplex (TDD) topology is employed in both of the PHY modes.
• Link Layer : This layer sits above the Physical layer. It is responsible for advertising, scanning, and creating/maintaining connections. The role of BLE devices changes in peer to peer (i.e. Unicast) or broadcast modes. The common roles are Advertiser/Scanner (Initiator), Slave/Master or Broadcaster/Observer. Link layer states are defined in the figure below.
The figure-1 depicts BLE device states >>. The device will be in any one of these states which include Standby state, Advertising state, Scanning state, Initiating state, Connection State and Synchronization state.
• HCI : It provides communication between controller and host through standard interface types. This HCI layer can be implemented either using API or by interfaces such as UART/SPI/USB. Standard HCI commands and events are defined in the bluetooth specifications.
• L2CAP :This layer offers data encapsulation services to upper layers. This allows logical end to end data communication.
• SMP :This security Manager layer provides methods for device pairing and key distributions. It offers services to other protocol stack layers in order to securely connect and exchange data between BLE devices.
• GAP : This layer directly interfaces with application layer and/or profiles on it. It handles device discovery and connection related services for BLE device. It also takes care of initiation of security features.
• GATT : This layer is service framework which specifies sub-procedures to use ATT. Data communications between two BLE devices are handled through these sub-procedures. The applications and/or profiles will use GATT directly.
• ATT : This layer allows BLE device to expose certain pieces of data or attributes.
• Application Layer :
• The BLE protocol stack layers interact with applications and profiles as desired. Application interoperability in the Bluetooth system is accomplished by Bluetooth profiles.
• The profile defines the vertical interactions between the layers as well as the peer-to-peer interactions of specific layers between devices.
• A profile composed of one or more services to address particular use case. A service consists of characteristics or references to other services.
• Any profiles/applications run on top of GAP/GATT layers of BLE protocol stack. It handles device discovery and connection related services for the BLE device.
➤BLUETOOTH CORE SPECIFICATION Version 5.1
Previous versions of Bluetooth 5.0 or Bluetooth Low Energy (BLE) Related Links
Also refer bluetooth tutorial covering following sub topics:
Main Page Frequency PHY Layer MAC layer Stack Power classes Security products Bluetooth Vs BLE Bluetooth vs zigbee Bluetooth Vs WiFi vs NFC vs RFID Difference between Bluetooth Versions
What is Difference between
Following are useful difference between terminologies on various wireless standards/technologies.
difference between FDM and OFDM
Difference between SC-FDMA and OFDM
Difference between SISO and MIMO
Difference between TDD and FDD
Difference between 802.11 standards viz.11-a,11-b,11-g and 11-n
OFDM vs OFDMA
CDMA vs GSM