what is Bluetooth Baseband what are bluetooth logical transport

 

 

Bluetooth Baseband Explained
Master/Slave Roles · Physical Channels · Logical Transports (ACL, SCO, eSCO)
📡
Physical Channel
625 µs slots, TDD
🔗
3 Transports
ACL · SCO · eSCO
🎓
Beginner Friendly
Clear diagrams
🔍
Interview Ready
Key concepts

Why This Topic Matters

Hello students welcome to this bluetooth development course in c, here in this chapter i will explain you about what is Bluetooth Baseband what are bluetooth logical transport, When two Bluetooth devices talk to each other — say, your phone and a wireless headset — there is a whole stack of layers working silently underneath. The Baseband Controller sits right at the bottom of this stack and is responsible for the actual radio scheduling, timing, and data delivery.

If you are an embedded engineer building Bluetooth firmware, debugging connection issues, or writing BlueZ-based applications, understanding what happens at the Baseband level saves you hours of confusion. This tutorial walks you through the key building blocks: how devices share roles, how the physical radio time is sliced, how a physical link is set up, and why three different logical transport types exist instead of one.

Keywords covered in this article

Bluetooth Baseband Master Slave Role Switch Physical Channel Bluetooth Physical Link Bluetooth ACL Logical Transport SCO Transport Bluetooth eSCO Transport Wide Band Speech Bluetooth Piconet Scatternet TDD Bluetooth Bluetooth Lower Layers

1. Master and Slave Roles in a Piconet
Piconet Master Role Slave Role Clock Sync

A piconet is the fundamental network unit in Bluetooth Classic. It consists of one Master device and up to seven active Slave devices. Think of it like a small star topology — all satellites (Slaves) communicate only through the central hub (Master).

The Master’s job goes beyond just initiating communication. It acts as the timing reference for the entire piconet. All Slaves synchronise their clocks and their frequency-hopping patterns to match the Master. Without this synchronisation, devices would be transmitting on different frequencies at different times and would never hear each other.


PICONET STRUCTURE
=============================================
      [Slave 1]      [Slave 2]
           \           /
 [Slave 6]--\---------/--[Slave 3]
             \       /
      -------[ MASTER ]--------
             /       \
 [Slave 5]--/---------\--[Slave 4]
           /           \
      (up to 7 active Slaves)

All Slaves sync their clock + hop pattern 
to the Master's reference clock.
=============================================
💡 Quick Fact: The device that initiates the connection is the one that becomes the Master by default. The peer device starts as a Slave.

2. What is a Role Switch?
HCI_Switch_Role Role Switch LE No Role Switch

Roles are not permanent. Once a connection is up, the Slave can request a role swap so that it becomes the Master. This is called a Role Switch. Either the Master or the Slave can trigger this process. The HCI command used is HCI_Switch_Role.

A role switch can happen either during the connection setup phase or any time after the connection is fully established.


ROLE SWITCH SEQUENCE
=============================================
   Device A (Master)      Device B (Slave)
          |                      |
          |   HCI_Switch_Role    |
          |<-----------------------|
          |   (Slave initiates)  |
          |                      |
    [Negotiation & re-sync happen here]
          |                      |
          |                      |
   Device A (Slave)       Device B (Master)
          |                      |
          |  Now B provides clock|
          |   and hop reference  |
=============================================
⚠️ Important for LE engineers: Bluetooth Low Energy (BLE) does not support Role Switch. The device that advertises becomes the Peripheral (equivalent of Slave) and the one that scans and connects becomes the Central (equivalent of Master). These roles are fixed for the lifetime of the connection. This design keeps the LE stack simpler.

3. Bluetooth Data Transport Architecture
Layered Architecture L2CAP Physical to Logical

Before jumping into individual layers, it helps to see the full picture. The Bluetooth data transport system is built in layers, each sitting on top of the previous one:


BLUETOOTH DATA TRANSPORT ARCHITECTURE
============================================================
+------------------------------------------------------+
|                    L2CAP Channels                    |
|       (User data multiplexed over ACL-U links)       |
+------------------------------------------------------+
                           |
+------------------------------------------------------+
|                    Logical Links                     |
| ACL-C (LMP Control)  |    ACL-U (L2CAP User Data)    |
|                      |    SCO-S (Voice Stream)       |
+------------------------------------------------------+
                           |
+------------------------------------------------------+
|                  Logical Transport                   |
|   ACL (data + control)    |    SCO / eSCO (voice)    |
+------------------------------------------------------+
                           |
+------------------------------------------------------+
|                    Physical Link                     |
|             One per Master-Slave pair                |
+------------------------------------------------------+
                           |
+------------------------------------------------------+
|                   Physical Channel                   |
|   625 µs time slots, pseudo-random frequency hop     |
+------------------------------------------------------+

