Skip to main content

Bluetooth Core Specification

Part D. Core Configurations

This volume specifies Core Configurations for implementations based on the Bluetooth Core Specification.

1. Introduction

This Part covers Core Configurations and related concepts for implementations based on the Core Specification.

A layer is one of the parts of this specification specified in the tables in Section 2. A Controller layer is any layer listed in Table 2.1 or Table 2.2. A Host layer is any layer listed in Table 2.3 or Table 2.4.

For some purposes in this Part, HCI is treated as if it were two separate layers, one only including the Upper HCI role and the other only including the Lower HCI role.

An implementation contains a complete layer if the implementation includes, for that layer, all mandatory features, all the mandatory elements of any optional feature that is included, and any features that are conditionally required. This also applies to sub-features or elements of a feature. For example, if the layer includes a requirement such as “if feature A is implemented, then feature B shall be implemented”, then any implementation of the layer that includes feature A but not all the elements of feature B is not complete.

An implementation of Bluetooth wireless technology based on the Core Specification shall include one or more complete layers of the Core Specification and may also implement one or more Bluetooth specifications that are external to the Core Specification. Such an implementation shall include all features required by dependencies between any layers included in the implementation.

Each capability of this specification shall be supported in the specified manner. This specification may provide options for design flexibility, because, for example, some products do not implement every portion of the specification. For each implementation option that is supported, it shall be supported as specified.

Using such an implementation to enable Bluetooth wireless technology end-to-end might require further integration before distribution.

2. Core Configurations

A Core Configuration determines the transport and layers that an implementation shall include and any inter-layer dependency requirements that apply, as specified in other Parts of this specification.

Each implementation of a Core Configuration shall include the specific complete layers listed in the sub-section of Section 2 corresponding to that configuration. The implementation may also include other complete layers of the Core Specification and may also implement one or more Bluetooth specifications that are external to the Core Specification. It shall also implement all features required by dependencies between any layers included in the implementation. An implementation that includes all the layers of more than one Core Configuration is deemed to be an implementation of the Core Configuration that has the most layers and not of any other Core Configuration. For example, an implementation that includes all the layers in Table 2.1 and Table 2.2 implements the BR/EDR/LE Core-Controller Configuration and not either the BR/EDR Core-Controller Configuration or the LE Core-Controller Configuration.

Bluetooth wireless technology shall only be enabled end-to-end in an implementation of a Core-Complete Configuration.

2.1. Core-Controller Configuration

An implementation of a Core-Controller Configuration shall include Controller layers of this specification and the Lower HCI role of HCI and shall not include any Host layer (including the Upper HCI role of HCI) of this specification.

An implementation of a Core-Controller Configuration may also include one or more codec specifications implemented in the Controller. For example, an implementation of a Core-Controller Configuration may also support the LC3 codec implemented in the Controller.

An implementation of a Core-Controller Configuration shall not include any other layers external to the Core Specification.

2.1.1. BR/EDR Core-Controller Configuration

An implementation of the BR/EDR Core-Controller Configuration shall include the layers specified in Table 2.1.

Layer

Reference

Layer requirement

HCI

[Vol 4] Part E

Mandatory (Lower HCI role only)

SEC

[Vol 2] Part H

Mandatory

LMP

[Vol 2] Part C

Mandatory

BB

[Vol 2] Part B

Mandatory

RF

[Vol 2] Part A

Mandatory

Table 2.1: BR/EDR Core-Controller Configuration layers


2.1.2. LE Core-Controller Configuration

An implementation of the LE Core-Controller Configuration shall include the layers specified in Table 2.2.

Layer

Reference

Layer requirement

HCI

[Vol 4] Part E

Mandatory (Lower HCI role only)

ISOAL

[Vol 6] Part G

C.2

CS

[Vol 6] Part H

C.3

LESEC

[Vol 6] Part E

C.1

LL

[Vol 6] Part B

Mandatory

RFPHY

[Vol 6] Part A

Mandatory

C.1:

Mandatory if LE Encryption feature (see [Vol 6] Part B, Section 4.6.1) is supported, otherwise excluded.

C.2:

Mandatory if the Link Layer supports any of the following features, otherwise excluded:

C.3:

Optional if LE Channel Sounding feature (see [Vol 6] Part B, Section 4.6.41) is supported, otherwise excluded.

Table 2.2: LE Core-Controller Configuration layers


2.1.3. BR/EDR/LE Core-Controller Configuration

An implementation of the BR/EDR/LE Core-Controller Configuration shall include the layers specified in Table 2.1 and Table 2.2.

2.1.4. [This section is no longer used]
2.1.5. [This section is no longer used]
2.2. Core-Host Configurations

