An Overview of the Bluetooth Protocol - ECE-180D-WS-2024/Wiki-Knowledge-Base GitHub Wiki

An Overview of the Bluetooth Protocol

Introduction

The technology powering our daily lives is enabled by an ubiquitous communications protocol known as Bluetooth. Although widely deployed, many users are unaware of how Bluetooth works. In this article we will provide an overview of the protocol, explaining how it physically transmits data and showing the logical organization of communicating devices.

Bluetooth [1] utilizes a lower power radio stream to transmit information across several channels in the 2.4 GHz frequency band. Designed to allow direct point-to-point communication between two nodes without an intermediary network, Bluetooth is ideal for quick data transfer over short distances. This characteristic is a driving factor for Bluetooth's killer application, audio transmission. There are two distinct versions of Bluetooth: Bluetooth Classic and Bluetooth Low Energy [2]. Bluetooth Classic is the preferred choice for applications which require continuous data transfers, such as listening to music on wireless headphones. Bluetooth Low Energy on the other hand is ideal for bursty traffic. This makes Bluetooth Low Energy an especially good fit in IoT devices, as it minimizes energy costs while providing the limited communication functionality necessary for such devices. We will focus our discussion on Bluetooth Classic; however, Bluetooth Low Energy shares many of the same data transmission principles.

Figure 1: Overview of Bluetooth Technologies [1]

Logical Organization

Bluetooth Classic organizes nodes in a star topology, which it calls a piconet. A piconet features one primary device and up to seven secondary devices [4]. When piconets share nodes, those piconets form a scatternet [6]. Within a piconet, the primary sets the terms of data transmission. All synchronization is performed by the primary. All data transmissions within a piconet must either originate from or be sent to the primary; secondary to secondary communication is not possible.

Figure 3: Bluetooth Architecture [6]

Like traditional networking, Bluetooth specifies its own protocol stack. The base of Bluetooth Classic’s protocol is the Radio layer. This specifies the exact requirements of the over-the air radio transmission. [6] The Baseband Link and Link Manager layers occupy the next two stack positions. The Baseband Link layer handles link establishment while the Link Manager layer maintains the link [6]. The Host Controller Interface mediates communication between the "lower" stack and the "upper" stack. The "lower" stack is made of the layers concerned with physical implementation. The "upper," or "host," stack provides the logic necessary to interpret data[7]. The lowest level of the host stack, the Logical Link Control and Adaptation Protocol Layer, is the core of the Bluetooth protocol. This layer performs two important functions: segmentation and multiplexing, and packet formation [6]. The remaining host layers define a myriad of data transport possibilities as well as an application layer known as the profile layer [7].

Figure 4: Bluetooth Protocol Stack [7]

Data Transmission

Bluetooth transmits data between endpoints using radio waves. Information can be encoded in radio waves according to one of three methods: amplitude modulation, frequency modulation, or phase modulation. Each of these techniques vary the wave property corresponding to their namesake to represent 1’s and 0’s. Bluetooth uses a version of frequency modulation called Gaussian Frequency Shift Keying (GFSK) [3]. This technique selects a carrier frequency and shifts it up or down by a predetermined frequency offset. A downshift represents a 0 while an upshift represents a 1. The Gaussian aspect refers to a Gaussian filter. The filter smooths frequency transitions in order to reduce the impact of noise.

Figure 2: Frequency Modulation to Represent Digital Data [8]

Bluetooth Classic specifies 79 communication channels within the 2.4 GHz frequency band. Each channel is divided in the frequency domain into lower and higher regions for GFSK data transmission. Channels are also partitioned in the time domain into slots. [4] Packet lengths correspond with time slot length; each time slot spans 625us. Packets can span multiple time slots, but frequencies must be the same through an entire packet. [9]

Once two devices are connected and communicating over Bluetooth, they do not transmit over only one channel. This would be prone to interference from nearby Bluetooth connections attempting to use the same channel. Bluetooth employs Adaptive Frequency Hopping (AFH) to avoid such interference [5]. In AFH, devices use an algorithm to deterministically select a channel from a set of available frequencies. The selected channel is used for the next transmission. This can result in the devices hopping to a new frequency band every time slot. The primary device within a connection will maintain a channel map that monitors the state of each of the 79 channels. The primary device selects its next hop according to how well each channel is functioning. This is the "adaptive" aspect of AFH.

Conclusion

Bluetooth’s method of physical data transmission and its well defined communication protocol combine to enable the point-to-point communication essential to so many technologies. The techniques of GFSK and AFH work together to ensure interference-free data transfer in a modern environment flooded with Bluetooth equipped devices. At the same time, Bluetooth’s protocol stack defines the logical organization of communicating devices, providing a framework to decode transmitted data and manage connection state. As the protocol continues to mature, its foundations remain the same, making comprehension of its basic principles crucial to understanding its evolution.

Sources

[1] https://www.bluetooth.com/learn-about-bluetooth/tech-overview/

[2] https://www.intel.com/content/www/us/en/products/docs/wireless/how-does-bluetooth-work.html

[3] https://www.bluetooth.com/blog/how-bluetooth-technology-creates-reliability-from-unreliable-foundations/#:~:text=Bluetooth%C2%AE%20technology%20uses%20a,of%20either%20zero%20or%20one

[4] https://www.scientificamerican.com/article/experts-how-does-bluetooth-work/

[5] https://www.bluetooth.com/blog/how-bluetooth-technology-uses-adaptive-frequency-hopping-to-overcome-packet-interference/

[6] https://www.geeksforgeeks.org/bluetooth/

[7] https://cyberrunner.medium.com/bluetooth-br-edr-protocol-stack-d4156230f270

[8] https://www.everythingrf.com/community/what-is-gfsk-modulation#:~:text=Gaussian%20Frequency%20Shift%20Keying%20or%20GFSK%20is%20an%20extension%20of,or%20vice%2Dversa%20becomes%20smoother.

[9] https://engweb.eng.wayne.edu/~ad5781/PersonalData/PubPapers/Handout_Jul12_05.pdf