logo资料库

蓝牙4.0标准规范.pdf

第1页 / 共2302页
第2页 / 共2302页
第3页 / 共2302页
第4页 / 共2302页
第5页 / 共2302页
第6页 / 共2302页
第7页 / 共2302页
第8页 / 共2302页
资料共2302页,剩余部分请下载后查看
Volume 0 - Master Table of Contents & Compliance Requirements
Part A - Master Table of Contents
The Bluetooth Specification Master Table of Contents
Part B - Bluetooth Compliance Requirements
Contents
1 Introduction
2 Scope
3 Definitions
3.1 Types of Bluetooth Products
4 Core Configurations
4.1 Basic Rate Core Configuration
4.2 Enhanced Data Rate Core Configurations
4.3 High Speed Core Configuration
4.4 Low Energy Core Configuration
4.5 Basic Rate and Low Energy Combined Core Configuration
4.6 Host Controller Interface Core Configuration
Part C - Appendix
Contents
1 Revision History
1.1 [Vol 0] Master TOC & Compliance Requirements
1.1.1 Bluetooth Compliance Requirements
1.2 [Vol 1] Architecture & Terminology Overview
1.3 [Vols 2, 3, & 6] Core System Package
1.4 [Vol 4] Transport Layers
2 Contributors
2.1 [Vol 0] Master TOC & Compliance Requirements
2.1.1 Part B: Bluetooth Compliance Requirements
2.1.2 Vol 0 Part C: Appendix (Rev History and Contributors
2.2 [Vol 1] Architecture &Terminology Overview
2.2.1 Part A: Architectural Overview
2.2.2 Part B: Acronyms & Abbreviations
2.2.3 Part C: Core Specification Change History
2.2.4 Part D: Mixing of Specification Versions
2.3 [Vol 2] Core System Package, Controller
2.3.1 Part A: Radio Specification
2.3.2 Part B: Baseband Specification
2.3.3 Part C: Link Manager Protocol
2.3.4 Part D: Error Codes
2.3.5 Part E: Bluetooth Host Controller Interface Functional Specification
2.3.6 Part F: Message Sequence Charts
2.3.7 Part G: Sample Data
2.3.8 Part H: Security Specification
2.4 [Vol 3] Core System Package, Host
2.4.1 Part A: Logical Link Control and Adaptation Protocol Specification
2.4.2 Part B: Service Discovery Protocol (SDP)
2.4.3 Part C: Generic Access Profile
2.4.4 Part D: Test Support
2.4.5 Part E: AMP Manager Protocol
2.4.6 Part F: Attribute Protocol Specification
2.4.7 Part G: Generic Attribute Protocol Specification
2.4.8 Part H: Security Manager Specification
2.5 [Vol 4] Host Controller Interface [Transport Layer]
2.6 [Vol 5] Core System Package [AMP Controller volume]
2.6.1 Part A: 802.11 PAL
2.7 [Vol 6] Low Energy Specification
2.7.1 Part A: Physical Layer Specification
2.7.2 Part B: Link Layer Specification
2.7.3 Part C: Sample Data
2.7.4 Part D: Message Sequence Charts
2.7.5 Part E: Low Energy Security Specification
2.7.6 Part F: Direct Test Mode
Volume 1 - Architecture & Terminology Overview
Part A - Architecture
Contents
1 General Description
1.1 Overview of BR/EDR Operation
1.2 Overview Of Bluetooth Low Energy Operation
1.3 Overview Of AMP Operation
1.4 Nomenclature
2 Core System Architecture
2.1 Core Architectural Blocks
2.1.1 Host Architectural Blocks
2.1.1.1 Channel Manager
2.1.1.2 L2CAP Resource Manager
2.1.1.3 Security Manager Protocol
2.1.1.4 Attribute Protocol
2.1.1.5 AMP Manager Protocol
2.1.1.6 Generic Attribute Profile
2.1.1.7 Generic Access Profile
2.1.2 BR/EDR/LE Controller Architectural Blocks
2.1.2.1 Device Manager
2.1.2.2 Link Manager
2.1.2.3 Baseband Resource Manager
2.1.2.4 Link Controller
2.1.2.5 PHY
2.1.3 AMP Controller architectural blocks
2.1.3.1 AMP HCI
2.1.3.2 AMP PAL
2.1.3.3 AMP MAC
2.1.3.4 AMP PHY
3 Data Transport Architecture
3.1 Core Traffic Bearers
3.1.1 Framed Data Traffic
3.1.2 Unframed Data Traffic
3.1.3 Reliability of traffic bearers
3.1.3.1 BR/EDR Reliability
3.1.3.2 LE reliability
3.1.3.3 AMP Reliability
3.2 Transport Architecture Entities
3.2.1 BR/EDR Generic Packet Structure
3.2.2 LE Generic Packet Structure
3.3 Physical Channels
3.3.1 BR/EDR Physical Channels
3.3.1.1 Basic Piconet Channel
3.3.1.2 Adapted Piconet Channel
3.3.1.3 Inquiry scan channel
3.3.1.4 Page Scan Channel
3.3.2 LE Physical Channels
3.3.2.1 LE piconet channel
3.3.2.2 Advertisement broadcast channel
3.3.3 AMP physical channel
3.3.3.1 Overview
3.3.3.2 Characteristics
3.3.3.3 Topology
3.3.3.4 Supported Layers
3.4 Physical Links
3.4.1 BR/EDR Links Supported By The Basic And Adapted Piconet Physical Channel
3.4.1.1 Active Physical Link
3.4.1.2 Parked Physical Link
3.4.2 BR/EDR Links Supported by the Scanning Physical Channels
3.4.3 LE Links Supported by the LE Physical Channels
3.4.3.1 Active physical link
3.4.3.2 Advertising physical link
3.4.4 Links Supported by the AMP Physical Channels
3.5 Logical Links and Logical Transports
3.5.1 Casting
3.5.2 Scheduling and Acknowledgement Scheme
3.5.3 Class of Data
3.5.4 Logical Transports
3.5.4.1 BR/EDR Asynchronous Connection-oriented (ACL)
3.5.4.2 BR/EDR Synchronous Connection-Oriented (SCO)
3.5.4.3 BR/EDR Extended Synchronous Connection-Oriented (eSCO)
3.5.4.4 BR/EDR Active Slave Broadcast (ASB)
3.5.4.5 BR/EDR Parked Slave Broadcast (PSB)
3.5.4.6 LE Asynchronous Connection (LE ACL)
3.5.4.7 LE Advertising Broadcast (ADVB)
3.5.5 Logical Links
3.5.5.1 BR/EDR Logical Links
3.5.5.2 LE Logical Links
3.5.5.3 AMP Logical Links
3.6 L2CAP Channels
4 Communication Topology and Operation
4.1 Piconet Topology
4.1.1 BR/EDR Topology
4.1.2 LE Topology
4.2 Operational Procedures and Modes
4.2.1 BR/EDR Procedures
4.2.1.1 Inquiry (Discovering) Procedure
4.2.1.2 Paging (Connecting) Procedure
4.2.1.3 Connected Mode
4.2.1.4 Hold Mode
4.2.1.5 Sniff Mode
4.2.1.6 Parked State
4.2.1.7 Role switch procedure
4.2.1.8 Enhanced Data Rate
4.2.2 LE Procedures
4.2.2.1 Device Filtering Procedure
4.2.2.2 Advertising Procedure
4.2.2.3 Scanning Procedure
4.2.2.4 Discovering Procedure
4.2.2.5 Connecting Procedure
4.2.2.6 Connected Mode
4.2.3 AMP Procedures
4.2.3.1 AMP Discovery Procedures
4.2.3.2 Physical Link Creation Procedure
4.2.3.3 Logical Link Creation Procedure
5 Security Overview
5.1 BR/EDR Secure Simple Pairing
5.1.1 Security Goals
5.1.2 Passive Eavesdropping Protection
5.1.3 Man-In-The-Middle Protection
5.1.4 Association Models
5.1.4.1 Numeric Comparison
5.1.4.2 Just Works
5.1.4.3 Out of Band
5.1.4.4 Passkey Entry
5.1.4.5 Association Model Overview
5.2 LE Security
5.2.1 Association Models
5.2.2 Key Generation
5.2.3 Encryption
5.2.4 Signed Data
5.2.5 Privacy Feature
5.3 AMP Security
6 Bluetooth Application Architecture
6.1 Bluetooth Profiles
6.2 Generic Access Profile
6.3 Profile Hierarchy
6.4 Generic Attribute Profile
6.5 GATT-based Profile Hierarchy
6.5.1 Service
6.5.2 Referenced Services
6.5.3 Characteristic
Part B - Acronyms & Abbreviations
Contents
1 List of Acronyms and Abbreviations
Part C - Core Specification Change History
Contents
1 Deprecated Features
2 Changes from V1.1 to V1.2
2.1 New Features
2.2 Structure Changes
2.3 Deprecated Features list
2.4 Changes in Wording
2.5 Nomenclature Changes
3 Changes from V1.2 to V2.0 + EDR
3.1 New Features
3.2 Deprecated Features
4 Changes from V2.0 + EDR to V2.1 + EDR
4.1 New features
4.2 Deprecated Features
5 Changes From V2.1 + EDR To V3.0 + HS
5.1 New Features
5.2 Deprecated Features
6 Changes From V3.0 + HS To v4.0
6.1 New Features
6.2 Deprecated Features
Part D - Mixing of Specification Versions
Contents
1 Mixing of Specification Versions
1.1 Features and their Types
1.2 Core Specification Addendums
Part E - IEEE Language
Contents
1 Use of IEEE Language
1.1 Shall
1.2 Must
1.3 Will
1.4 Should
1.5 May
1.6 Can
Volume 2 - Core System Package [BR/EDR Controller volume]
Part A - Radio Specification
Contents
1 Scope
2 Frequency Bands and Channel Arrangement
3 Transmitter Characteristics
3.1 Basic Rate
3.1.1 Modulation Characteristics
3.1.2 Spurious Emissions
3.1.2.1 In-band spurious emission
3.1.3 Radio Frequency Tolerance
3.2 Enhanced Data Rate
3.2.1 Modulation Characteristics
3.2.1.1 Modulation Method Overview
3.2.1.2 Differential Phase Encoding
3.2.1.3 Pulse Shaping
3.2.1.4 Modulation Accuracy
3.2.2 Spurious Emissions
3.2.2.1 In-band Spurious Emission
3.2.3 Radio Frequency Tolerance
3.2.4 Relative Transmit Power
4 Receiver Characteristics
4.1 Basic Rate
4.1.1 Actual Sensitivity Level
4.1.2 Interference Performance
4.1.3 Out-of-Band Blocking
4.1.4 Intermodulation Characteristics
4.1.5 Maximum Usable Level
4.1.6 Receiver Signal Strength Indicator
4.1.7 Reference Signal Definition
4.2 Enhanced Data Rate
4.2.1 Actual Sensitivity Level
4.2.2 BER Floor Performance
4.2.3 Interference Performance
4.2.4 Maximum Usable Level
4.2.5 Out-of-Band and Intermodulation Characteristics
4.2.6 Reference Signal Definition
5 Appendix A
5.1 Nominal Test Conditions
5.1.1 Nominal temperature
5.1.2 Nominal power source
5.1.2.1 Mains voltage
5.1.2.2 Lead-acid battery power sources used in vehicles
5.1.2.3 Other power sources
5.2 Extreme Test Conditions
5.2.1 Extreme temperatures
5.2.2 Extreme power source voltages
5.2.2.1 Mains voltage
5.2.2.2 Lead-acid battery power source used on vehicles
5.2.2.3 Power sources using other types of batteries
5.2.2.4 Other power sources
6 Appendix B
7 Appendix C
7.1 Enhanced Data Rate Modulation Accuracy
Part B - Baseband Specification
Contents
1 General Description
1.1 Bluetooth Clock
1.2 Bluetooth Device Addressing
1.2.1 Reserved Addresses
1.3 Access Codes
2 Physical Channels
2.1 Physical Channel Definition
2.2 Basic Piconet Physical Channel
2.2.1 Master-slave Definition
2.2.2 Hopping Characteristics
2.2.3 Time Slots
2.2.4 Piconet Clocks
2.2.5 Transmit/receive Timing
2.2.5.1 Piconet physical channel timing
2.2.5.2 Piconet physical channel re-synchronization
2.3 Adapted Piconet Physical Channel
2.3.1 Hopping Characteristics
2.4 Page Scan Physical Channel
2.4.1 Clock Estimate for Paging
2.4.2 Hopping Characteristics
2.4.3 Paging Procedure Timing
2.4.4 Page Response Timing
2.5 Inquiry Scan Physical Channel
2.5.1 Clock for Inquiry
2.5.2 Hopping Characteristics
2.5.3 Inquiry Procedure Timing
2.5.4 Inquiry Response Timing
2.6 Hop Selection
2.6.1 General Selection Scheme
2.6.2 Selection Kernel
2.6.2.1 First addition operation
2.6.2.2 XOR operation
2.6.2.3 Permutation operation
2.6.2.4 Second addition operation
2.6.2.5 Register bank
2.6.3 Adapted Hop Selection Kernel
2.6.3.1 Channel re-mapping function
2.6.4 Control Word
2.6.4.1 Page scan and inquiry scan hopping sequences
2.6.4.2 Page hopping sequence
2.6.4.3 Slave page response hopping sequence
2.6.4.4 Master page response hopping sequence
2.6.4.5 Inquiry hopping sequence
2.6.4.6 Inquiry response hopping sequence
2.6.4.7 Basic and adapted channel hopping sequence
3 Physical Links
3.1 Link Supervision
4 Logical Transports
4.1 General
4.2 Logical Transport Address (LT_ADDR)
4.3 Synchronous Logical Transports
4.4 Asynchronous Logical Transport
4.5 Transmit/Receive Routines
4.5.1 TX Routine
4.5.1.1 ACL traffic
4.5.1.2 SCO traffic
4.5.1.3 Mixed data/voice traffic
4.5.1.4 eSCO Traffic
4.5.1.5 Default packet types
4.5.2 RX Routine
4.5.3 Flow Control
4.5.3.1 Destination control
4.5.3.2 Source control
4.6 Active Slave Broadcast Transport
4.7 Parked Slave Broadcast Transport
4.7.1 Parked Member Address (PM_ADDR)
4.7.2 Access Request Address (AR_ADDR)
5 Logical Links
5.1 Link Control Logical Link (LC)
5.2 ACL Control Logical Link (ACL-C)
5.3 User Asynchronous/Isochronous Logical Link (ACL-U)
5.3.1 Pausing the ACL-U logical link
5.4 User Synchronous Data Logical Link (SCO-S)
5.5 User Extended Synchronous Data Logical Link (eSCO-S)
5.6 Logical Link Priorities
6 Packets
6.1 General Format
6.1.1 Basic Rate
6.1.2 Enhanced Data Rate
6.2 Bit Ordering
6.3 Access Code
6.3.1 Access Code Types
6.3.2 Preamble
6.3.3 Sync Word
6.3.3.1 Synchronization word definition
6.3.3.2 Pseudo-random noise sequence generation
6.3.4 Trailer
6.4 Packet Header
6.4.1 LT_ADDR
6.4.2 TYPE
6.4.3 FLOW
6.4.4 ARQN
6.4.5 SEQN
6.4.6 HEC
6.5 Packet Types
6.5.1 Common Packet Types
6.5.1.1 ID Packet
6.5.1.2 NULL Packet
6.5.1.3 POLL Packet
6.5.1.4 FHS Packet
6.5.1.5 DM1 Packet
6.5.2 SCO Packets
6.5.2.1 HV1 Packet
6.5.2.2 HV2 Packet
6.5.2.3 HV3 Packet
6.5.2.4 DV Packet
6.5.3 eSCO Packets
6.5.3.1 EV3 Packet
6.5.3.2 EV4 Packet
6.5.3.3 EV5 Packet
6.5.3.4 2-EV3 Packet
6.5.3.5 2-EV5 Packet
6.5.3.6 3-EV3 Packet
6.5.3.7 3-EV5 Packet
6.5.4 ACL Packets
6.5.4.1 DM1 Packet
6.5.4.2 DH1 Packet
6.5.4.3 DM3 Packet
6.5.4.4 DH3 Packet
6.5.4.5 DM5 Packet
6.5.4.6 DH5 Packet
6.5.4.7 AUX1 Packet
6.5.4.8 2-DH1 packet
6.5.4.9 2-DH3 packet
6.5.4.10 2-DH5 packet
6.5.4.11 3-DH1 packet
6.5.4.12 3-DH3 packet
6.5.4.13 3-DH5 packet
6.6 Payload Format
6.6.1 Synchronous Data Field
6.6.2 Asynchronous Data Field
6.7 Packet Summary
7 Bitstream Processing
7.1 Error Checking
7.1.1 HEC Generation
7.1.2 CRC Generation
7.2 Data Whitening
7.3 Error Correction
7.4 FEC Code: Rate 1/3
7.5 FEC Code: Rate 2/3
7.6 ARQ Scheme
7.6.1 Unnumbered ARQ
7.6.2 Retransmit Filtering
7.6.2.1 Initialization of SEQN at start of new connection
7.6.2.2 ACL and SCO retransmit filtering
7.6.2.3 eSCO retransmit filtering
7.6.2.4 FHS retransmit filtering
7.6.2.5 Extended Inquiry Response retransmit filtering
7.6.2.6 Packets without CRC retransmit filtering
7.6.3 Flushing Payloads
7.6.4 Multi-slave Considerations
7.6.5 Broadcast Packets
7.7 Erroneous Synchronous Data Reporting
8 Link Controller Operation
8.1 Overview of States
8.2 Standby State
8.3 Connection Establishment Substates
8.3.1 Page Scan Substate
8.3.2 Page substate
8.3.3 Page Response Substates
8.3.3.1 Slave response substate
8.3.3.2 Master response substate
8.4 Device Discovery Substates
8.4.1 Inquiry scan substate
8.4.2 Inquiry Substate
8.4.3 Inquiry Response Substate
8.5 Connection State
8.6 Active Mode
8.6.1 Polling in the Active Mode
8.6.2 SCO
8.6.3 eSCO
8.6.4 Broadcast Scheme
8.6.5 Role Switch
8.6.6 Scatternet
8.6.6.1 Inter-piconet communications
8.6.7 Hop Sequence Switching
8.6.8 Channel Classification and Channel Map Selection
8.6.9 Power Management
8.6.9.1 Packet handling
8.6.9.2 Slot occupancy
8.6.9.3 Recommendations for low-power operation
8.6.9.4 Enhanced Data Rate
8.7 Sniff Mode
8.7.1 Sniff Transition Mode
8.7.2 Sniff Subrating
8.7.2.1 Sniff Mode Timeout
8.7.2.2 Sniff Subrating Mode
8.8 Hold Mode
8.9 Park State
8.9.1 Beacon Train
8.9.2 Beacon Access Window
8.9.3 Parked Slave Synchronization
8.9.4 Parking
8.9.5 Master-initiated Unparking
8.9.6 Slave-initiated Unparking
8.9.7 Broadcast Scan Window
8.9.8 Polling in the Park State
9 Audio
9.1 LOG PCM CODEC
9.2 CVSD CODEC
9.3 Error Handling
9.4 General Audio Requirements
9.4.1 Signal Levels
9.4.2 CVSD Audio Quality
10 List of Figures
11 List of Tables
Appendix A: General Audio Recommendations
Appendix B: Timers
Appendix C: Recommendations for AFH Operation in Park, Hold, and Sniff
Part C - Link Manager Protocol Specification
Contents
1 Introduction
2 General Rules
2.1 Message Transport
2.2 Synchronization
2.3 Packet Format
2.4 Transactions
2.4.1 LMP Response Timeout
2.5 Error Handling
2.5.1 Transaction Collision Resolution
2.6 Procedure Rules
2.7 General Response Messages
2.8 LMP Message Constraints
3 Device Features
3.1 General Description
3.2 Feature Definitions
3.3 Feature Mask Definition
3.4 Link Manager Interoperability policy
4 Procedure Rules
4.1 Connection Control
4.1.1 Connection Establishment
4.1.2 Detach
4.1.3 Power Control
4.1.3.1 Enhanced Power Control
4.1.4 Adaptive Frequency Hopping
4.1.4.1 Master enables AFH
4.1.4.2 Master Disables AFH
4.1.4.3 Master updates AFH
4.1.4.4 AFH operation in Park, Hold, and Sniff modes
4.1.5 Channel Classification
4.1.5.1 Channel classification reporting enabling and disabling
4.1.6 Link Supervision
4.1.7 Channel Quality Driven Data Rate Change (CQDDR)
4.1.8 Quality of Service (QoS)
4.1.8.1 Master Notifies Slave of the Quality of Service
4.1.8.2 Device requests new quality of service
4.1.9 Paging Scheme Parameters
4.1.9.1 Page Mode
4.1.9.2 Page Scan Mode
4.1.10 Control of Multi-slot Packets
4.1.11 Enhanced Data Rate
4.1.12 Encapsulated LMP PDUs
4.1.12.1 Sending an Encapsulated PDU
4.2 Security
4.2.1 Authentication
4.2.1.1 Claimant has Link Key
4.2.1.2 Claimant has no Link Key
4.2.1.3 Repeated Attempts
4.2.2 Pairing
4.2.2.1 Responder Accepts Pairing
4.2.2.2 Responder has a Fixed PIN
4.2.2.3 Responder Rejects Pairing
4.2.2.4 Creation of the Link Key
4.2.2.5 Repeated Attempts
4.2.3 Change Link Key
4.2.4 Change Current Link Key Type
4.2.4.1 Change to a Temporary Link Key
4.2.4.2 Semi-permanent Link Key Becomes Current Link Key
4.2.5 Encryption
4.2.5.1 Encryption Mode
4.2.5.2 Encryption Key Size
4.2.5.3 Start Encryption
4.2.5.4 Stop Encryption
4.2.5.5 Pause Encryption
4.2.5.6 Resume Encryption
4.2.5.7 Change Encryption Mode, Key or Random Number
4.2.5.8 Encryption Key Refresh
4.2.6 Request Supported Encryption Key Size
4.2.7 Secure Simple Pairing
4.2.7.1 IO Capability Exchange
4.2.7.2 Public Key Exchange
4.2.7.3 Authentication Stage 1
4.2.7.4 Authentication stage 2: DHKey Check
4.3 Informational Requests
4.3.1 Timing Accuracy
4.3.2 Clock Offset
4.3.3 LMP version
4.3.4 Supported Features
4.3.5 Name Request
4.4 Role Switch
4.4.1 Slot Offset
4.4.2 Role Switch
4.5 Modes of Operation
4.5.1 Hold Mode
4.5.1.1 Master Forces Hold Mode
4.5.1.2 Slave Forces Hold Mode
4.5.1.3 Master or Slave requests Hold Mode
4.5.2 Park State
4.5.2.1 Master requests slave to enter park state
4.5.2.2 Slave requests to enter Park State
4.5.2.3 Master sets up Broadcast Scan Window
4.5.2.4 Master Modifies Beacon Parameters
4.5.2.5 Unparking Slaves
4.5.3 Sniff Mode
4.5.3.1 Master or Slave requests Sniff Mode
4.5.3.2 Moving a Slave From Sniff Mode to Active Mode
4.5.3.3 Sniff Subrating
4.6 Logical Transports
4.6.1 SCO Logical Transport
4.6.1.1 Master Initiates an SCO Link
4.6.1.2 Slave Initiates an SCO Link
4.6.1.3 Master Requests Change of SCO Parameters
4.6.1.4 Slave Requests Change of SCO Parameters
4.6.1.5 Remove a SCO link
4.6.2 eSCO Logical Transport
4.6.2.1 Master initiates an eSCO link
4.6.2.2 Slave Initiates an eSCO Link
4.6.2.3 Master or slave requests change of eSCO parameters
4.6.2.4 Remove an eSCO Link
4.6.2.5 Rules for the LMP negotiation and renegotiation
4.6.2.6 Negotiation State Definitions
4.7 Test Mode
4.7.1 Activation and Deactivation of Test Mode
4.7.2 Control of Test Mode
4.7.3 Summary of Test Mode PDUs
5 Summary
5.1 PDU Summary
5.2 Parameter Definitions
5.3 LMP Encapsulated
5.4 Default Values
6 List of Figures
7 List of Tables
Part D - Error Codes
Contents
1 Overview of Error Codes
1.1 Usage Descriptions
1.2 HCI Command Errors
1.3 List of Error Codes
2 Error Code Descriptions
2.1 Unknown HCI Command (0X01)
2.2 Unknown Connection Identifier (0X02)
2.3 Hardware Failure (0X03)
2.4 Page Timeout (0X04)
2.5 Authentication Failure (0X05)
2.6 PIN or key Missing (0X06)
2.7 Memory Capacity Exceeded (0X07)
2.8 Connection Timeout (0X08)
2.9 Connection Limit Exceeded (0X09)
2.10 Synchronous Connection Limit to a Device Exceeded (0X0A)
2.11 ACL Connection Already Exists (0X0B)
2.12 Command Disallowed (0X0C)
2.13 Connection Rejected due to Limited Resources (0X0D)
2.14 Connection Rejected due to Security Reasons (0X0E)
2.15 Connection Rejected due to Unacceptable BD_ADDR (0X0F)
2.16 Connection Accept Timeout Exceeded (0X10)
2.17 Unsupported Feature or Parameter Value (0X11)
2.18 Invalid HCI Command Parameters (0X12)
2.19 Remote User Terminated Connection (0X13)
2.20 Remote Device Terminated Connection due to Low Resources (0X14)
2.21 Remote Device Terminated Connection due to Power Off (0X15)
2.22 Connection Terminated by Local Host (0X16)
2.23 Repeated Attempts (0X17)
2.24 Pairing not Allowed (0X18)
2.25 Unknown LMP PDU (0X19)
2.26 Unsupported Remote Feature / Unsupported LMP Feature (0X1A)
2.27 SCO Offset Rejected (0X1B)
2.28 SCO Interval Rejected (0X1C)
2.29 SCO Air Mode Rejected (0X1D)
2.30 Invalid LMP Parameters (0X1E)
2.31 Unspecified Error (0X1F)
2.32 Unsupported LMP Parameter Value (0X20)
2.33 Role Change Not Allowed (0X21)
2.34 LMP Response Timeout / LL Response Timeout (0X22)
2.35 LMP Error Transaction Collision (0X23)
2.36 LMP PDU Not Allowed (0X24)
2.37 Encryption Mode Not Acceptable (0X25)
2.38 Link Key cannot be Changed (0X26)
2.39 Requested QoS Not Supported (0X27)
2.40 Instant Passed (0X28)
2.41 Pairing with Unit Key Not Supported (0X29)
2.42 Different Transaction Collision (0x2A)
2.43 QOS Unacceptable Parameter (0X2C)
2.44 QOS Rejected (0X2D)
2.45 Channel Assessment Not Supported (0X2E)
2.46 Insufficient Security (0X2F)
2.47 Parameter out of Mandatory Range (0X30)
2.48 Role Switch Pending (0X32)
2.49 Reserved Slot Violation (0X34)
2.50 Role Switch Failed (0X35)
2.51 Extended Inquiry Response Too Large (0x36)
2.52 Simple Pairing Not Supported By Host (0X37)
2.53 Host Busy–Pairing(0X38)
2.54 Connection Rejected Due To No Suitable Channel Found (0X39)
2.55 Controller Busy (0X3A)
2.56 Unacceptable Connection Interval (0X3B)
2.57 Directed Advertising Timeout (0X3C)
2.58 Connection Terminated Due To MIC Failure (0X3D)
2.59 Connection Failed To Be Established (0X3E)
2.60 MAC Connection Failed (0x3F)
Part E - Host Controller Interface Functional Specification
Contents
1 Introduction
1.1 Lower Layers of the Bluetooth Software Stack
2 Overview of Host Controller Transport Layer
2.1 Host Controller Transport Layer and AMPS
3 Overview of Commands and Events
3.1 Generic Events
3.2 Device Setup
3.3 Controller Flow Control
3.4 Controller Information
3.5 Controller Configuration
3.6 Device Discovery
3.7 Connection Setup
3.8 Remote Information
3.9 Synchronous Connections
3.10 Connection State
3.11 Piconet Structure
3.12 Quality of Service
3.13 Physical Links
3.14 Host Flow Control
3.15 Link Information
3.16 Authentication and Encryption
3.17 Testing
3.18 Alphabetical List of Commands and Events
3.19 LE Controller Requirements
4 HCI Flow Control
4.1 Host to Controller Data Flow Control
4.1.1 Packet-based Data Flow Control
4.1.2 Data-Block-Based Data Flow Control
4.2 Controller to Host Data Flow Control
4.3 Disconnection Behavior
4.4 Command Flow Control
4.5 Command Error Handling
5 HCI Data Formats
5.1 Introduction
5.2 Data and Parameter Formats
5.3 Handles
5.3.1 Primary Controller Handles
5.3.1.1 Broadcast Connection Handles
5.3.2 AMP Controller Handles
5.4 Exchange of HCI-Specific Information
5.4.1 HCI Command Packet
5.4.2 HCI ACL Data Packets
5.4.3 HCI Synchronous Data Packets
5.4.4 HCI Event Packet
6 HCI Configuration Parameters
6.1 Scan Enable
6.2 Inquiry Scan Interval
6.3 Inquiry Scan Window
6.4 Inquiry Scan Type
6.5 Inquiry Mode
6.6 Page Timeout
6.7 Connection Accept Timeout
6.8 Page Scan Interval
6.9 Page Scan Window
6.10 Page Scan Period Mode (Deprecated)
6.11 Page Scan Type
6.12 Voice Setting
6.13 PIN Type
6.14 Link Key
6.15 Failed Contact Counter
6.16 Authentication Enable
6.17 Hold Mode Activity
6.18 Link Policy Settings
6.19 Flush Timeout
6.20 Num Broadcast Retransmissions
6.21 Link Supervision Timeout
6.22 Synchronous Flow Control Enable
6.23 Local Name
6.24 Extended Inquiry Response
6.25 Erroneous Data Reporting
6.26 Class Of Device
6.27 Supported Commands
6.28 Logical Link Accept Timeout
6.29 Location Domain Aware
6.30 Location Domain
6.31 Location Domain Options
6.32 Location Options
6.33 Flow Control Mode
6.34 LE Supported Host
6.35 Simultaneous LE Host
7 HCI Commands and Events
7.1 Link Control Commands
7.1.1 Inquiry Command
7.1.2 Inquiry Cancel Command
7.1.3 Periodic Inquiry Mode Command
7.1.4 Exit Periodic Inquiry Mode Command
7.1.5 Create Connection Command
7.1.6 Disconnect Command
7.1.7 Create Connection Cancel Command
7.1.8 Accept Connection Request Command
7.1.9 Reject Connection Request Command
7.1.10 Link Key Request Reply Command
7.1.11 Link Key Request Negative Reply Command
7.1.12 PIN Code Request Reply Command
7.1.13 PIN Code Request Negative Reply Command
7.1.14 Change Connection Packet Type Command
7.1.15 Authentication Requested Command
7.1.16 Set Connection Encryption Command
7.1.17 Change Connection Link Key Command
7.1.18 Master Link Key Command
7.1.19 Remote Name Request Command
7.1.20 Remote Name Request Cancel Command
7.1.21 Read Remote Supported Features Command
7.1.22 Read Remote Extended Features Command
7.1.23 Read Remote Version Information Command
7.1.24 Read Clock Offset Command
7.1.25 Read LMP Handle Command
7.1.26 Setup Synchronous Connection Command
7.1.27 Accept Synchronous Connection Request Command
7.1.28 Reject Synchronous Connection Request Command
7.1.29 IO Capability Request Reply Command
7.1.30 User Confirmation Request Reply Command
7.1.31 User Confirmation Request Negative Reply Command
7.1.32 User Passkey Request Reply Command
7.1.33 User Passkey Request Negative Reply Command
7.1.34 Remote OOB Data Request Reply Command
7.1.35 Remote OOB Data Request Negative Reply Command
7.1.36 IO Capability Request Negative Reply Command
7.1.37 Create Physical Link Command
7.1.38 Accept Physical Link Command
7.1.39 Disconnect Physical Link Command
7.1.40 Create Logical Link Command
7.1.41 Accept Logical Link Command
7.1.42 Disconnect Logical Link Command
7.1.43 Logical Link Cancel Command
7.1.44 Flow Spec Modify Command
7.2 Link Policy Commands
7.2.1 Hold Mode Command
7.2.2 Sniff Mode Command
7.2.3 Exit Sniff Mode Command
7.2.4 Park State Command
7.2.5 Exit Park State Command
7.2.6 QoS Setup Command
7.2.7 Role Discovery Command
7.2.8 Switch Role Command
7.2.9 Read Link Policy Settings Command
7.2.10 Write Link Policy Settings Command
7.2.11 Read Default Link Policy Settings Command
7.2.12 Write Default Link Policy Settings Command
7.2.13 Flow Specification Command
7.2.14 Sniff Subrating Command
7.3 Controller & Baseband Commands
7.3.1 Set Event Mask Command
7.3.2 Reset Command
7.3.3 Set Event Filter Command
7.3.4 Flush Command
7.3.5 Read PIN Type Command
7.3.6 Write PIN Type Command
7.3.7 Create New Unit Key Command
7.3.8 Read Stored Link Key Command
7.3.9 Write Stored Link Key Command
7.3.10 Delete Stored Link Key Command
7.3.11 Write Local Name Command
7.3.12 Read Local Name Command
7.3.13 Read Connection Accept Timeout Command
7.3.14 Write Connection Accept Timeout Command
7.3.15 Read Page Timeout Command
7.3.16 Write Page Timeout Command
7.3.17 Read Scan Enable Command
7.3.18 Write Scan Enable Command
7.3.19 Read Page Scan Activity Command
7.3.20 Write Page Scan Activity Command
7.3.21 Read Inquiry Scan Activity Command
7.3.22 Write Inquiry Scan Activity Command
7.3.23 Read Authentication Enable Command
7.3.24 Write Authentication Enable Command
7.3.25 Read Class of Device Command
7.3.26 Write Class of Device Command
7.3.27 Read Voice Setting Command
7.3.28 Write Voice Setting Command
7.3.29 Read Automatic Flush Timeout Command
7.3.30 Write Automatic Flush Timeout Command
7.3.31 Read Num Broadcast Retransmissions Command
7.3.32 Write Num Broadcast Retransmissions Command
7.3.33 Read Hold Mode Activity Command
7.3.34 Write Hold Mode Activity Command
7.3.35 Read Transmit Power Level Command
7.3.36 Read Synchronous Flow Control Enable Command
7.3.37 Write Synchronous Flow Control Enable Command
7.3.38 Set Controller To Host Flow Control Command
7.3.39 Host Buffer Size Command
7.3.40 Host Number Of Completed Packets Command
7.3.41 Read Link Supervision Timeout Command
7.3.42 Write Link Supervision Timeout Command
7.3.43 Read Number Of Supported IAC Command
7.3.44 Read Current IAC LAP Command
7.3.45 Write Current IAC LAP Command
7.3.46 Set AFH Host Channel Classification Command
7.3.47 Read Inquiry Scan Type Command
7.3.48 Write Inquiry Scan Type Command
7.3.49 Read Inquiry Mode Command
7.3.50 Write Inquiry Mode Command
7.3.51 Read Page Scan Type Command
7.3.52 Write Page Scan Type Command
7.3.53 Read AFH Channel Assessment Mode Command
7.3.54 Write AFH Channel Assessment Mode Command
7.3.55 Read Extended Inquiry Response Command
7.3.56 Write Extended Inquiry Response Command
7.3.57 Refresh Encryption Key Command
7.3.58 Read Simple Pairing Mode Command
7.3.59 Write Simple Pairing Mode Command
7.3.60 Read Local OOB Data Command
7.3.61 Read Inquiry Response Transmit Power Level Command
7.3.62 Write Inquiry Transmit Power Level Command
7.3.63 Send Keypress Notification Command
7.3.64 Read Default Erroneous Data Reporting
7.3.65 Write Default Erroneous Data Reporting
7.3.66 Enhanced Flush Command
7.3.67 Read Logical Link Accept Timeout Command
7.3.68 Write Logical Link Accept Timeout Command
7.3.69 Set Event Mask Page 2 Command
7.3.70 Read Location Data Command
7.3.71 Write Location Data Command
7.3.72 Read Flow Control Mode Command
7.3.73 Write Flow Control Mode Command
7.3.74 Read Enhanced Transmit Power Level Command
7.3.75 Read Best Effort Flush Timeout Command
7.3.76 Write Best Effort Flush Timeout Command
7.3.77 Short Range Mode Command
7.3.78 Read LE Host Supported Command
7.3.79 Write LE Host Supported Command
7.4 Informational Parameters
7.4.1 Read Local Version Information Command
7.4.2 Read Local Supported Commands Command
7.4.3 Read Local Supported Features Command
7.4.4 Read Local Extended Features Command
7.4.5 Read Buffer Size Command
7.4.6 Read BD_ADDR Command
7.4.7 Read Data Block Size Command
7.5 Status Parameters
7.5.1 Read Failed Contact Counter Command
7.5.2 Reset Failed Contact Counter Command
7.5.3 Read Link Quality Command
7.5.4 Read RSSI Command
7.5.5 Read AFH Channel Map Command
7.5.6 Read Clock Command
7.5.7 Read Encryption Key Size Command
7.5.8 Read Local AMP Info Command
7.5.9 Read Local AMP ASSOC Command
7.5.10 Write Remote AMP ASSOC Command
7.6 Testing Commands
7.6.1 Read Loopback Mode Command
7.6.2 Write Loopback Mode Command
7.6.3 Enable Device Under Test Mode Command
7.6.4 Write Simple Pairing Debug Mode Command
7.6.5 Enable AMP Receiver Reports Command
7.6.6 AMP Test End Command
7.6.7 AMP Test Command
7.7 Events
7.7.1 Inquiry Complete Event
7.7.2 Inquiry Result Event
7.7.3 Connection Complete Event
7.7.4 Connection Request Event
7.7.5 Disconnection Complete Event
7.7.6 Authentication Complete Event
7.7.7 Remote Name Request Complete Event
7.7.8 Encryption Change Event
7.7.9 Change Connection Link Key Complete Event
7.7.10 Master Link Key Complete Event
7.7.11 Read Remote Supported Features Complete Event
7.7.12 Read Remote Version Information Complete Event
7.7.13 QoS Setup Complete Event
7.7.14 Command Complete Event
7.7.15 Command Status Event
7.7.16 Hardware Error Event
7.7.17 Flush Occurred Event
7.7.18 Role Change Event
7.7.19 Number Of Completed Packets Event
7.7.20 Mode Change Event
7.7.21 Return Link Keys Event
7.7.22 PIN Code Request Event
7.7.23 Link Key Request Event
7.7.24 Link Key Notification Event
7.7.25 Loopback Command Event
7.7.26 Data Buffer Overflow Event
7.7.27 Max Slots Change Event
7.7.28 Read Clock Offset Complete Event
7.7.29 Connection Packet Type Changed Event
7.7.30 QoS Violation Event
7.7.31 Page Scan Repetition Mode Change Event
7.7.32 Flow Specification Complete Event
7.7.33 Inquiry Result with RSSI Event
7.7.34 Read Remote Extended Features Complete Event
7.7.35 Synchronous Connection Complete Event
7.7.36 Synchronous Connection Changed Event
7.7.37 Sniff Subrating Event
7.7.38 Extended Inquiry Result Event
7.7.39 Encryption Key Refresh Complete Event
7.7.40 IO Capability Request Event
7.7.41 IO Capability Response Event
7.7.42 User Confirmation Request Event
7.7.43 User Passkey Request Event
7.7.44 Remote OOB Data Request Event
7.7.45 Simple Pairing Complete Event
7.7.46 Link Supervision Timeout Changed Event
7.7.47 Enhanced Flush Complete Event
7.7.48 User Passkey Notification Event
7.7.49 Keypress Notification Event
7.7.50 Remote Host Supported Features Notification Event
7.7.51 Physical Link Complete Event
7.7.52 Channel Selected Event
7.7.53 Disconnection Physical Link Complete Event
7.7.54 Physical Link Loss Early Warning Event
7.7.55 Physical Link Recovery Event
7.7.56 Logical Link Complete Event
7.7.57 Disconnection Logical Link Complete Event
7.7.58 Flow Spec Modify Complete Event
7.7.59 Number Of Completed Data Blocks Event
7.7.60 Short Range Mode Change Complete Event
7.7.61 AMP Status Change Event
7.7.62 AMP Start Test Event
7.7.63 AMP Test End Event
7.7.64 AMP Receiver Report Event
7.7.65 LE Meta Event
7.7.65.1 LE Connection Complete Event
7.7.65.2 LE Advertising Report Event
7.7.65.3 LE Connection Update Complete Event
7.7.65.4 LE Read Remote Used Features Complete Event
7.7.65.5 LE Long Term Key Request Event
7.8 LE Controller Commands
7.8.1 LE Set Event Mask Command
7.8.2 LE Read Buffer Size Command
7.8.3 LE Read Local Supported Features Command
7.8.4 LE Set Random Address Command
7.8.5 LE Set Advertising Parameters Command
7.8.6 LE Read Advertising Channel Tx Power Command
7.8.7 LE Set Advertising Data Command
7.8.8 LE Set Scan Response Data Command
7.8.9 LE Set Advertise Enable Command
7.8.10 LE Set Scan Parameters Command
7.8.11 LE Set Scan Enable Command
7.8.12 LE Create Connection Command
7.8.13 LE Create Connection Cancel Command
7.8.14 LE Read White List Size Command
7.8.15 LE Clear White List Command
7.8.16 LE Add Device To White List Command
7.8.17 LE Remove Device From White List Command
7.8.18 LE Connection Update Command
7.8.19 LE Set Host Channel Classification Command
7.8.20 LE Read Channel Map Command
7.8.21 LE Read Remote Used Features Command
7.8.22 LE Encrypt Command
7.8.23 LE Rand Command
7.8.24 LE Start Encryption Command
7.8.25 LE Long Term Key Request Reply Command
7.8.26 LE Long Term Key Request Negative Reply Command
7.8.27 LE Read Supported States Command
7.8.28 LE Receiver Test Command
7.8.29 LE Transmitter Test Command
7.8.30 LE Test End Command
8 List of Figures
9 List of Tables
10 Appendix A: Deprecated Commands, Events and Configuration Parameters
10.1 Read Page Scan Mode Command
10.2 Write Page Scan Mode Command
10.3 Read Page Scan Period Mode Command
10.4 Write Page Scan Period Mode Command
10.5 Add SCO Connection Command
10.6 Page Scan Mode Change Event
10.7 Read Country Code Command
10.8 Read Encryption Mode Command
10.9 Write Encryption Mode Command
10.10 Deprecated Parameters
10.10.1 Encryption Mode
10.10.2 Page Scan Mode
Part F - Message Sequence Charts
Contents
1 Introduction
1.1 Notation
1.2 Flow of Control
1.3 Example MSC
2 Services Without Connection Request
2.1 Remote Name Request
2.2 One-time Inquiry
2.3 Periodic Inquiry
3 ACL Connection Establishment and Detachment
3.1 Connection Setup
4 Optional Activities After ACL Connection Establishment
4.1 Authentication Requested
4.2 Simple Pairing Message Sequence Charts
4.2.1 Optional OOB Information Collection
4.2.2 Enable Simple Pairing
4.2.3 Connection Establishment
4.2.4 L2CAP Connection Request for a Secure Service
4.2.5 Optional OOB Information Transfer
4.2.6 Start Simple Pairing
4.2.7 IO Capability Exchange
4.2.8 Public Key Exchange
4.2.9 Authentication
4.2.10 Numeric Comparison
4.2.11 Numeric Comparison Failure on Initiating Side
4.2.12 Numeric Comparison Failure on Responding Side
4.2.13 Passkey Entry
4.2.14 Passkey Entry Failure on Responding Side
4.2.15 Passkey Entry Failure on Initiator Side
4.2.16 Out of Band
4.2.17 OOB Failure on Initiator Side
4.2.18 DHKey Checks
4.2.19 Calculate Link Key
4.2.20 Enable Encryption
4.2.21 L2CAP Connection Response
4.3 Link Supervision Timeout Changed Event
4.4 Set Connection Encryption
4.5 Change Connection Link Key
4.6 Change Connection Link Key with Encryption Pause and Resume
4.7 Master Link Key
4.8 Read Remote Supported Features
4.9 Read Remote Extended Features
4.10 Read Clock Offset
4.11 Role Switch on an Encrypted Link using Encryption Pause and Resume
4.12 Refreshing Encryption Keys
4.13 Read Remote Version Information
4.14 QOS Setup
4.15 Switch Role
4.16 AMP Physical Link Creation and Disconnect
4.16.1 Physical Link Establishment
4.16.2 Logical Link Creation
4.17 AMP Test Mode Sequence Charts
4.17.1 Discover the AMP Present and Running Transmitter and Receiver Tests
5 Synchronous Connection Establishment and Detachment
5.1 Synchronous Connection Setup
6 Sniff, Hold and Park
6.1 Sniff Mode
6.2 Hold Mode
6.3 Park State
7 Buffer Management, Flow Control
8 Loopback Mode
8.1 Local Loopback Mode
8.2 Remote Loopback Mode
9 List of Figures
Part G - Sample Data
Contents
1 Encryption Sample Data
1.1 Generating Kc' from Kc,
1.2 First Set of Sample Data
1.3 Second Set of Sample Data
1.4 Third Set of Samples
1.5 Fourth Set of Samples
2 Frequency Hopping Sample Data
2.1 First set
2.2 Second set
2.3 Third set
3 Access Code Sample Data
4 HEC and Packet Header Sample Data
5 CRC Sample Data
6 Complete Sample Packets
6.1 Example of DH1 Packet
6.2 Example of DM1 Packet
7 Simple Pairing Sample Data
7.1 P-192 Sample Data
7.1.1 Data Set 1
7.1.2 Data Set 2
7.1.3 Data Set 3
7.1.4 Data Set 4
7.1.5 Data Set 5
7.1.6 Data Set 6
7.1.7 Data Set 7
7.1.8 Data Set 8
7.1.9 Data Set 9
7.1.10 Data Set 10
7.2 Hash Functions Sample Data
7.2.1 f1()
7.2.2 g()
7.2.3 f2()
7.2.4 f3()
7.2.5 h2()
8 Whitening Sequence Sample Data
9 FEC Sample Data
10 Encryption Key Sample Data
10.1 Four Tests of E1
10.2 Four Tests of E21
10.3 Three Tests of E22
10.4 Tests of E22 With Pin Augmenting
10.5 Four Tests of E3
Part H - Security Specification
Contents
1 Security Overview
1.1 Pausing Encryption and Role Switch
1.2 Change Connection Link Keys
1.3 Periodically Refreshing Encryption Keys
2 Random Number Generation
3 Key Management
3.1 Key Types
3.2 Key Generation and Initialization
3.2.1 Generation of initialization key,
3.2.2 Authentication
3.2.3 Generation of a unit key
3.2.4 Generation of a combination key
3.2.5 Generating the encryption key
3.2.6 Point-to-multipoint configuration
3.2.7 Modifying the link keys
3.2.8 Generating a master key
4 Encryption
4.1 Encryption Key Size Negotiation
4.2 Encryption of Broadcast Messages
4.3 Encryption Concept
4.4 Encryption Algorithm
4.4.1 The operation of the cipher
4.5 LFSR Initialization
4.6 Key Stream Sequence
5 Authentication
5.1 Repeated Attempts
6 The Authentication And Key-Generating Functions
6.1 The Authentication Function E1
6.2 The Functions Ar and A’r
6.2.1 The round computations
6.2.2 The substitution boxes “e” and “l”
6.2.3 Key scheduling
6.3 E2-Key Generation Function for Authentication
6.4 E3-Key Generation Function for Encryption
7 Secure Simple Pairing
7.1 Phase 1: Public Key Exchange
7.2 Phase 2: Authentication Stage 1
7.2.1 Authentication Stage 1: Numeric Comparison Protocol
7.2.2 Authentication Stage 1: Out of Band Protocol
7.2.3 Authentication Stage 1: Passkey Entry Protocol
7.3 Phase 3: Authentication Stage 2
7.4 Phase 4: Link Key Calculation
7.5 Phase 5: LMP Authentication and Encryption
7.6 Elliptic Curve Definition
7.7 Cryptographic Function Definitions
7.7.1 The Simple Pairing Commitment Function f1
7.7.2 The Simple Pairing Numeric Verification Function g
7.7.3 The Simple Pairing Key Derivation Function f2
7.7.4 The Simple Pairing Check Function f3
7.7.5 The Simple Pairing AMP Key Derivation Function h2
7.7.5.1 Initial GAMP_LK Creation
7.7.5.2 Dedicated AMP Link Key Generation
7.7.5.3 GAMP_LK Regeneration
7.7.5.4 Debug AMP Link Key Generation
8 AMP Security
8.1 Creation of the Initial Generic AMP Link Key
8.2 Creation of Dedicated AMP Link Keys
8.3 Debug Considerations
9 List of Figures
Volume 3 - Core System Package [Host volume]
Part A - Logical Link Control and Adaptation Protocol Specification
Contents
1 Introduction
1.1 L2CAP Features
1.2 Assumptions
1.3 Scope
1.4 Terminology
2 General Operation
2.1 Channel Identifiers
2.2 Operation Between Devices
2.3 Operation Between Layers
2.4 Modes of Operation
2.5 Mapping Channels to Logical Links
3 Data Packet Format
3.1 Connection-oriented Channels in Basic L2CAP Mode
3.2 Connectionless Data Channel in Basic L2CAP Mode
3.3 Connection-oriented Channel in Retransmission/Flow Control/Streaming Modes
3.3.1 L2CAP header fields
3.3.2 Control field (2 or 4 octets)
3.3.3 L2CAP SDU Length Field (2 octets)
3.3.4 Information Payload Field
3.3.5 Frame Check Sequence (2 octets)
3.3.6 Invalid Frame Detection
3.3.7 Invalid Frame Detection Algorithm
4 Signaling Packet Formats
4.1 Command Reject (code 0x01)
4.2 Connection Request (code 0x02)
4.3 Connection Response (code 0x03)
4.4 Configuration Request (code 0x04)
4.5 Configuration Response (code 0x05)
4.6 Disconnection Request (code 0x06)
4.7 Disconnection Response (code 0x07)
4.8 Echo Request (code 0x08)
4.9 Echo Response (code 0x09)
4.10 Information Request (code 0x0A)
4.11 Information Response (code 0x0B)
4.12 Extended Feature Mask
4.13 Fixed Channels Supported
4.14 Create Channel Request (code 0x0C)
4.15 Create Channel Response (code 0x0D)
4.16 Move Channel Request (code 0x0E)
4.17 Move Channel Response (code 0x0F)
4.18 Move Channel Confirmation (code 0x10)
4.19 Move Channel Confirmation Response (code 0x11)
4.20 Connection Parameter Update Request (code 0X12)
4.21 Connection Parameter Update Response (code 0X13)
5 Configuration Parameter Options
5.1 Maximum Transmission Unit (MTU)
5.2 Flush Timeout Option
5.3 Quality of Service (QoS) Option
5.4 Retransmission and Flow Control Option
5.5 Frame Check Sequence (FCS) Option
5.6 Extended Flow Specification Option
5.7 Extended Window Size Option
6 State Machine
6.1 General rules for the state machine:
6.1.1 CLOSED state
6.1.2 WAIT_CONNECT_RSP state
6.1.3 WAIT_CONNECT state
6.1.4 CONFIG state
6.1.5 OPEN state
6.1.6 WAIT_DISCONNECT state
6.1.7 WAIT_CREATE_RSP state
6.1.8 WAIT_CREATE state
6.1.9 WAIT_MOVE_RSP state
6.1.10 WAIT_MOVE state
6.1.11 WAIT_MOVE_CONFIRM state
6.1.12 WAIT_CONFIRM_RSP state
6.2 Timers events
6.2.1 RTX
6.2.2 ERTX
7 General Procedures
7.1 Configuration Process
7.1.1 Request Path
7.1.2 Response pPath
7.1.3 Lockstep Configuration Process
7.1.4 Standard Configuration Process
7.2 Fragmentation and Recombination
7.2.1 Fragmentation of L2CAP PDUs
7.2.2 Recombination of L2CAP PDUs
7.3 Encapsulation of SDUs
7.3.1 Segmentation of L2CAP SDUs
7.3.2 Reassembly of L2CAP SDUs
7.3.3 Segmentation and fragmentation
7.4 Delivery of Erroneous L2CAP SDUs
7.5 Operation with Flushing On ACL-U Logical Links
7.6 Connectionless Data Channel
7.7 Operation Collision Resolution
7.8 Aggregating Best Effort Extended Flow Specifications
7.9 Prioritizing Data over HCI
7.10 Supporting Extended Flow Specification for BR/EDR And BR/EDR/LE Controllers
8 Procedures for Flow Control and Retransmission
8.1 Information Retrieval
8.2 Function of PDU Types for Flow Control and Retransmission
8.2.1 Information frame (I-frame)
8.2.2 Supervisory Frame (S-frame)
8.2.2.1 Receiver Ready (RR)
8.2.2.2 Reject (REJ)
8.3 Variables and Sequence Numbers
8.3.1 Sending peer
8.3.1.1 Send sequence number TxSeq
8.3.1.2 Send state variable NextTXSeq
8.3.1.3 Acknowledge state variable ExpectedAckSeq
8.3.2 Receiving peer
8.3.2.1 Receive sequence number ReqSeq
8.3.2.2 Receive state variable, ExpectedTxSeq
8.3.2.3 Buffer state variable BufferSeq
8.4 Retransmission Mode
8.4.1 Transmitting frames
8.4.1.1 Last received R was set to zero
8.4.1.2 Last received R was set to one
8.4.2 Receiving I-frames
8.4.3 I-frames pulled by the SDU reassembly function
8.4.4 Sending and receiving acknowledgements
8.4.4.1 Sending acknowledgements
8.4.4.2 Receiving acknowledgements
8.4.5 Receiving REJ frames
8.4.6 Waiting acknowledgements
8.4.7 Exception conditions
8.4.7.1 TxSeq Sequence error
8.4.7.2 ReqSeq Sequence error
8.4.7.3 Timer recovery error
8.4.7.4 Invalid frame
8.5 Flow Control Mode
8.5.1 Transmitting I-frames
8.5.2 Receiving I-frames
8.5.3 I-frames pulled by the SDU reassembly function
8.5.4 Sending and receiving acknowledgements
8.5.4.1 Sending acknowledgements
8.5.4.2 Receiving acknowledgements
8.5.5 Waiting acknowledgements
8.5.6 Exception conditions
8.5.6.1 TxSeq Sequence error
8.5.6.2 ReqSeq Sequence error
8.5.6.3 Invalid frame
8.6 Enhanced Retransmission Mode
8.6.1 Function Of PDU Types
8.6.1.1 Receiver Ready (RR)
8.6.1.2 Reject (REJ)
8.6.1.3 Receiver Not Ready (RNR)
8.6.1.4 Selective Reject (SREJ)
8.6.1.5 Functions of the Poll (P) and Final (F) bits.
8.6.2 Rules For Timers
8.6.2.1 Timer Rules for ACL-U Logical Links
8.6.2.2 Timer Rules for AMP Controllers
8.6.2.3 Timer Values used After a Move Operation
8.6.3 General Rules for the State Machine
8.6.4 State Diagram
8.6.5 States Tables
8.6.5.1 State Machines
8.6.5.2 States
8.6.5.3 Variables and Timers
8.6.5.4 Events
8.6.5.5 Conditions
8.6.5.6 Actions
8.6.5.7 XMIT State Table
8.6.5.8 WAIT_F State Table
8.6.5.9 RECV State Table
8.6.5.10 REJ_SENT State Table
8.6.5.11 SREJ_SENT State Table
8.7 Streaming Mode
8.7.1 Transmitting I-frames
8.7.2 Receiving I-frames
8.7.3 Exception Conditions
8.7.3.1 TxSeq Sequence error
9 Procedure for AMP Channel Creation and Handling
9.1 Create Channel
9.2 Move Channel
9.2.1 Move Channel Protocol Procedure with Enhanced Retransmission Mode
9.2.1.1 Enhanced Retransmission Mode Procedures During A Move Operation
9.2.2 Move Channel Protocol Procedure with Streaming Mode (Initiator is Data Source)
9.2.3 Move Channel Protocol Procedure with Streaming Mode (Initiator is Data Sink)
9.3 Disconnect Channel
10 List of Figures
11 List of Tables
Appendix A: Configuration MSCs
Part B - Service Discovery Protocol (SDP) Specification
Contents
1 Introduction
1.1 General Description
1.2 Motivation
1.3 Requirements
1.4 Non-requirements and Deferred Requirements
1.5 Conventions
1.5.1 Bit And Byte Ordering Conventions
2 Overview
2.1 SDP Client-Server Interaction
2.2 Service Record
2.3 Service Attribute
2.3.1 Attribute ID
2.3.2 Attribute Value
2.4 Service Class
2.4.1 A Printer Service Class Example
2.5 Searching for Services
2.5.1 UUID
2.5.2 Service Search Patterns
2.6 Browsing for Services
2.6.1 Example Service Browsing Hierarchy
3 Data Representation
3.1 Data Element
3.2 Data Element Type Descriptor
3.3 Data Element Size Descriptor
3.4 Data Element Examples
4 Protocol Description
4.1 Transfer Byte Order
4.2 Protocol Data Unit Format
4.3 Partial Responses and Continuation State
4.4 Error Handling
4.4.1 SDP_ErrorResponse PDU
4.5 ServiceSearch Transaction
4.5.1 SDP_ServiceSearchRequest PDU
4.5.2 SDP_ServiceSearchResponse PDU
4.6 ServiceAttribute Transaction
4.6.1 SDP_ServiceAttributeRequest PDU
4.6.2 SDP_ServiceAttributeResponse PDU
4.7 ServiceSearchAttribute Transaction
4.7.1 SDP_ServiceSearchAttributeRequest PDU
4.7.2 SDP_ServiceSearchAttributeResponse PDU
5 Service Attribute Definitions
5.1 Universal Attribute Definitions
5.1.1 ServiceRecordHandle Attribute
5.1.2 ServiceClassIDList Attribute
5.1.3 ServiceRecordState Attribute
5.1.4 ServiceID Attribute
5.1.5 ProtocolDescriptorList Attribute
5.1.6 AdditionalProtocolDescriptorList Attribute
5.1.7 BrowseGroupList Attribute
5.1.8 LanguageBaseAttributeIDList Attribute
5.1.9 ServiceInfoTimeToLive Attribute
5.1.10 ServiceAvailability Attribute
5.1.11 BluetoothProfileDescriptorList Attribute
5.1.12 DocumentationURL Attribute
5.1.13 ClientExecutableURL Attribute
5.1.14 IconURL Attribute
5.1.15 ServiceName Attribute
5.1.16 ServiceDescription Attribute
5.1.17 ProviderName Attribute
5.1.18 Reserved Universal Attribute IDs
5.2 ServiceDiscoveryServer Service Class Attribute Definitions
5.2.1 ServiceRecordHandle Attribute
5.2.2 ServiceClassIDList Attribute
5.2.3 VersionNumberList Attribute
5.2.4 ServiceDatabaseState Attribute
5.2.5 Reserved Attribute IDs
5.3 BrowseGroupDescriptor Service Class Attribute Definitions
5.3.1 ServiceClassIDList Attribute
5.3.2 GroupID Attribute
5.3.3 Reserved Attribute IDs
6 Security
List of Figures
List of Tables
Appendix A – Background Information
Appendix B – Example SDP Transactions
Part C - Generic Access Profile
Contents
Foreword
1 Introduction
1.1 Scope
1.2 Symbols and Conventions
1.2.1 Requirement Status Symbols
1.2.2 Signaling diagram conventions
1.2.3 Notation for Timers and Counters
2 Profile Overview
2.1 Profile Stack
2.2 Profile Roles
2.2.1 Roles when Operating over BR/EDR Physical Channel
2.2.2 Roles when Operating over an LE Physical Channel
2.2.2.1 Broadcaster Role
2.2.2.2 Observer Role
2.2.2.3 Peripheral Role
2.2.2.4 Central Role
2.2.2.5 Concurrent Operation in Multiple GAP Roles
2.3 User Requirements and Scenarios
2.4 Profile Fundamentals
2.5 Conformance
2.6 Other Requirements
3 User Interface Aspects
3.1 The User Interface Level
3.2 Representation of Bluetooth Parameters
3.2.1 Bluetooth Device Address (BD_ADDR)
3.2.1.1 Definition
3.2.1.2 Term on user interface level
3.2.1.3 Representation
3.2.2 Bluetooth Device Name (the user-friendly name)
3.2.2.1 Definition
3.2.2.2 Term on user interface level
3.2.2.3 Representation
3.2.3 Bluetooth Passkey (Bluetooth PIN)
3.2.3.1 Definition
3.2.3.2 Terms at user interface level
3.2.3.3 Representation
3.2.4 Class of Device
3.2.4.1 Definition
3.2.4.2 Term on user interface level
3.2.4.3 Representation
3.2.4.4 Usage
3.3 Pairing
4 Modes
4.1 Discoverability Modes
4.1.1 Non-discoverable Mode
4.1.1.1 Definition
4.1.1.2 Term on UI-level
4.1.2 Limited Discoverable Mode
4.1.2.1 Definition
4.1.2.2 Conditions
4.1.2.3 Term on UI-level
4.1.3 General Discoverable Mode
4.1.3.1 Definition
4.1.3.2 Conditions
4.1.3.3 Term on UI-level
4.2 Connectability Modes
4.2.1 Non-connectable Mode
4.2.1.1 Definition
4.2.1.2 Term on UI-level
4.2.2 Connectable Mode
4.2.2.1 Definition
4.2.2.2 Term on UI-level
4.3 Bondable Modes
4.3.1 Non-bondable Mode
4.3.1.1 Definition
4.3.1.2 Term on UI-level
4.3.2 Bondable Mode
4.3.2.1 Definition
4.3.2.2 Term on UI-level
5 Security Aspects
5.1 Authentication
5.1.1 Purpose
5.1.2 Term on UI level
5.1.3 Procedure
5.1.4 Conditions
5.2 Security Modes
5.2.1 Legacy Security Modes
5.2.1.1 Security mode 1 (non-secure)
5.2.1.2 Security mode 2 (service level enforced security)
5.2.1.3 Security mode 3 (link level enforced security)
5.2.2 Security Mode 4 (service level enforced security)
5.2.2.1 Security for Access to Remote Service (Initiating Side)
5.2.2.2 Security for Access to Local Service by Remote Device (Responding Side)
5.2.2.3 Simple Pairing after Authentication Failure
5.2.2.4 IO Capabilities
5.2.2.5 Mapping of Input / Output Capabilities to IO Capability
5.2.2.6 IO and OOB Capability Mapping to Authentication Stage 1 Method
5.2.2.7 Out of Band (OOB)
5.2.2.8 Security Database
6 Idle Mode Procedures
6.1 General Inquiry
6.1.1 Purpose
6.1.2 Term on UI level
6.1.3 Description
6.1.4 Conditions
6.2 Limited Inquiry
6.2.1 Purpose
6.2.2 Term on UI level
6.2.3 Description
6.2.4 Conditions
6.3 Name Discovery
6.3.1 Purpose
6.3.2 Term on UI level
6.3.3 Description
6.3.3.1 Name request
6.3.3.2 Name discovery
6.3.4 Conditions
6.4 Device Discovery
6.4.1 Purpose
6.4.2 Term on UI Level
6.4.3 Description
6.4.4 Conditions
6.5 Bonding
6.5.1 Purpose
6.5.2 Term on UI level
6.5.3 Description
6.5.3.1 General Bonding
6.5.3.2 Dedicated Bonding
6.5.4 Conditions
7 Establishment Procedures
7.1 Link Establishment
7.1.1 Purpose
7.1.2 Term on UI Level
7.1.3 Description
7.1.3.1 B in security mode 1, 2, or 4
7.1.3.2 B in security mode 3
7.1.4 Conditions
7.2 Channel Establishment
7.2.1 Purpose
7.2.2 Term on UI level
7.2.3 Description
7.2.3.1 B in security mode 2 or 4
7.2.3.2 B in security mode 1 or 3
7.2.4 Conditions
7.3 Connection Establishment
7.3.1 Purpose
7.3.2 Term on UI level
7.3.3 Description
7.3.3.1 B in security mode 2 or 4
7.3.3.2 B in security mode 1 or 3
7.3.4 Conditions
7.4 Establishment of Additional Connection
8 Extended Inquiry Response Data Format
8.1 EIR Data Type Definitions
8.1.1 Service Class UUIDs
8.1.2 Local Name
8.1.3 Flags
8.1.4 Manufacturer Specific Data
8.1.5 TX Power Level
8.1.6 Secure Simple Pairing Out of Band (OOB)
8.2 Example Extended Inquiry Response
9 Operational Modes and Procedures For Use On LE Physical Channels
9.1 Broadcast Mode and Observation Procedure
9.1.1 Broadcast Mode
9.1.1.1 Definition
9.1.1.2 Conditions
9.1.2 Observation Procedure
9.1.2.1 Definition
9.1.2.2 Conditions
9.2 Discovery Modes and Procedures
9.2.1 Requirements
9.2.2 Non-Discoverable Mode
9.2.2.1 Description
9.2.2.2 Conditions
9.2.3 Limited Discoverable Mode
9.2.3.1 Description
9.2.3.2 Conditions
9.2.4 General Discoverable Mode
9.2.4.1 Description
9.2.4.2 Conditions
9.2.5 Limited Discovery Procedure
9.2.5.1 Description
9.2.5.2 Conditions
9.2.6 General Discovery Procedure
9.2.6.1 Description
9.2.6.2 Conditions
9.2.7 Name Discovery Procedure
9.2.7.1 Description
9.2.7.2 Conditions
9.3 Connection Modes and Procedures
9.3.1 Requirements
9.3.2 Non-Connectable Mode
9.3.2.1 Description
9.3.2.2 Conditions
9.3.3 Directed Connectable Mode
9.3.3.1 Description
9.3.3.2 Conditions
9.3.4 Undirected Connectable Mode
9.3.4.1 Description
9.3.4.2 Conditions
9.3.5 Auto Connection Establishment Procedure
9.3.5.1 Description
9.3.5.2 Conditions
9.3.6 General Connection Establishment Procedure
9.3.6.1 Description
9.3.6.2 Conditions
9.3.7 Selective Connection Establishment Procedure
9.3.7.1 Description
9.3.7.2 Conditions
9.3.8 Direct Connection Establishment Procedure
9.3.8.1 Description
9.3.8.2 Conditions
9.3.9 Connection Parameter Update Procedure
9.3.9.1 Description
9.3.9.2 Conditions
9.3.10 Terminate Connection Procedure
9.3.10.1 Description
9.3.10.2 Conditions
9.4 Bonding Modes and Procedures
9.4.1 Requirements
9.4.2 Non-Bondable Mode
9.4.2.1 Description
9.4.2.2 Conditions
9.4.3 Bondable Mode
9.4.3.1 Description
9.4.3.2 Conditions
9.4.4 Bonding Procedure
9.4.4.1 Description
9.4.4.2 Conditions
10 LE Security Aspects
10.1 Requirements
10.2 LE Security Modes
10.2.1 LE Security Mode 1
10.2.2 LE Security Mode 2
10.2.3 Mixed Security Modes Requirements
10.3 Authentication Procedure
10.3.1 Receiving a Service Request
10.3.2 Initiating a Service Request
10.4 Data Signing
10.4.1 Connection Data Signing Procedure
10.4.2 Authenticate Signed Data Procedure
10.5 Authorization Procedure
10.6 Encryption Procedure
10.7 Privacy Feature
10.7.1 Privacy Feature in a Peripheral
10.7.2 Privacy Feature in a Central
10.8 Random Device Address
10.8.1 Static Address
10.8.2 Private address
10.8.2.1 Non-Resolvable Private Address Generation Procedure
10.8.2.2 Resolvable Private Address Generation Procedure
10.8.2.3 Resolvable Private Address Resolution Procedure
11 Advertising and Scan Response Data Format
11.1 AD Type Definitions
11.1.1 Service UUIDs
11.1.2 Local Name
11.1.3 Flags
11.1.4 Manufacturer Specific Data
11.1.5 TX Power Level
11.1.6 Security Manager Out of Band (OOB)
11.1.7 Security Manager TK Value
11.1.8 Slave Connection Interval Range
11.1.9 Service Solicitation
11.1.10 Service Data
11.2 Example Advertising Data
12 GAP Characteristics for Low Energy
12.1 Device Name Characteristic
12.2 Appearance Characteristic
12.3 Peripheral Privacy Flag Characteristic
12.4 Reconnection Address Characteristic
12.5 Peripheral Preferred Connection Parameters Characteristic
13 BR/EDR/LE Operation Modes and Procedure
13.1 Modes
13.1.1 Discoverability
13.1.1.1 Non-Discoverable Mode
13.1.1.2 Discoverable Mode
13.1.2 Connectability
13.1.2.1 Non-Connectable Mode
13.1.2.2 Connectable Mode
13.1.3 Bondable Modes
13.1.3.1 Non-Bondable Mode
13.1.3.2 Bondable Mode
13.2 Idle Mode Procedures
13.2.1 General Discovery Procedure
13.2.2 Limited Discovery Procedure
13.2.3 Device Discovery Procedure
13.2.3.1 Device Type Discovery Procedure
13.2.4 Name Discovery
13.3 Establishment Procedures
13.3.1 Link Establishment
13.4 SDP Interoperability Requirements
14 BR/EDR/LE Security Aspects
15 Definitions
15.1 General Definitions
15.2 Connection-related Definitions
15.3 Device-related Definitions
15.4 Procedure-related Definitions
15.5 Security-related Definitions
16 Appendix A (Normative): Timers and Constants
17 Appendix B (Informative): Information Flows of Related Procedures
17.1 LMP – Authentication
17.2 LMP – Pairing
17.3 Service Discovery
17.4 Generating a Resolvable Private Address
17.5 Resolving a Resolvable Private Address
18 Appendix C (Normative): EIR and AD Formats
18.1 Flags
18.2 Service
18.3 Local Name
18.4 TX Power Level
18.5 Simple Pairing Optional OOB Tags
18.6 Security Manager TK Value
18.7 Security Manager OOB Flags
18.8 Slave Connection Interval Range
18.9 Service Solicitation
18.10 Service Data
18.11 Manufacturer Specific Data
19 References
Part D - Test Support
Contents
1 Test Methodology
1.1 BR/EDR Test Scenarios
1.1.1 Test setup
1.1.2 Transmitter Test
1.1.2.1 Packet Format
1.1.2.2 Pseudorandom Sequence
1.1.2.3 Control of Transmit Parameters
1.1.2.4 Power Control
1.1.2.5 Switch Between Different Frequency Settings
1.1.2.6 Adaptive Frequency Hopping
1.1.3 LoopBack test
1.1.4 Pause test
1.2 AMP Test Scenarios
1.2.1 Methodology Overview
1.2.1.1 Initiation Example Description
1.2.2 Control and Configuration
1.2.3 AMP Test Manager
1.2.4 Test Commands/Events Format
1.2.5 AMP Test Manager Commands/Events
1.2.5.1 AMP Command Rejected Event
1.2.5.2 AMP Discover Request
1.2.5.3 AMP Discover Response Event
1.2.5.4 AMP Read PHY Capability Bit Map Command
1.2.5.5 AMP Read PHY Capability Bit Map Response Event
1.3 References
2 Test Control Interface (TCI)
2.1 Introduction
2.1.1 Terms Used
2.1.2 Usage of the Interface
2.2 TCI Configurations
2.2.1 Bluetooth RF Requirements
2.2.1.1 Required interfaces
2.2.2 Bluetooth protocol requirements
2.2.2.1 Required interfaces
2.2.3 Bluetooth Profile Requirements
2.2.3.1 Required interfaces
2.3 TCI Configuration and Usage
2.3.1 Transport Layers
2.3.1.1 Physical bearer
2.3.1.2 Software bearer
2.3.2 Baseband and Link Manager Qualification
2.3.3 HCI Qualification
Part E - AMP Manager Protocol Specification
Contents
1 Introduction
1.1 General Description
2 General Operation
2.1 Basic Capabilities
2.2 AMP Manager Channel Over L2CAP
2.3 Using the AMP Manager Protocol
2.3.1 Discovering a Remote AMP Manager
2.3.2 Discovering Available Controllers on a Remote Device
2.3.3 Creation of AMP Physical Links
2.4 Controller IDs
2.5 Controller Types
3 Protocol Description
3.1 Packet Formats
3.2 AMP Command Reject (Code 0x01)
3.3 AMP Discover Request (Code 0x02)
3.4 AMP Discover Response (Code 0x03)
3.5 AMP Change Notify (Code 0x04)
3.6 AMP Change Response (Code 0x05)
3.7 AMP Get Info Request (Code 0x06)
3.8 AMP Get Info Response (Code 0x07)
3.9 AMP Get AMP Assoc Request (Code 0x08)
3.10 AMP Get AMP Assoc Response (Code 0x09)
3.11 AMP Create Physical Link Request (Code 0x0A)
3.12 AMP Create Physical Link Response (Code 0x0B)
3.13 AMP Disconnect Physical Link Request (Code 0x0C)
3.14 AMP Disconnect Physical Link Response (Code 0x0D)
3.15 Create Physical Link Collision Resolution
3.16 Response Timeout
3.17 Unexpected BR/EDR Physical Link Disconnect
Figures
Tables
Part F - Attribute Protocol (ATT)
Contents
1 Introduction
1.1 Scope
1.2 Conformance
2 Protocol Overview
3 Protocol Requirements
3.1 Introduction
3.2 Basic Concepts
3.2.1 Attribute Type
3.2.2 Attribute Handle
3.2.3 Attribute Handle Grouping
3.2.4 Attribute Value
3.2.5 Attribute Permissions
3.2.6 Control-Point Attributes
3.2.7 Protocol Methods
3.2.8 Exchanging MTU Size
3.2.9 Long Attribute Values
3.2.10 Atomic Operations
3.3 Attribute PDU
3.3.1 Attribute PDU Format
3.3.2 Sequential Protocol
3.3.3 Transaction
3.4 Attribute Protocol PDUs
3.4.1 Error Handling
3.4.1.1 Error Response
3.4.2 MTU Exchange
3.4.2.1 Exchange MTU Request
3.4.2.2 Exchange MTU Response
3.4.3 Find Information
3.4.3.1 Find Information Request
3.4.3.2 Find Information Response
3.4.3.3 Find By Type Value Request
3.4.3.4 Find By Type Value Response
3.4.4 Reading Attributes
3.4.4.1 Read By Type Request
3.4.4.2 Read By Type Response
3.4.4.3 Read Request
3.4.4.4 Read Response
3.4.4.5 Read Blob Request
3.4.4.6 Read Blob Response
3.4.4.7 Read Multiple Request
3.4.4.8 Read Multiple Response
3.4.4.9 Read by Group Type Request
3.4.4.10 Read by Group Type Response
3.4.5 Writing Attributes
3.4.5.1 Write Request
3.4.5.2 Write Response
3.4.5.3 Write Command
3.4.5.4 Signed Write Command
3.4.6 Queued Writes
3.4.6.1 Prepare Write Request
3.4.6.2 Prepare Write Response
3.4.6.3 Execute Write Request
3.4.6.4 Execute Write Response
3.4.7 Server Initiated
3.4.7.1 Handle Value Notification
3.4.7.2 Handle Value Indication
3.4.7.3 Handle Value Confirmation
3.4.8 Attribute Opcode Summary
3.4.9 Attribute PDU Response Summary
4 Security Considerations
5 Acronyms and Abbreviations
Part G - Generic Attribute Profile (GATT)
Contents
1 Introduction
1.1 Scope
1.2 Profile Dependency
1.3 Conformance
1.4 Bluetooth Specification Release Compatibility
1.5 Conventions
2 Profile Overview
2.1 Protocol Stack
2.2 Configurations and Roles
2.3 User Requirements and Scenarios
2.4 Profile Fundamentals
2.5 Attribute Protocol
2.5.1 Overview
2.5.2 Attribute Caching
2.5.3 Attribute Grouping
2.5.4 UUIDs
2.6 GATT Profile Hierarchy
2.6.1 Overview
2.6.2 Service
2.6.3 Included Services
2.6.4 Characteristic
2.7 Configured Broadcast
3 Service Interoperability Requirements
3.1 Service Definition
3.2 Include Definition
3.3 Characteristic Definition
3.3.1 Characteristic Declaration
3.3.1.1 Characteristic Properties
3.3.1.2 Characteristic Value Attribute Handle
3.3.1.3 Characteristic UUID
3.3.2 Characteristic Value Declaration
3.3.3 Characteristic Descriptor Declarations
3.3.3.1 Characteristic Extended Properties
3.3.3.2 Characteristic User Description
3.3.3.3 Client Characteristic Configuration
3.3.3.4 Server Characteristic Configuration
3.3.3.5 Characteristic Presentation Format
3.3.3.6 Characteristic Aggregate Format
3.4 Summary of GATT Profile Attribute Types
4 GATT Feature Requirements
4.1 Overview
4.2 Feature Support and Procedure Mapping
4.3 Server Configuration
4.3.1 Exchange MTU
4.4 Primary Service Discovery
4.4.1 Discover All Primary Services
4.4.2 Discover Primary Service by Service UUID
4.5 Relationship Discovery
4.5.1 Find Included Services
4.6 Characteristic Discovery
4.6.1 Discover All Characteristics of a Service
4.6.2 Discover Characteristics by UUID
4.7 Characteristic Descriptor Discovery
4.7.1 Discover All Characteristic Descriptors
4.8 Characteristic Value Read
4.8.1 Read Characteristic Value
4.8.2 Read Using Characteristic UUID
4.8.3 Read Long Characteristic Values
4.8.4 Read Multiple Characteristic Values
4.9 Characteristic Value Write
4.9.1 Write Without Response
4.9.2 Signed Write Without Response
4.9.3 Write Characteristic Value
4.9.4 Write Long Characteristic Values
4.9.5 Reliable Writes
4.10 Characteristic Value Notification
4.10.1 Notifications
4.11 Characteristic Value Indications
4.11.1 Indications
4.12 Characteristic Descriptors
4.12.1 Read Characteristic Descriptors
4.12.2 Read Long Characteristic Descriptors
4.12.3 Write Characteristic Descriptors
4.12.4 Write Long Characteristic Descriptors
4.13 GATT Procedure Mapping to ATT Protocol Opcodes
4.14 Procedure Timeouts
5 L2CAP Interoperability Requirements
5.1 BR/EDR L2CAP Interoperability Requirements
5.1.1 ATT_MTU
5.1.2 BR/EDR Channel Requirements
5.1.3 BR/EDR Channel Establishment Collisions
5.2 LE L2CAP Interoperability Requirements
5.2.1 ATT_MTU
5.2.2 LE Channel Requirements
6 GAP Interoperability Requirements
6.1 BR/EDR GAP Interoperability Requirements
6.1.1 Connection Establishment
6.2 LE GAP Interoperability Requirements
6.2.1 Connection Establishment
6.2.2 Profile Roles
6.3 Disconnected Events
6.3.1 Notifications and Indications While Disconnected
7 Defined Generic Attribute Profile Service
7.1 Service Changed
8 Security Considerations
8.1 Authentication Requirements
8.2 Authorization Requirements
9 SDP Interoperability Requirements
10 References
11 Appendix: Example Attribute Server Attributes
Part H - Security Manager Specification
Contents
1 Introduction
1.1 Scope
1.2 Conventions
1.2.1 Bit and Byte Ordering Conventions
2 Security Manager
2.1 Introduction
2.2 Cryptographic Toolbox
2.2.1 Security function e
2.2.2 Random Address Hash function ah
2.2.3 Confirm value generation function c1
2.2.4 Key generation function s1
2.3 Pairing Methods
2.3.1 Security Properties
2.3.2 IO Capabilities
2.3.3 OOB Authentication Data
2.3.4 Encryption Key Size
2.3.5 Pairing Algorithms
2.3.5.1 Selecting STK Generation Method
2.3.5.2 Just Works
2.3.5.3 Passkey Entry
2.3.5.4 Out of Band
2.3.5.5 Confirmation, STK generation, and Encryption
2.3.6 Repeated Attempts
2.4 Security in Bluetooth low energy
2.4.1 Definition of Keys and Values
2.4.2 Generation of Keys
2.4.2.1 Generation of IRK
2.4.2.2 Generation of CSRK
2.4.2.3 Generation of LTK, EDIV and Rand
2.4.3 Distribution of Keys
2.4.4 Encrypted Session Setup
2.4.4.1 Encryption Setup using STK
2.4.4.2 Encryption Setup using LTK
2.4.5 Signing Algorithm
2.4.6 Slave Security Request
3 Security Manager Protocol
3.1 Introduction
3.2 Security Manager Channel over L2CAP
3.3 Command Format
3.4 SMP Timeout
3.5 Pairing Methods
3.5.1 Pairing Request
3.5.2 Pairing Response
3.5.3 Pairing Confirm
3.5.4 Pairing Random
3.5.5 Pairing Failed
3.6 Security in Bluetooth low energy
3.6.1 Key Distribution
3.6.2 Encryption Information
3.6.3 Master Identification
3.6.4 Identity Information
3.6.5 Identity Address Information
3.6.6 Signing Information
3.6.7 Security Request
4 References
Figures
Tables
5 Appendices
5.1 Appendix A – EDIV and Rand Generation
5.1.1 EDIV Masking
5.1.1.1 DIV Mask generation function dm
5.1.1.2 EDIV Generation
5.1.1.3 DIV Recovery
5.2 Appendix B – Key Management
5.2.1 Database Lookup
5.2.2 Key Hierarchy
5.2.2.1 Diversifying function d1
5.2.2.2 Generating Keys from ER
5.2.2.3 Generating Keys from IR
5.3 Message Sequence Charts
5.3.1 Phase 1: Pairing Feature Exchange
5.3.1.1 Slave Security Request – Master Requests Pairing
5.3.2 Phase 2: Authenticating and Encrypting
5.3.2.1 Phase 2: Short Term Key Generation – Just Works
5.3.2.2 Phase 2: Short Term Key Generation – Passkey Entry
5.3.2.3 Phase 2: Short Term Key Generation – Out of Band
5.3.3 Phase 3: Transport Specific Key Distribution
5.3.4 Security Re-established using Previously Distributed LTK
5.3.4.1 Master Initiated Security - Master Initiated Link Layer Encryption
5.3.4.2 Slave Security Request- Master Initiated Link Layer Encryption
5.3.5 Failure Conditions
5.3.5.1 Pairing Not Supported by Slave
5.3.5.2 Master Rejects Pairing Because of Key Size
5.3.5.3 Slave Rejects Pairing Because of Key Size
5.3.5.4 Passkey Entry Failure on Master
5.3.5.5 Passkey Entry Failure on Slave
5.3.5.6 Slave Rejects Master’s Confirm Value
5.3.5.7 Master Rejects Slaves Confirm Value
Volume 4 - Host Controller Interface [Transport Layer]
Part A - UART Transport Layer
Contents
1 General
2 Protocol
3 RS232 Settings
4 Error Recovery
Part B - USB Transport Layer
Contents
1 Overview
2 USB Endpoint Expectations
2.1 Descriptor Overview
2.1.1 Primary Controller Descriptors
2.1.2 AMP Controller Descriptors
2.2 Control Endpoint Expectations
2.2.1 Single FunctionPrimary Controller
2.2.2 Primary Controller Function in a Composite Device
2.2.3 AMP Controller
2.3 Bulk Endpoints Expectations
2.4 Interrupt Endpoint Expectations
2.5 Isochronous Endpoints Expectations
3 Class Code
3.1 Bluetooth Codes
3.1.1 Single Function Primary Controller
3.1.2 Single Function AMP Controller
3.1.3 Composite Bluetooth Primary and AMP Controller
3.1.4 Composite Device Including Bluetooth Primary and AMP Controller
4 Device Firmware Upgrade
5 Limitations
5.1 Power Specific Limitations
5.2 Other Limitations
6 Bluetooth Composite Device Implementation
6.1 Configurations
6.2 Using USB Interface Association Descriptors for a Primary Controller Function
6.3 Combined Primary Controller Function and Single AMP Controller Function
7 References
Part C - Secure Digital (SD) Transport Layer
Contents
1 Introduction
2 Goals
2.1 Hardware Goals
2.2 Software Goals
2.3 Configuration Goals
2.4 Configuration for Multiple Controllers
3 Physical Interface Documents
4 Communication
4.1 Overview
5 Appendix A - Acronyms and Abbreviations
6 Appendix B - Related Documents
7 Appendix C - Tests
7.1 Test Suite Structure
Part D - Three-wire UART Transport Layer
Contents
1 General
2 Overview
3 Slip Layer
3.1 Encoding a Packet
3.2 Decoding a Packet
4 Packet Header
4.1 Sequence Number
4.2 Acknowledge Number
4.3 Data Integrity Check Present
4.4 Reliable Packet
4.5 Packet Type
4.6 Payload Length
4.7 Packet Header Checksum
5 Data Integrity Check
5.1 16 Bit CCITT-CRC
6 Reliable Packets
6.1 Header Checksum Error
6.2 Slip Payload Length Error
6.3 Data Integrity Check Error
6.4 Out Of Sequence Packet Error
6.5 Acknowledgement
6.6 Resending Packets
6.7 Example Reliable Packet Flow
7 Unreliable Packets
7.1 Unreliable Packet Header
7.2 Unreliable Packet Error
8 Link Establishment
8.1 Uninitialized State
8.2 Initialized State
8.3 Active State
8.4 Sync Message
8.5 Sync Response Message
8.6 Config Message
8.7 Config Response Message
8.8 Configuration Field
8.8.1 Configuration Messages
8.8.2 Sliding Window Size
8.8.3 Level of Data Integrity Check
8.8.4 Out of Frame Software Flow Control
8.8.5 Version Number
9 LOW POWER
9.1 Wakeup Message
9.2 Woken Message
9.3 Sleep Message
10 Out of Frame Control
10.1 Software Flow Control
11 Hardware Configuration
11.1 Wires
11.1.1 Transmit & Receive
11.1.2 Ground
11.2 Hardware Flow
11.2.1 RTS & CTS
12 Recommended Parameters
12.1 Timing Parameters
12.1.1 Acknowledgement of Packets
12.1.2 Resending Reliable Packets
13 References
Volume 5 - Core System Package [AMP Controller volume]
Part A - 802.11 Protocol Adaptation Layer Functional Specification
1 Introduction
1.1 Organization of the 802.11 PAL
2 AMP Host Controller Interface
2.1 Read Local Version Information Command
2.2 Read Local Amp Info Command
2.3 Reset Command
2.4 Read Failed Contact Counter Command
2.5 Read Link Quality Command
2.6 Read RSSI Command
2.7 Short Range Mode Command
2.8 Write Best Effort Flush Timeout Command
2.9 Read Best Effort Flush Timeout Command
2.10 Physical Link Loss Early Warning Event
2.11 Physical Link Recovery Event
2.12 Channel Selected Event
2.13 Short Range Mode Change Completed Event
2.14 Data Structures
2.14.1 AMP_ASSOC Structure
2.14.2 MAC Address
2.14.3 802.11 PAL Capabilities
2.14.4 Preferred Channel List
2.14.5 Connected Channel List
2.14.6 802.11 PAL Version
2.15 Connection Accept Timeout Configuration Parameter
3 Physical Link Manager
3.1 Physical Link State Machine
3.1.1 General rules
3.1.2 State Diagram
3.1.3 States
3.1.4 Events
3.1.5 Conditions
3.1.6 Actions
3.1.7 DISCONNECTED State
3.1.8 STARTING State
3.1.9 CONNECTING State
3.1.10 AUTHENTICATING State
3.1.11 CONNECTED State
3.1.12 DISCONNECTING State
3.2 Channel Selection
3.2.1 Overview
3.2.2 Regulatory
3.2.3 Specification of Channel Identifiers
3.3 802.11 Link Creation
3.3.1 Starting the AMP Network
3.3.2 Establishing the 802.11 Link
3.3.3 Address Fields of Data Frames
3.3.4 Admission Control
3.4 Physical Link Maintenance
3.5 Physical Link Security
3.5.1 Obtaining Key Material
3.5.2 Creating a PTK
3.5.3 Using Encryption
3.5.4 Refreshing a PTK
3.5.5 Transporting Security Handshake Messages
3.6 Physical Link Support for QOS
3.6.1 QoS Advertisement
3.6.2 Negotiation
4 Logical Link Manager
4.1 Logical Link Creation
4.1.1 Logical Link Handles
4.1.2 Null Traffic Logical Links
4.1.3 Best Effort Logical Links
4.1.4 Guaranteed Logical Links
4.2 Logical Link Updates
4.3 Logical Link Deletion
5 Data Manager
5.1 Encapsulation
5.2 Coexistence and Local Interference
5.2.1 Interference from Collocated Radios
5.2.2 Unavailability of Remote Peer
5.2.3 Activity Reports
5.3 Explicit Flush
5.4 Automatic Flush
5.5 Quality Of Service Violations
6 Constants
7 Message Sequence Charts
8 Appendix A: Test Support
8.1 AMP Test Command
8.1.1 Test Scenarios
8.1.2 Test Mode Data Frame Format
8.2 AMP Start Test Event
8.3 AMP Test End Event
9 References
10 List of Figures
11 List of Tables
Volume 6 - Core System Package [Low Energy Controller volume]
Part A - Physical Layer Specification
Contents
1 Scope
2 Frequency Bands and Channel Arrangement
3 Transmitter Characteristics
3.1 Modulation Characteristics
3.2 Spurious Emissions
3.2.1 Modulation Spectrum
3.2.2 In-band Spurious Emission
3.2.3 Out-of-band Spurious Emission
3.3 Radio Frequency Tolerance
4 Receiver Characteristics
4.1 Actual Sensitivity Level
4.2 Interference Performance
4.3 Out-of-Band Blocking
4.4 Intermodulation Characteristics
4.5 Maximum Usable Level
4.6 Reference Signal Definition
5 Appendix A
5.1 Normal Operating Conditions (NOC)
5.1.1 Normal Temperature and Air Humidity
5.1.2 Nominal Supply Voltage
5.2 Extreme Operating Conditions (EOC)
5.2.1 Extreme Temperature And Air Humidity
5.2.2 Extreme Supply Voltage
6 Appendix B - Operating Conditions
Part B - Link Layer Specification
Contents
1 General Description
1.1 Link Layer States
1.1.1 State and Role Combination Restrictions
1.2 Bit Ordering
1.3 Device Address
1.4 Physical Channel
1.4.1 Advertising and Data Channel Indexes
2 Air Interface Packets
2.1 Packet Format
2.1.1 Preamble
2.1.2 Access Address
2.1.3 PDU
2.1.4 CRC
2.2 Reserved for Future Use (RFU)
2.3 Advertising Channel PDU
2.3.1 Advertising PDUs
2.3.1.1 ADV_IND
2.3.1.2 ADV_DIRECT_IND
2.3.1.3 ADV_NONCONN_IND
2.3.1.4 ADV_SCAN_IND
2.3.2 Scanning PDUs
2.3.2.1 SCAN_REQ
2.3.2.2 SCAN_RSP
2.3.3 Initiating PDUs
2.3.3.1 CONNECT_REQ
2.4 Data Channel PDU
2.4.1 LL Data PDU
2.4.2 LL Control PDU
2.4.2.1 LL_CONNECTION_UPDATE_REQ
2.4.2.2 LL_CHANNEL_MAP_REQ
2.4.2.3 LL_TERMINATE_IND
2.4.2.4 LL_ENC_REQ
2.4.2.5 LL_ENC_RSP
2.4.2.6 LL_START_ENC_REQ
2.4.2.7 LL_START_ENC_RSP
2.4.2.8 LL_UNKNOWN_RSP
2.4.2.9 LL_FEATURE_REQ
2.4.2.10 LL_FEATURE_RSP
2.4.2.11 LL_PAUSE_ENC_REQ
2.4.2.12 LL_PAUSE_ENC_RSP
2.4.2.13 LL_VERSION_IND
2.4.2.14 LL_REJECT_IND
3 Bit Stream Processing
3.1 Error Checking
3.1.1 CRC Generation
3.2 Data Whitening
4 Air Interface Protocol
4.1 Inter Frame Space
4.2 Timing Requirements
4.2.1 Active Clock Accuracy
4.2.2 Sleep Clock Accuracy
4.3 Link Layer Device Filtering
4.3.1 White List
4.3.2 Advertising Filter Policy
4.3.3 Scanner Filter Policy
4.3.4 Initiator Filter Policy
4.4 Non-Connected States
4.4.1 Standby State
4.4.2 Advertising State
4.4.2.1 Advertising Channel Selection
4.4.2.2 Advertising Interval
4.4.2.3 Connectable Undirected Event Type
4.4.2.4 Connectable Directed Event Type
4.4.2.5 Scannable Undirected Event Type
4.4.2.6 Non-connectable Undirected Event Type
4.4.3 Scanning State
4.4.3.1 Passive Scanning
4.4.3.2 Active Scanning
4.4.4 Initiating State
4.5 Connection State
4.5.1 Connection Events
4.5.2 Supervision Timeout
4.5.3 Connection Event Transmit Window
4.5.4 Connection Setup – Master Role
4.5.5 Connection Setup – Slave Role
4.5.6 Closing Connection Events
4.5.7 Window Widening
4.5.8 Data Channel Index Selection
4.5.8.1 Channel Classification
4.5.8.2 Channel Selection
4.5.9 Acknowledgement and Flow Control
4.5.9.1 Flow Control
4.6 Feature Support
4.6.1 LE Encryption
5 Link Layer Control
5.1 Link Layer Control Procedures
5.1.1 Connection Update Procedure
5.1.2 Channel Map Update Procedure
5.1.3 Encryption Procedure
5.1.3.1 Encryption Start Procedure
5.1.3.2 Encryption Pause Procedure
5.1.4 Feature Exchange Procedure
5.1.5 Version Exchange
5.1.6 Termination Procedure
5.2 Procedure Response Timeout
Part C - Sample Data
Contents
1 Encryption sample data
1.1 Encrypt Command
1.2 Derivation of the MIC and Encrypted Data
Part D - Message Sequence Charts
Contents
1 Introduction
1.1 Notation
1.2 Control Flow
1.3 Example MSC
2 Standby State
2.1 Initial Setup
2.2 Random Device Address
2.3 White Lists
3 Advertising State
3.1 Undirected Advertising
3.2 Directed Advertising
4 Scanning State
4.1 Passive Scanning
4.2 Active Scanning
5 Initiating State
5.1 Initiating a Connection
5.2 Canceling an Initiation
6 Connection State
6.1 Sending Data
6.2 Connection Update
6.3 Channel Map Update
6.4 Features Exchange
6.5 Version Exchange
6.6 Start Encryption
6.7 Start Encryption without Long Term Key
6.8 Start Encryption with Event Masked
6.9 Start Encryption Without Slave Supporting Encryption
6.10 Restart Encryption
6.11 Disconnect
Part E - Low Energy Link Layer Security
Contents
1 Encryption and Authentication Overview
2 CCM
2.1 CCM Nonce
2.2 Counter Mode Blocks
2.3 Encryption Blocks
Part F - Direct Test Mode
Contents
1 Introduction
2 Low Energy Test Scenarios
2.1 Test Sequences
2.2 Message Sequence Charts
3 UART Test Interface
3.1 UART Interface Characteristics
3.2 UART Functional Description
3.3 Commands and Events
3.3.1 Command and Event Behavior
3.3.2 Commands
3.4 Events
3.4.1 LE_Test_Status_Event
3.4.2 LE_Packet_Report_Event
3.5 Timing – Command and Event
Specification Volume 0 Master Table of Contents & Compliance Requirements Covered Core Package version: 4.0 Current Master TOC Publication date: 30 June 2010
BLUETOOTH SPECIFICATION Version 4.0 [Vol 0] page 2 of 106 30 June 2010
BLUETOOTH SPECIFICATION Version 4.0 [Vol 0] page 3 of 106 Revision History The Revision History is shown in the “Appendix” on page 55[Vol. 0]. Contributors The persons who contributed to this specification are listed in the Appendix. Web Site This specification can also be found on the official Bluetooth web site: http://www.bluetooth.com Disclaimer and Copyright Notice The copyright in these specifications is owned by the Promoter Members of Bluetooth SIG, Inc. (“Bluetooth SIG”). Use of these specifications and any related intellectual property (collectively, the “Specification”), is governed by the Promoters Membership Agreement among the Promoter Members and Blue- tooth SIG (the “Promoters Agreement”), certain membership agreements between Bluetooth SIG and its Adopter and Associate Members (the “Member- ship Agreements”) and the Bluetooth Specification Early Adopters Agreements (“1.2 Early Adopters Agreements”) among Early Adopter members of the unin- corporated Bluetooth special interest group and the Promoter Members (the “Early Adopters Agreement”). Certain rights and obligations of the Promoter Members under the Early Adopters Agreements have been assigned to Blue- tooth SIG by the Promoter Members. Use of the Specification by anyone who is not a member of Bluetooth SIG or a party to an Early Adopters Agreement (each such person or party, a “Mem- ber”), is prohibited. The legal rights and obligations of each Member are gov- erned by their applicable Membership Agreement, Early Adopters Agreement or Promoters Agreement. No license, express or implied, by estoppel or other- wise, to any intellectual property rights are granted herein. Any use of the Specification not in compliance with the terms of the applicable Membership Agreement, Early Adopters Agreement or Promoters Agreement is prohibited and any such prohibited use may result in termination of the appli- cable Membership Agreement or Early Adopters Agreement and other liability permitted by the applicable agreement or by applicable law to Bluetooth SIG or any of its members for patent, copyright and/or trademark infringement. 30 June 2010
BLUETOOTH SPECIFICATION Version 4.0 [Vol 0] page 4 of 106 THE SPECIFICATION IS PROVIDED “AS IS” WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, SATISFACTORY QUALITY, OR REASONABLE SKILL OR CARE, OR ANY WARRANTY ARISING OUT OF ANY COURSE OF DEALING, USAGE, TRADE PRACTICE, PROPOSAL, SPECIFICATION OR SAMPLE. Each Member hereby acknowledges that products equipped with the Bluetooth® technology (“Bluetooth® Products”) may be subject to various regulatory controls under the laws and regulations of various governments worldwide. Such laws and regulatory controls may govern, among other things, the combination, operation, use, implementation and distribution of Bluetooth® Products. Examples of such laws and regulatory controls include, but are not limited to, airline regulatory controls, telecommunications regulations, technology transfer controls and health and safety regulations. Each Member is solely responsible for the compliance by their Bluetooth® Products with any such laws and regulations and for obtaining any and all required authorizations, permits, or licenses for their Bluetooth® Products related to such regulations within the applicable jurisdictions. Each Member acknowledges that nothing in the Specification provides any information or assistance in connection with securing such compliance, authorizations or licenses. NOTHING IN THE SPECIFICATION CREATES ANY WARRANTIES, EITHER EXPRESS OR IMPLIED, REGARDING SUCH LAWS OR REGULATIONS. ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY INTELLECTUAL PROPERTY RIGHTS OR FOR NONCOMPLIANCE WITH LAWS, RELATING TO USE OF THE SPECIFICATION IS EXPRESSLY DISCLAIMED. BY USE OF THE SPECIFICATION, EACH MEMBER EXPRESSLY WAIVES ANY CLAIM AGAINST BLUETOOTH SIG AND ITS PROMOTER MEMBERS RELATED TO USE OF THE SPECIFICATION. Bluetooth SIG reserves the right to adopt any changes or alterations to the Specification as it deems necessary or appropriate. Copyright © 1999 - 2010 Ericsson AB, Lenovo, Intel Corporation, Microsoft Corporation, Motorola, Inc., Nokia Corporation, Toshiba Corporation *Third-party brands and names are the property of their respective owners. 30 June 2010
Master Table of Contents & Compliance Requirements Part A MASTER TABLE OF CONTENTS This table of contents (TOC) covers the entire Bluetooth Specification. In addition each volume has a TOC and each part of a volume is preceded by a detailed TOC.
BLUETOOTH SPECIFICATION Version 4.0 [Vol 0] page 6 of 106 Master Table of Contents 30 June 2010
BLUETOOTH SPECIFICATION Version 4.0 [Vol 0] page 7 of 106 Master Table of Contents THE BLUETOOTH SPECIFICATION MASTER TABLE OF CONTENTS In the following Master Table of Contents: • The TOC for each Volume starts at the top of a page. • The Volume number in black is followed by the Volume name in red. Note: Each Volume is a self contained book which is published and updated separately and is equipped with a TOC of its own. However, this Master TOC is also revised as soon as any of the other Volumes are updated. • A Volume contains one or more Parts (A, B, etc.); each Part can be viewed independently and has its own TOC. Red or blue text on the following pages indicates hypertext links that take you directly to the indicated section, on condition that you have access to a com- plete specification. 30 June 2010
BLUETOOTH SPECIFICATION Version 4.0 [Vol 0] page 8 of 106 Master Table of Contents 30 June 2010
分享到:
收藏