An implementation of a Core-Host Configuration shall include Host layers of the Core Specification and the Upper HCI role of HCI and shall not include any Controller layer (including the Lower HCI role of HCI) of the Core Specification.

An implementation of a Core-Host Configuration may also include one or more Bluetooth specifications that are external to the Core Specification, other than those implemented in the Controller. For example, an implementation of a Core-Host Configuration may also support A2DP, BAS, HOGP, or LC3 implemented in the Host.

2.2.1. BR/EDR Core-Host Configuration

An implementation of the BR/EDR Core-Host Configuration shall include the layers specified in Table 2.3.

Layer

Reference

Layer requirement

GATT

[Vol 3] Part G

C.1

ATT

[Vol 3] Part F

Optional

GAP

[Vol 3] Part C

Mandatory

SDP

[Vol 3] Part B

Mandatory

L2CAP

[Vol 3] Part A

Mandatory

HCI

[Vol 4] Part E

Mandatory (Upper HCI role only)

C.1:

Mandatory if ATT is included, otherwise excluded.

Table 2.3: BR/EDR Core-Host Configuration layers


2.2.2. LE Core-Host Configuration

An implementation of the LE Core-Host Configuration shall include the layers specified in Table 2.4.

Layer

Reference

Layer requirement

GATT

[Vol 3] Part G

C.1

ATT

[Vol 3] Part F

C.1

GAP

[Vol 3] Part C

Mandatory

SM

[Vol 3] Part H

C.1

L2CAP

[Vol 3] Part A

C.1

HCI

[Vol 4] Part E

Mandatory (Upper HCI role only)

C.1:

Mandatory if either the GAP Central role or the GAP Peripheral role is supported, otherwise excluded.

Table 2.4: LE Core-Host Configuration layers


2.2.3. BR/EDR/LE Core-Host Configuration

An implementation of the BR/EDR/LE Core-Host Configuration shall include the layers specified in Table 2.3 and Table 2.4.

2.2.4. [This section is no longer used]
2.2.5. [This section is no longer used]
2.3. Core-Complete Configurations

An implementation of a Core-Complete Configuration may also include one or more Bluetooth specifications that are external to the Core Specification. For example, an implementation of a Core-Complete Configuration may also support A2DP, BAS, HOGP, or LC3.

An implementation of a Core-Complete Configuration may omit either or both roles of the HCI layer as specified in Table 2.1, Table 2.2, Table 2.3, and Table 2.4, except as stated in the next paragraph.

If an implementation of a Core-Complete Configuration is created by combining an implementation of a Core-Host Configuration with an implementation of a compatible Core-Controller Configuration, then the resulting implementation shall use HCI ([Vol 4] Part E) for communication between the Host and the Controller.

2.3.1. BR/EDR Core-Complete Configuration

An implementation of the BR/EDR Core-Complete Configuration shall include the layers specified in Table 2.1 and Table 2.3.

2.3.2. LE Core-Complete Configuration

An implementation of the LE Core-Complete Configuration shall include the layers specified in Table 2.2 and Table 2.4.

2.3.3. BR/EDR/LE Core-Complete Configuration

An implementation of the BR/EDR/LE Core-Complete Configuration shall include the layers specified in Table 2.1, Table 2.2, Table 2.3, and Table 2.4.

2.3.4. [This section is no longer used]
2.3.5. [This section is no longer used]
2.4. Other Core layers

An implementation may include any of the additional layers specified in Table 2.5.

Note: These layers are neither Host nor Controller layers and are not associated with a specific transport or Core Configuration.

Layer

Reference

Layer requirement

HCI-UART

[Vol 4] Part A

Optional

HCI-USB

[Vol 4] Part B

Optional

HCI-SD

[Vol 4] Part C

Optional

HCI-3W

[Vol 4] Part D

Optional

DTM

[Vol 6] Part F

Optional

MWS

[Vol 7] Part A

Optional

WCI-1

[Vol 7] Part B

Optional

WCI-2

[Vol 7] Part C

Optional

Table 2.5: Other Core layers


3. Mixing requirements from different versions

Subject to the requirements of this section, an implementation may mix layers that implement different versions of this specification.

All Controller layers (including Lower HCI) that are included shall implement a single version of this specification (the “Controller Version”).

All Host layers that are included (excluding Upper HCI) shall implement a single version of this specification (the “Host Version”), which may be a different version from the Controller Version.

If an implementation includes Upper HCI, then the version of Upper HCI implemented (the “Upper HCI Version”) shall be the same version or a higher version than the Host Version.

For the purposes of this section, a version of this specification mixed with one or more Core Specification Addenda (see Section 5) is the same as that version of this specification without any Core Specification Addenda.

