“Bluetooth-enabled devices can achieve highly reliable communication even in the most complex situations. Bluetooth technology considers reliability in the design of each layer, and uses a variety of technologies to reduce the possibility of interference.
Bluetooth-enabled devices can achieve highly reliable communication even in the most complex situations. Bluetooth technology considers reliability in the design of each layer, and uses a variety of technologies to reduce the possibility of interference.
Recently, Martin Woolley, the developer relations manager of the Bluetooth Special Interest Group (SIG), published a paper discussing the reliability of Bluetooth technology. In an in-depth discussion on the reliability of Bluetooth, Woolley explained that despite the inherent unreliability of radio, Bluetooth technology uses what technology to establish a reliable connection.
The following is the abstract of the paper
Create reliability from an unreliable foundation
Bluetooth technology uses radio, and the radio is not reliable, but Bluetooth communication works very well, so how to explain this obvious contradiction? The answer lies in all aspects of the Bluetooth communication system design, including the use of its radio and its protocol.
Bluetooth technology is a modular system and may have multiple stack configurations.
Figure: Stack configuration that supports Bluetooth mesh
Smartphones and connectable peripherals will include a Bluetooth Low Energy (LE) controller with a host component that supports Generic Access Profile (GAP) and Generic Attribute Profile (GATT), as well as attributes such as ATT ) And the Security Manager Protocol (SMP).
The Bluetooth Mesh network will also include the Bluetooth LE controller, but the host part will include the layers of the Bluetooth Mesh network stack.
Regardless of the stack configuration, each layer has clearly defined responsibilities and methods for passing data to adjacent layers above and below. The features of Bluetooth technology alleviate or reduce the possibility of certain types of potential reliability issues, and these features exist in various parts of the stack. Some of these mechanisms are suitable for all possible uses of Bluetooth technology, and some of them are only suitable for specific situations.
Generally applicable features and mitigation techniques
We will first preview the reliability enhancements of Bluetooth technology that are generally applicable to all situations. The figure shows the Bluetooth air interface grouping.
Example of Bluetooth data packet containing ATT PDU
Bluetooth modulation scheme
The reliability of Bluetooth technology begins with the most fundamental question, involving how to use radio as a digital data carrier. In the Bluetooth stack, these issues are handled in the physical (PHY) layer.
One of the main issues that the physical layer must deal with is the ability to recognize Bluetooth radio transmissions and correctly extract the data encoded as signals. This is the absolute basis for the road to reliability.
Radio is a simulated physical phenomenon. Physicists usually simulate radio signals based on electric waves. Radio waves have electromagnetic energy and have a series of basic characteristics, including amplitude, wavelength, and frequency. The strategy of using the basic properties of waves to encode information in a certain way is called a modulation scheme. There are many modulation schemes, some use changes in signal amplitude; some use varying amplitudes; some use radio phase encoding information; some use frequency changes.
When reliability is an important design goal of a radio communication system, some modulation schemes are better than others. Amplitude-based modulation schemes are susceptible to interference caused by noise to some extent, while frequency-based schemes are less susceptible in this regard.
Basic wave characteristics
Bluetooth technology uses a special binary frequency shift keying modulation scheme called Gaussian Frequency Shift Keying (GFSK). This is a binary modulation scheme because each symbol only represents a bit with a value of zero or one.
Binary frequency shift keying encodes digital data by selecting a center frequency called the carrier, and then shifting it up by a given frequency deviation to represent 1 or shifting it down by the same frequency deviation to represent 0, thereby encoding digital data. The number of allowed licenses is specified in the Bluetooth core specification, depending on the selected symbol rate, which is 1 or 2 megasymbols per second (Msym/s) in Bluetooth LE. For a symbol rate of 1 Msym/s, the specified minimum frequency deviation is 185 kHz, and for faster symbol rates, the specified minimum frequency deviation is 370 kHz. Careful selection of these values can help reliably identify the encoded ones and zeros.
By definition, the frequency shift keying (FSK) modulation scheme involves a frequency change every time the symbol value changes. Sudden changes in frequency can cause noise and interference. In addition, in actual circuits, there is a possibility of spectrum leakage, where the signal will inadvertently overflow to other frequencies, which makes it more difficult to decode it at the receiver.
Bluetooth technology reduces interference by using an advanced FSK modulation scheme. The Gaussian aspect of GFSK modifies the standard FSK method by including a filter that makes frequency conversion smoother, resulting in less noise and narrower spectrum width, thereby reducing interference to other frequencies.
The first LE packet in all Bluetooth is called the preamble. It is 8 bits long and contains alternating patterns of binary ones and zeros. Its purpose is to provide the receiver with information that can be used to find the frequencies used to encode the numbers 1 and 0 in the rest of the packet. The automatic gain control of the radio can also use it to optimize the signal strength. Accurately establishing the frequency used in the signal and setting the radio parameters to the best state is the first step to ensure reliable reception of data packets.
When the Bluetooth controller is listening to the data channel, it will receive all radio signals within the frequency range defined by the channel. The received signal may be:
Bluetooth packets sent to this device
Bluetooth packets not applicable to this device
Data packets related to other wireless communication technologies, which operate in the same ISM frequency band and use the frequency in the Bluetooth radio channel currently being scanned
The Bluetooth controller must be able to distinguish accurate signals and accurately pick out the signals that encode the Bluetooth data packets sent to the device. Everything else must be ignored.
All Bluetooth data packets contain a 32-bit access address, which almost certainly allows Bluetooth signals to be picked up quickly at the earliest opportunity, while other signals are immediately discarded.
There are two types of access addresses. The advertising chain access address is a fixed value of 0x8E89BED6, most of which are used by data packets. This value was chosen because it has a good correlation. Correlation is a mathematical process used to identify specific patterns in a signal.
The data packets exchanged during communication between two connected devices contain an access address, which is assigned by the link layer, and this value uniquely identifies all data packets related to the connection. These generated access address values are largely random, but must comply with other rules, which are designed to improve the reliability of correct identification of access addresses.
Data packets related to different periodic advertising chains and different B-channel broadcast synchronization streams (BIS) all have unique access addresses. The access address allows selection of signals related to the receiving device. The link layer of the Bluetooth protocol stack is responsible for checking the access address.
Due to the 32-bit length of the access address, it is very unlikely that random background electromagnetic noise will be mistaken for Bluetooth signals. In the unlikely event that the pattern of random background noise matches the access address associated with the receiver, further bit stream processing will quickly determine that it is not a valid Bluetooth data packet.
Quickly selecting relevant signals and discarding other signals is another key step in the operation of a Bluetooth receiver, which contributes to reliable communication.
Cyclic Redundancy Check (CRC)
All Bluetooth data packets contain a Cyclic Redundancy Check (CRC) field, which is displayed at or near the end of the data packet. CRC is a commonly used mechanism to detect accidental changes to the transmitted data due to problems such as conflicts.
When the link layer formulates a new data packet, it calculates the CRC value by applying the CRC algorithm to other bits in the data packet. Then add the resulting 24-bit value to the data packet. After receiving the data packet, the link layer in the receiving device will recalculate the CRC and compare the result with the CRC value contained in the received data packet. If the two values are not the same, it is concluded that one or more bits in the transmitted packet have been changed and the packet is discarded.
It should be noted that CRC is not a safety mechanism, because the data packet can be changed deliberately and it is easy to recalculate the CRC.
Figure Encrypted Bluetooth LE data packet with MIC field
Message Integrity Code (MIC)
Bluetooth LE data packets need to be encrypted. All encrypted data packets contain a field called message integrity check (MIC). In fact, MIC is a message verification code, but because the acronym MAC has other uses in the communication field, MIC is used in the Bluetooth specification.
MIC itself is not a reliability function. This is a security feature whose purpose is to be able to detect intentional attempts to tamper with the contents of a data packet. However, since part of our informal definition of reliability is that the transmitted data should be the received data, and we acknowledge that the change may be unintentional or intentional, it is included here for completeness. Inside.
After all, insecure communication cannot be considered reliable.
Bluetooth technology uses the 2.4GHz ISM radio frequency band. 2.4 GHz ISM does not define a single frequency, but a frequency range. In this case, the frequency range starts at 2400 MHz and ends at 2483.5 MHz. When used with Bluetooth LE, this frequency range is divided into 40 channels, each 2 MHz wide. Bluetooth BR/EDR divides it into 80 channels of 1 MHz width.
Starting from channel zero, each channel is numbered. The center frequency of Channel Zero is 2402 MHz, and there is a 1 MHz gap between the lowest frequency that defines Channel Zero and the start of the ISM 2.4 GHz band. The center frequency of channel 39 is 2480 MHz, leaving a gap of 2.5 MHz with the end of the ISM 2.4 GHz band.
The following figure depicts the division of the ISM frequency band into the radio channels used by Bluetooth LE. Please note that the channel number always increases in a continuous order from 0 to 39, and the channel index is assigned to the ISM channel set in a slightly different way.
Figure ISM Bluetooth LE channel in the 2.4 GHz frequency band
Bluetooth data communication uses multiple radio channels, and the use of multiple radio channels makes Bluetooth communication highly reliable in a busy radio environment where collisions and interference may occur.
Using multiple frequencies in this way is called spread spectrum technology, and the details of how to use spread spectrum technology vary in different situations.
Solve coexistence and collocation problems
Many different radio technologies use the same radio frequency band at the same time, which brings potential challenges. One technology may interfere with the transmission of another technology. These problems are collectively referred to as coexistence problems. Bluetooth technology, Wi-Fi, cordless DECT phones and even microwave ovens all operate in the 2.4 GHz ISM band, so there may be coexistence issues between these technologies and device types.
The coexistence problem is mainly solved in Bluetooth through the use of spread spectrum technology. In this case, when two devices are connected in a specific way using spread spectrum technology in Bluetooth, higher reliability can be achieved.
Juxtaposition is a term used to describe the presence of multiple radios in the same device, each of which supports a different communication technology or set of technologies. There is a certain range of interference between different radios in the device. The Long Term Evolution (LTE) radio used in the 4G mobile phone system can operate in a frequency band adjacent to the 2.4 GHz ISM band, which causes potential problems such as preventing one radio from receiving and transmitting while the other radio. Most of the collocation issues are outside the scope of the Bluetooth core specification itself, but recommendations are provided to implementers. Mitigation measures include the use of filters to reduce interference between radios and the radio slot scheduling considerations that implementers are advised to adapt.
Radio time slot scheduling is a complex problem related to determining when the radio is available and unavailable. Certain aspects of scheduling fall within the scope of the Bluetooth core specification. Problems related to the juxtaposition of other radio equipment and other considerations and constraints (such as those that may be imposed by the operating system) will not arise. However, a function called Slot Availability Mask (SAM) is defined, which enables two Bluetooth devices to provide each other with information about which time slots are available, and to determine which time each device uses by considering this information Scheduling In order to avoid time slots that may use configuration-related interference, time slots can be optimized.
LE coded PHY
Bluetooth LE provides three different ways to use the radio. These three options are part of the physical layer, each of which is represented by the abbreviation PHY. The three PHYs defined are:
LE 1M C 1 Msym / s symbol rate
LE 2M C 2 Msym / s symbol rate
LE code C has a forward error correction (FEC) symbol rate of 1 Msym/s
The LE coded PHY improves the sensitivity of the receiver, so compared with the LE 1M PHY, the 0.1% BER is not encountered until the distance between the receiver and the transmitter is greater. The LE code is used with the parameter named S set to 2 or 8. When S = 2, LE coding approximately doubles the reliable range of communication. When S = 8, the range is approximately four times.
LE coded PHY can achieve reliable communication over a longer range without increasing the transmission power by including additional data in each data packet, so that a mathematical technique called forward error correction can be used to detect and correct mistake. The increase in range is accompanied by a decrease in the data rate, but S = 2 produces 500 Kb/s, and S = 8 produces 125 Kb/s.
The main purpose of LE coded PHY is to increase the range, but this is achieved by reducing the bit error rate under lower signal strength, so that the communication over a longer range is sufficiently reliable.