Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

Mobile

Bluetooth/Wi-Fi Co-existence


Time Division Multiplexing (TDM)
Time Division Multiplexing (TDM) is one tool used against the front end overload-type interference which cannot be managed by AFH. This approach was originally introduced to protect 802.11b/g transmissions from Bluetooth interference rather than vice versa and works by shutting down all Bluetooth transmissions except those which are high priority when the 802.11b/g radio is active on the ISM band.

This approach, like channel skipping, sacrifices part of the Bluetooth bandwidth but the amount of bandwidth sacrificed is proportionate to the 802.11b/g duty cycle. Therefore, if the 802.11b/g is idle, the link maintenance traffic may lead to a small 2 to 3% bandwidth degradation, which is impossible for a user to detect.

Click here for Figure 2
Figure 2: Time Division Multiplexing (TM).

In order to enhance the effectiveness of TDM, it is necessary to have accurate information regarding the activity of the 802.11b/g radio. One wireless technology company, CSR, uses a WLAN_Active hardware signal to ensure that the b/g signal is protected when the radio becomes active.

However, there are times when degradation of the Bluetooth signal is to be protected from 802.11b/g interference, and so CSR developed BT_Priority, an optional signal which indicates when an important Bluetooth packet is being transmitted or received.

This signal can be used to protect SCO audio using HV3 packets, the most common form of streaming audio to and from a mono headset.

Channel Quality-Driven Data Rate (CQDDR)
Two forms of data packets exist, DH and DM, which use high and medium bandwidth respectively. DH packets can transmit more data within the packets but if a part of the packet is corrupted the entire packet must be retransmitted to recover the data.

The DM packets include forward error correction (FEC) code which takes up a third of the payload: for every 10 bits of data, a 5-bit forward error correction code is added, allowing the correction of up to two bit errors in each 15-bit data/FEC block.

This data packet format may reduce maximum data rate but is more robust than the DH packets which have no error correction included. It allows a receiving device to negotiate with a transmitter to agree which packet format is used according to ambient interference.

For example, if one device believes it is receiving packets with many errors, it tells the transmitter to send the data in DM packets. If the link clears up, it allows the other side to switch back to DH packets. Figure 3 illustrates this communication interchange.

Click here for Figure 3
Figure 3: Channel Quality-Driven Data Rate (CQDDR).

CQDDR remains an optional addition to a Bluetooth link and is not required by any Bluetooth specification.

Therefore, for example, when a CSR's BlueCore-enabled Bluetooth device sends data to a non-CQDDR-enabled device, CSR has developed an algorithm to estimate the performance of the link and to modify the type of data packets sent in accordance with the ratio of acknowledged packets (ACKs) to not-acknowledged packets (NACKs).

However, when receiving information from a non-CQDDR-enabled device, BlueCore cannot implement any such countermeasures if the data packets are corrupted.

Extended Synchronous Connection Oriented Channels (eSCO)
eSCO are error-checking voice channels that allow the retransmission of corrupted voice data. Each packet has a CRC (Cyclic Redundancy Check) so the receiver can check that packets have been received correctly.

Packets which are received with errors or lost altogether are negatively acknowledged. Retransmission windows allow retransmission of unacknowledged packets. eSCO was introduced with v1.2 of the Bluetooth specification.

Version 1.1 SCO used in earlier versions of Bluetooth only used single slot packets. Extended SCO (eSCO), on the other hand, allows the use of 3 slot packets for synchronous voice or data.

This means it is possible to get >100 kbps connection compared with the fixed 64 kbps from version 1.1. This is possible due to link capacity being lost in the case of single slot packets, to gaps between packets while the radio changes frequencies.

Click here for Figure 4
Figure 4: Extended Synchronous Connection Oriented Channels (eSCO).

At each eSCO instant the master transmits an eSCO packet, the slave responds using the normal SCO rules (the slave is allowed to respond even if it doesn't receive the master's packet). Then the differences from SCO become apparent: there is a retransmission window during which unacknowledged packets can be resent until acknowledged. The spacing of the eSCO instant is negotiable.

With version 1.1 SCO there was a choice of 3 different packet spacings all giving the same 64kb/s. With extended SCO, both packet length and intervals can be negotiated in both directions of the link allowing asymmetric traffic.

Although eSCO channels do not actively handle or avoid interference, the retransmission of corrupt data packets ensures that audio quality is less affected by interference from other radio devices than before.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.