4. Features and their types

Features in this specification are divided into the types listed in Table 4.1.

Type

Description

Type 1

Controller feature that cannot be configured/enabled by the Host via HCI

Type 2

Controller feature that can be configured/enabled by the Host via HCI

Type 3

Feature that exists in both the Controller and the Host and requires HCI commands/events to function

Type 4

Host feature that does not involve the Controller

Table 4.1: Feature type definitions


The behavior of a feature in an implementation of a Core-Complete Configuration depends on the feature type:

  • A feature of type 1 that is specified in the Controller Version can function irrespective of the Host Version or Upper HCI Version.

  • A feature of type 2 that is specified in the Controller Version can function if the Upper HCI Version is the same or a newer version than the Controller Version. Otherwise, the feature will be restricted to behavior (if any) that does not require the Host to configure/enable it; the available behavior will depend on the feature.

  • A feature of type 3 can only function if it is specified in both the Controller Version and the Host Version.

  • A feature of type 4 that is specified in the Host Version can function irrespective of the Controller Version or Upper HCI Version.

Table 4.2 lists the features added in versions 1.2 and higher of this specification, their types, and the version or addendum where the feature was first introduced.

Feature

Version

Type

Basic AFH operation

1.2

1

Enhanced inquiry

1.2

1

Configuration of AFH (setting channels and enabling/disabling channel assessment)

1.2

2

Enhanced synchronization capability

1.2

2

Interlaced inquiry scan

1.2

2

Interlaced page scan

1.2

2

Broadcast encryption

1.2

2

Enhanced flow specification and flush time-out

1.2

3

Extended SCO links

1.2

3

Inquiry Result with RSSI

1.2

3

L2CAP flow and error control

1.2

4

2 Mb/s EDR

2.0 + EDR

2

3 Mb/s EDR

2.0 + EDR

2

3 slot packets in EDR

2.0 + EDR

2

5 slot packets in EDR

2.0 + EDR

2

2 Mb/s eSCO

2.0 + EDR

2

3 Mb/s eSCO

2.0 + EDR

2

3 slot packets for EDR eSCO

2.0 + EDR

2

Erroneous Data Reporting

2.1 + EDR

3

Extended Inquiry Response

2.1 + EDR

3

Encryption Pause and Resume

2.1 + EDR

1

Link Supervision Timeout Changed Event

2.1 + EDR

3

Non-Flushable Packet Boundary Flag

2.1 + EDR

3

Sniff subrating

2.1+ EDR

3

Secure Simple Pairing

2.1.+ EDR

3

L2CAP Enhanced Retransmission Mode

Addendum 1/

3.0 + HS

4

L2CAP Streaming Mode

Addendum 1/

3.0 + HS

4

Enhanced Power Control

3.0 + HS

1

Generic Test Methodology

3.0 + HS

3

Unicast Connectionless Data

3.0 + HS

4

Low Energy Controller (PHY and LL)

4.0

3

Low Energy Host (L2CAP and Security Manager)

4.0

4

Attribute Protocol and Generic Attribute Profile

4.0

4

Appearance Data Type

Addendum 2

4

MWS Coexistence Signaling

Addendum 3

2

Connectionless Peripheral Broadcast

Addendum 4

3

Unencrypted UCD

Addendum 4

4

BR/EDR Secure Connections

4.1

3

Train Nudging

4.1

2

Generalized Interlaced Scan

4.1

2

Piconet Clock Adjustment

4.1

3

Low Duty Cycle Directed Advertising

4.1

2

32-bit UUID Support in LE

4.1

4

LE Dual Mode Topology

4.1

4

LE L2CAP Connection Oriented Channel Support

4.1

4

LE Privacy v1.1

4.1

4

LE Link Layer Topology

4.1

3

LE Ping

4.1

2

LE Data Packet Length Extension

4.2

2

LE Secure Connections

4.2

4

Link Layer Privacy

4.2

3

Link Layer Extended Filter Policies

4.2

3

Slot Availability Mask

5.0

2

LE 2M PHY

5.0

2

LE Coded PHY

5.0

3

High Duty Cycle Non-Connectable Advertising

5.0

2

LE Advertising Extensions

5.0

3

LE Channel Selection Algorithm #2

5.0

2

LE Higher Output Power

Addendum 5

1

Angle of Arrival/Angle of Departure

5.1

2

GATT Caching

5.1

4

Periodic Advertising Sync Transfer

5.1

3

Control Length Extension

5.1

1

Advertising Channel Index

5.1

1

HCI support for debug keys in LE Secure Connections

5.1

2

Sleep clock accuracy update mechanism

5.1

2

ADI field in scan response data