Suffix: C = Control, U = User, S = Streaming
============================================================

Each layer adds a specific capability. The Physical Channel handles the radio timing. The Physical Link ties two devices together. Logical Transports carry different types of traffic (voice vs data). Logical Links separate control from user data. And finally, L2CAP channels allow multiple upper-layer protocols to share the same connection.

4. Physical Channel — The Radio Layer
625 µs Slots TDD Frequency Hop 4 Channel Types

The Physical Channel is the lowest level of the Bluetooth communication model. It defines how radio time is divided and how devices take turns transmitting so that they never talk over each other.

Time Slots and TDD

Time in a Bluetooth physical channel is divided into fixed-size units called slots, each lasting 625 microseconds. Full-duplex communication (both directions at once) is achieved using Time Division Duplex (TDD) — the Master transmits in even-numbered slots and the Slave responds in odd-numbered slots.


TIME DIVISION DUPLEX (TDD) ON PHYSICAL CHANNEL
============================================================
Slot:      | S0 | S1 | S2 | S3 | S4 | S5 | S6 | S7 |
           |<-->| 625µs

Master TX: |S0 |    |S2 |    |S4 |    |S6 |    |
           |   |    |   |    |   |    |   |    |
Slave TX:  |    |S1 |    |S3 |    |S5 |    |S7 |

Packet types occupy 1, 3, or 5 slots:
1-slot:    |[pkt]|    |[pkt]|
           |     |    |     |
3-slot:    |[------pkt------]|    |[------pkt------]|
           |                 |    |                 |
5-slot:    |[-----------pkt-----------]|

Frequency changes with each new packet (not each slot).
============================================================

The Four Physical Channel Types

Bluetooth defines four distinct physical channels, each used for a specific purpose:

1
Basic Piconet Channel — The main channel used for data exchange between devices that are already connected in a piconet. This is what you use once a connection is established.
2
Adapted Piconet Channel — Same as above but used when Adaptive Frequency Hopping (AFH) is turned on. AFH avoids crowded Wi-Fi frequencies, improving reliability.
3
Inquiry Scan Channel — Used during the discovery phase. A device listens on this channel so that other devices can find and identify it.
4
Page Scan Channel — Used during the connection phase. A device listens on this channel so that another device can page it and establish a connection.
💡 Can a device be on two channels at once?
No — a device can only be on one physical channel at any given moment. But it can rapidly switch between channels using time-division multiplexing. For example, a device already in a piconet can still appear discoverable by quickly switching between its piconet channel and the inquiry scan channel.

TIME-DIVISION MULTIPLEXING OF CHANNELS
============================================================
Timeline:
------[piconet slots]---[inquiry scan]---[piconet slots]---

A device slices its time between channels to support 
multiple operations simultaneously:

- Stay connected (piconet channel)
- Stay discoverable (inquiry scan channel)
============================================================

Once a physical channel is in place, a Physical Link can be formed between two specific devices. Think of it this way: the physical channel is like a road, and the physical link is the vehicle that travels on it between two specific endpoints.

There is always exactly one physical link between any Master-Slave pair, no matter how many logical channels are built on top of it. You cannot have two physical links to the same device at the same time.


PHYSICAL LINK IN A PICONET
============================================================
[Slave A] -----PhyLink-A------ [Master]
[Slave B] -----PhyLink-B------ [Master]
[Slave C] -----PhyLink-C------ [Master]

- Each Master-Slave pair has exactly one Physical Link
- Slaves CANNOT communicate directly with each other
- Direct Slave-to-Slave communication is NOT permitted

If Slave A and Slave C need to talk:
1. Both disconnect from current Master
2. One of them becomes the new Master
3. They form a new piconet between themselves
============================================================

The physical link provides two important services at the hardware level:

  • Link Supervision — a heartbeat-like mechanism that detects when the connection is lost (device moved out of range, powered off, etc.)
  • Encryption — the physical link supports encrypting all packets that flow over it, protecting your data from eavesdroppers.

6. Logical Transports — Why Three Types?
ACL SCO eSCO Packet Switched vs Circuit Switched

A physical link can carry more than one type of traffic. A Logical Transport is built on top of the physical link to handle a specific traffic category. The reason multiple types exist is straightforward: voice and data have very different needs.

Data transmission (file transfers, commands) can tolerate some delay as long as every byte arrives correctly — so retransmissions are acceptable. Voice calls are the opposite: a tiny drop in quality is fine, but a late packet is useless. These two requirements demand different transport mechanisms.


