Bluetooth Full Duplex Voice and Data Transmission
This model shows the full duplex communication between two Bluetooth® devices. Both data packets and voice packets can be transmitted between the two devices:
Supported voice packet types: HV1, HV2, HV3 and SCORT
Supported data packet types: DM1
A system parameters block configures the packet type, slot pair, and channel type. Stateflow® is used to implement the acknowledgement scheme for the data packets and the SCORT receiver state machine.
Structure of the Example
A Bluetooth core system consists of an RF transceiver, baseband, and protocol stack. The system offers services that enable the connection of devices and the exchange of a variety of classes of data between these devices. This example is focused on the simulation of a piconet consisting of a master, a slave, and a transmission channel.
This model includes CVSD speech coding, HEC, payload CRC for DM1, FEC, framing, GFSK Modulation, frequency hopping, hop sequence generation, an 802.11b interferer, wave file I/O, BER meters, spectrum, timing, and spectrogram plot.
You can set the system parameters by double-clicking the Model Parameters
block in the top left. You can toggle instrumentation (spectrum, spectrogram, and timing diagram) by double-clicking the switch. The ARQN display for data transmission can be turned on or off.
Transmitter
The transmitter consists of:
The controller block (based on BT spec Part B 7.6 ARQ Scheme)
The payload and FEC block (based on BT spec Part B 7)
The framing block (based on BT spec Part B 6.1 6.4 and 7.3)
The radio block (based on BT spec Part A 3.1 Basic Rate)
Receiver
The receiver consists of:
The radio block (based on BT spec Part A 4.1 Basic Rate)
The deframing block (based on BT spec Part B 7)
The controller block(based on BT spec Part B 7)
Channel
The following subsystems are constructed in the Bluetooth Full Duplex library:
AWGN Channel
AWGN Channel and 80211b interference
None (direct connection)
Blocks Used
This model shows the use of the following blocks:
The
CPM Modulator Baseband
block is used to implement the GFSK (Gaussian frequency shift keying). The Bluetooth radio module uses GFSK, where a binary one is represented by a positive frequency deviation and a binary zero by a negative frequency deviation.The
M-FSK Modulator Baseband
block is used to implement the frequency hopping in Bluetooth Radio. The Bluetooth radio accomplishes spectrum spreading by using 79 frequency hops, each displaced by 1 MHz, starting at 2.402GHz and finishing at 2.480GHz.The
Free Space Path Loss
block, together with theAWGN
block and the 802.11b interference subsystem, shows the construction of a transmission channel.The
General CRC Generator
block is used for transmitted data CRC calculation.The use of the
M-FSK Demodulator
block, theGeneral CRC Syndrome Detector
block, and the implementation of rate 1/3 and rate 2/3 payload FEC are also included.
The model also uses Stateflow charts to implement:
The Transmitter Controller
The Receiver Controller, which decides on the successful reception of a packet by looking at the status of the access code, HEC and CRC
Signals Between the Two Devices
Tx_Raw_Bits1: The master device generates information data randomly, does CRC and FEC payload, and packs them according to the Bluetooth defined format (similarly, Tx_Raw_Bits2 is for the slave device).
Signal_Tx1: The master device takes Tx_Raw_Bits1 and modulates according to the Bluetooth standard. Signal_Tx1 will be transmitted through the channel (similarly, Signal_Tx2 is for the slave device).
Signal_Rx1: The raw received signal after AWGN and interference. Signal_Rx1 is fed to the master device for demodulation and detection (similarly, Signal_Rx2 is for the slave device).
Tx_Info_Bits1: The information data generated by the master with CRC payload but no FEC. Tx_Info_Bits1 is used for SCO BER check on the slave side (similarly, Tx_Info_Bits2 is for the master device).
Diagnostics2: A collection of frame and packet information for the ACL BER check on the master side (similarly, Diagnostics1 is for the slave device).
master_SCO: SCO BER information from the master device for display (similarly, slave_SCO is for the slave device).
master_ACL: ACL BER information from the master device for display (similarly, slave_ACL is for the slave device).
Interference: The interference signal generated from a 802.11b channel.
Results and Displays
The scope display includes:
The timing diagram of the received signal
The received signal spectrum and the spectrogram of the channel
The Master/Slave BER meters calculate:
The data BER
The data throughput
A successful system is decided by:
The ACL(Asynchronous connection-oriented) BER being zero.
The SCO (Synchronous connection-oriented) BER (which includes Raw BER, Residual BER, and FER) being within the specifications.
References
Standards can be found at: https://www.bluetooth.com/
Related Topics
- Bluetooth BR Data and Voice Communication with WLAN Signal Interference (Bluetooth Toolbox)