5.1

1

Interaction between QoS and Flow Specification

5.1

2

Host channel classification for secondary advertising

5.1

2

Allow the SID to appear in scan response reports

5.1

1

LE Isochronous Channels

5.2

3

Enhanced Attribute Protocol

5.2

4

LE Power Control

5.2

2

Periodic Advertising ADI support

5.3

2

Set Min Encryption Key Size command and Encryption Change [v2] event

5.3

2

Connection Subrating

5.3

3

Channel Classification

5.3

2

Advertising Coding Selection

5.4

2

Encrypted Advertising Data

5.4

4

Periodic Advertising with Responses

5.4

3

LE GATT Security Levels Characteristic

5.4

4

Channel Sounding 

6.0

3

Decision-Based Advertising Filtering

6.0

3

ISOAL Unsegmented Framed Mode

6.0

2

Monitoring Advertisers

6.0

3

LE Frame Space Update

6.0

2

LL Extended Feature Set

6.0

2

Table 4.2: Features and their types


5. Core Specification Addenda

A Core Specification Addendum (CSA) contains one or more parts of a single volume, one or more parts in multiple volumes, changes on one or more parts, or a mixture of parts and changes. Addenda are used to supersede a part in a volume or may be used to add a part to a volume according to the rules in Table 5.1.

Note: Each Change may contain changes and/or additions to one or more parts of the specification.

Addendum

Volume and Part or change name

Addition/ Changes/ Replacement

Allowed Versions & Addenda

Mandatory / Optional / Conditional

Type

1

Volume 3, Part A

Replacement

2.0 + EDR,

2.1 + EDR

O

4

2

Audio Architecture HCI changes

Change

2.1 + EDR,

3.0 + HS,

4.0

O

2

Audio Architecture USB changes

Change

2.1 + EDR,

3.0 + HS,

4.0

O

2

LE Limited Discovery Time Changes

Change

4.0

C.1

4

EIR and AD Data Types in GAP changes

Change

4.0

C.1

4

EIR and AD Data Types Specification

Addition

4.0

C.1

4

Volume 5, Part A

Replacement

3.0 + HS,

4.0

O

3

3

LE Errata

Change

4.0 with CSA2

C.2

Multiple

GAP Connection Parameters Changes

Change

4.0 with CSA2

C.1

4

GAP Authentication and Lost Bond Changes

Change

4.0 with CSA2

C.1

4

Common Profile and Services Error Code Range Changes

Change

4.0 with CSA2

C.1

4

Private Addressing Changes

Change

4.0 with CSA2

C.1

4

Dual Mode Addressing Changes

Change

4.0 with CSA2

C.3

4

MWS

Coexistence Logical Signaling Specification

Addition

2.1 + EDR,

3.0 + HS,

4.0 with CSA2

O

2

MWS

Coexistence HCI

Addition

2.1 + EDR,

3.0 + HS,

4.0 with CSA2

C.4

2

Wireless Coexistence Interface 1 (WCI-1) Transport Layer Specification

Addition

2.1 + EDR,

3.0 + HS,

4.0 with CSA2

C.4

2

Wireless Coexistence Interface 2 (WCI-2) Transport Layer Specification

Addition

2.1 + EDR,

3.0 + HS,

4.0 with CSA2

C.4

2

4

Connectionless Peripheral Broadcast

Change

3.0 + HS,

4.0 with

CSA3

O

3

Unencrypted UCD

Change

3.0 + HS,

4.0 with

CSA3

O

4

Fast Advertising Interval

Change

4.0 with

CSA3

C.1

4

eSCO Reserved Slot Clarification

Change

2.1 + EDR,

3.0 + HS,

4.0 with CSA3

O

1

5

Higher Output Power

Change

4.0 with CSA3,

4.0 with CSA4,

4.1, 4.2

O

1

6

The changes made by CSA6 have all been removed from the Core Specification and so CSA6 is withdrawn.

C.1:

Mandatory if either the Host Part of the Low Energy Core Configuration or the Host Part of the Basic Rate and Low Energy Combined Core Configuration is supported, otherwise Excluded.

C.2:

Mandatory if either the Host Part of the Low Energy Core Configuration, Controller Part of the Low Energy Core Configuration, Host Part of the Basic Rate and Low Energy Combined Core Configuration, or Controller Part of the Basic Rate and Low Energy Combined Core Configuration is supported, otherwise Excluded.

C.3:

Mandatory if the Host Part of the Basic Rate and Low Energy Combined Core Configuration is supported, otherwise Excluded.

C.4:

Optional if MWS Coexistence Logical Signaling is supported, otherwise Excluded.

Table 5.1: Adopted specification versions to use with addenda