LOGICAL TRANSPORT: WHY THREE TYPES?
============================================================
PHYSICAL LINK (between Master and Slave)
 |
 |------ ACL (Async, packet-switched, retransmits)
 |       Used for: commands, file data, L2CAP
 |
 |------ SCO (Sync, circuit-switched, no retransmit)
 |       Used for: 64 kbps voice (narrow-band)
 |
 |------ eSCO (Enhanced sync, limited retransmit)
         Used for: HD voice (wideband), better QoS

All three can coexist on the same physical link.
============================================================

7. ACL — Asynchronous Connection Oriented Transport
Packet Switched Retransmission Default Transport Broadcast

ACL is the default logical transport in Bluetooth. The moment a device joins a piconet, an ACL transport is automatically created between it and the Master. No special setup is needed.

ACL works like a classic packet-switched network. Data is sent whenever a slot is free and whenever there is something to send. There is no guaranteed slot reservation. If a packet gets corrupted on the air, the receiver asks for a retransmission and the sender resends it — this ensures every byte eventually reaches the other side with full integrity.


ACL TRANSPORT — SLOT USAGE
============================================================
Slots: | S0 | S1 | S2 | S3 | S4 | S5 | S6 | S7 |
         ^              ^
      ACL sends     Retransmit if
      when free     packet lost

Higher layers (L2CAP, SDP, HFP, A2DP...) all share this 
single ACL transport via multiplexing.

                +-------------------+
LMP Control --> |  ACL Logical Link |
L2CAP Data  --> |  (shared channel) |
                +-------------------+
                          |
                   [ACL Transport]
============================================================

Between a given Master-Slave pair there is always only one ACL logical transport. Multiple higher-layer protocols such as L2CAP, SDP, HFP (hands-free profile), and A2DP (audio streaming) all share this same transport. L2CAP handles the multiplexing so that each protocol gets its own logical channel on top.

📚 Naming Trivia: ACL originally stood for Asynchronous Connection Less in Bluetooth specs prior to version 1.2. In version 1.2 and later it was renamed to Asynchronous Connection Oriented, but the abbreviation ACL was kept unchanged for backward compatibility.

When a SCO or eSCO transport is active at the same time, those voice transport slots take priority. The ACL transport gets whatever time remains in between. This ensures voice quality is never impacted by data traffic.

8. SCO — Synchronous Connection Oriented Transport
Circuit Switched 64 kbps Voice No Retransmission Symmetric

SCO is purpose-built for real-time voice streaming. Unlike ACL, which sends data when a slot is available, SCO reserves time slots at the moment the connection is set up and holds them for the lifetime of the transport. This makes it behave like a circuit-switched connection — predictable and constant.

SCO carries 64 kbps of voice data in both directions symmetrically. This matches standard narrow-band telephony quality — the kind you hear on a regular phone call.


SCO TRANSPORT — RESERVED SLOT MODEL
============================================================
Slots: | S0 | S1 | S2 | S3 | S4 | S5 | S6 | S7 |
       |SCO | ACL|SCO | ACL|SCO | ACL|SCO | ACL|
        ^^^       ^^^       ^^^       ^^^
         Reserved for SCO (guaranteed spacing)

- SCO slots are evenly spaced (periodic guarantee)
- ACL traffic fills the gaps
- No retransmission on SCO — late voice = dropped
============================================================

SCO Slot Limits

The spec allows the following simultaneous SCO links:

  • A Master can hold up to three SCO links simultaneously — either all to the same Slave or spread across different Slaves.
  • A Slave can hold up to three SCO links if they all come from the same Master, or up to two SCO links if they originate from two different Masters (scatternet scenario).
🎧 Real-world example — Mono Headset:
When you pair a mono Bluetooth headset with a phone, the phone creates both an ACL transport and a SCO transport to the headset at the same time. ACL carries profile commands (connect, volume up/down, disconnect). SCO carries the actual voice stream. Both coexist on the same physical link.
MONO HEADSET — ACL + SCO COEXISTING ============================================================ [Phone] —–(Physical Link)—–> [Headset] | | [ACL] [SCO] | | HFP commands Voice audio Volume, Hang up 64 kbps ============================================================

9. eSCO — Extended Synchronous Connection Oriented
Added in BT 1.2 Asymmetric Support Limited Retransmit Wideband Speech

eSCO was introduced in Bluetooth Core Specification version 1.2 as a smarter, more capable version of SCO. It addresses two main weaknesses of SCO: there is no recovery from corrupted packets, and it only supports symmetric traffic.

What eSCO Adds Over SCO

1
Asymmetric Traffic Support — SCO always sends the same amount of data in both directions (symmetric). eSCO allows different data rates in each direction. For example, the phone can send a 3-slot packet to the headset while the headset sends back a smaller 1-slot packet.
2
Limited Retransmissions — eSCO allocates extra “retransmission slots” right after the reserved transmission slots. These slots are only used if a packet arrives corrupted. The number of retransmission attempts is carefully capped so that the timing guarantee of voice data is not broken.
3
Higher Data Rates — eSCO introduces new packet types linked to Enhanced Data Rate (EDR), pushing throughput beyond what standard SCO can achieve.
4
Wide Band Speech (WBS) — eSCO is the transport used for HD voice calls. It can carry 16 kHz sampled wideband audio, which is richer and more natural-sounding than the 8 kHz narrow-band SCO audio.

eSCO SLOT STRUCTURE — RETRANSMISSION WINDOW
============================================================
Reserved slots + optional retransmission slots:

| TX | RX | [ReTX?]| [ReRX?]| TX | RX |
  ^------^  ^--------^
    Main      Used ONLY if CRC fails
  reserved    slots (capped count)

TX = Master transmit
RX = Slave transmit (Master receive)
ReTX = Retransmit slot (optional, bounded)

Asymmetric example (3-slot fwd, 1-slot rev):
|[---3-slot TX---| RX |[---3-slot TX---| RX |
============================================================

10. Wide Band Speech (WBS)
16 kHz Sampling 50–7000 Hz Range HD Voice eSCO Transport

Traditional telephone audio is limited to the 200–3400 Hz frequency range. This is called Narrow Band Speech. According to the Nyquist theorem, this band requires a sampling rate of 8 kHz to represent faithfully. While functional, this range cuts off a lot of natural vocal tone — conversations sound flat and slightly muffled.

Human speech actually contains energy all the way up to around 7000 Hz. Wide Band Speech expands the usable range to roughly 50–7000 Hz, which is sampled at 16 kHz. The result is a noticeably fuller, more natural-sounding voice — the kind often marketed as “HD Voice” in modern smartphones and headsets.


NARROW BAND vs WIDE BAND SPEECH
============================================================
Frequency (Hz): 0    200    1000    3400    7000    16000
                |     |       |       |       |       |
                [===Narrow Band===]
                200 Hz to 3400 Hz
                Sampled at 8 kHz
                Classic phone call quality

                [===========Wide Band Speech===========]
                50 Hz to 7000 Hz
                Sampled at 16 kHz
                HD Voice — more natural, richer tone

Bluetooth transport used: eSCO
============================================================
💡 Why 3G/4G systems need WBS in headsets too:
Modern cellular networks support wide-band voice natively. But if the audio path goes through a Bluetooth headset, the headset must also support WBS — otherwise the call audio gets downsampled back to narrow band at the Bluetooth handoff point, cancelling the benefit of the network upgrade. That is why WBS support in Bluetooth headsets became essential with 3G rollout.

11. ACL vs SCO vs eSCO — Side-by-Side
Feature ACL SCO eSCO
Connection type Packet-switched Circuit-switched Circuit-switched
Slot reservation No — uses free slots Yes — reserved at setup Yes — reserved at setup
Retransmission Yes — full No Yes — limited
Traffic type Asymmetric / bursty Symmetric only Symmetric or asymmetric
Typical use Commands, file transfer, L2CAP data 64 kbps voice (narrow band) HD voice, WBS, higher quality audio
L2CAP multiplexing Yes — multiple protocols share it No No
Created automatically? Yes — on piconet join No — explicitly requested No — explicitly requested
Introduced in BT version 1.0 1.0 1.2

12. Summary and Key Takeaways
A piconet has one Master and up to seven Slaves. The Master owns the timing reference for all Slaves.
The device that starts the connection becomes the Master. A Role Switch can swap that, using HCI_Switch_Role. BLE does not support this.
The Physical Channel slices time into 625 µs slots using TDD. Four channel types exist: basic piconet, adapted piconet, inquiry scan, and page scan.
There is exactly one Physical Link per Master-Slave pair. Slaves cannot communicate directly. The physical link handles encryption and supervision.
ACL is the default transport for all data and control traffic. It supports retransmissions and is shared by all upper-layer protocols via L2CAP.
SCO reserves slots for symmetric 64 kbps voice. No retransmissions. Used for traditional narrow-band calls.
eSCO improves on SCO with limited retransmissions, asymmetric support, and higher data rates. It is the transport for Wide Band Speech (HD Voice).
🔜 What’s Next?
In the next part of this series, we will go up the stack and explore Logical Links (ACL-C, ACL-U, SCO-S), then move into L2CAP channels and see how upper-layer Bluetooth profiles ride on top of everything you just learned.

Keep Climbing the Bluetooth Stack 🚀

This article is part of the EmbeddedPathashala Bluetooth Lower Layers series — designed for engineers who want real depth, not just surface-level overviews.

so i hope in this you have learnt what is Bluetooth Baseband what are bluetooth logical transport.

Leave a Reply

Your email address will not be published. Required fields are marked *