You are previewing Bluetooth Low Energy: The Developer’s Handbook.
O'Reilly logo
Bluetooth Low Energy: The Developer’s Handbook

Book Description

The First Complete Guide to Bluetooth Low Energy: How It Works, What It Can Do, and How to Apply It

A radical departure from conventional Bluetooth technology, Bluetooth low energy (BLE) enables breakthrough wireless applications in industries ranging from healthcare to transportation. Running on a coin-sized battery, BLE can operate reliably for years, connecting and extending everything from personal area network devices to next-generation sensors. Now, one of the standard’s leading developers has written the first comprehensive, accessible introduction to BLE for every system developer, designer, and engineer.

Robin Heydon, a member of the Bluetooth SIG Hall of Fame, has brought together essential information previously scattered through multiple standards documents, sharing the context and expert insights needed to implement high-performance working systems. He first reviews BLE’s design goals, explaining how they drove key architectural decisions, and introduces BLE’s innovative usage models. Next, he thoroughly covers how the two main parts of BLE, the controller and host, work together, and then addresses key issues from security and profiles through testing and qualification. This knowledge has enabled the creation of Bluetooth Smart and Bluetooth Smart Ready devices.

This guide is an indispensable companion to the official BLE standards documents and is for every technical professional and decision-maker considering BLE, planning BLE products, or transforming plans into working systems.

Topics Include

  • BLE device types, design goals, terminology, and core concepts

  • Architecture: controller, host, applications, and stack splits

  • Usage models: presence detection, data broadcasting, connectionless models, and gateways

  • Physical Layer: modulation, frequency band, radio channels, power, tolerance, and range

  • Direct Test Mode: transceiver testing, hardware interfaces, and HCI

  • Link Layer: state machine, packets, channels, broadcasting, encryption, and optimization

  • HCI: physical/logical interfaces, controller setup, and connection management

  • L2CAP: channels and packet structure, and LE signaling channels

  • Attributes: grouping, services, characteristics, and protocols

  • Security: pairing, bonding, and data signing

  • Generic Access Profiles: roles, modes, procedures, security modes, data advertising, and services

  • Applications, devices, services, profiles, and peripherals

  • Testing/qualification: starting projects, selecting features, planning, testing, compliance, and more

  • Table of Contents

    1. Title
    2. Copyright Page
    3. Dedication Page
    4. Contents
    5. Preface
    6. Acknowledgments
    7. About the Author
    8. Part I: Overview
      1. Chapter 1. What Is Bluetooth Low Energy?
        1. 1.1. Device Types
        2. 1.2. Design Goals
        3. 1.3. Terminology
      2. Chapter 2. Basic Concepts
        1. 2.1. Button-Cell Batteries
        2. 2.2. Time Is Energy
        3. 2.3. Memory Is Expensive
        4. 2.4. Asymmetric Design
        5. 2.5. Design For Success
        6. 2.6. Everything Has State
        7. 2.7. Client-Server Architecture
        8. 2.8. Modular Architecture
        9. 2.9. One Billion Is a Small Number
        10. 2.10. Connectionless Model
        11. 2.11. Paradigms
      3. Chapter 3. Architecture
        1. 3.1. Controller
        2. 3.2. The Host
        3. 3.3. The Application Layer
        4. 3.4. Stack Splits
      4. Chapter 4. New Usage Models
        1. 4.1. Presence Detection
        2. 4.2. Broadcasting Data
        3. 4.3. Connectionless Model
        4. 4.4. Gateways
    9. Part II: Controller
      1. Chapter 5. The Physical Layer
        1. 5.1. Background
        2. 5.2. Analog Modulation
        3. 5.3. Digital Modulation
        4. 5.4. Frequency Band
        5. 5.5. Modulation
        6. 5.6. Radio Channels
        7. 5.7. Transmit Power
        8. 5.8. Tolerance
        9. 5.9. Receiver Sensitivity
        10. 5.10. Range
      2. Chapter 6. Direct Test Mode
        1. 6.1. Background
        2. 6.2. Transceiver Testing
        3. 6.3. Hardware Interface
        4. 6.4. Direct Testing by Using HCI
      3. Chapter 7. The Link Layer
        1. 7.1. The Link Layer State Machine
        2. 7.2. Packets
        3. 7.3. Packet Structure
        4. 7.4. Channels
        5. 7.5. Finding Devices
        6. 7.6. Broadcasting
        7. 7.7. Creating Connections
        8. 7.8. Sending Data
        9. 7.9. Encryption
        10. 7.10. Managing Connections
        11. 7.11. Robustness
        12. 7.12. Optimizations for Low Power
      4. Chapter 8. The Host/Controller Interface
        1. 8.1. Introduction
        2. 8.2. Physical Interfaces
        3. 8.3. Logical Interface
        4. 8.4. Controller Setup
        5. 8.5. Broadcasting and Observing
        6. 8.6. Initiating Connections
        7. 8.7. Connection Management
    10. Part III: Host
      1. Chapter 9. Logical Link Control and Adaptation Protocol
        1. 9.1. Background
        2. 9.2. L2CAP Channels
        3. 9.3. The L2CAP Packet Structure
        4. 9.4. The LE Signaling Channel
      2. Chapter 10. Attributes
        1. 10.1. Background
        2. 10.2. Attributes
        3. 10.3. Grouping
        4. 10.4. Services
        5. 10.5. Characteristics
        6. 10.6. The Attribute Protocol
        7. 10.7. The Generic Attribute Profile
      3. Chapter 11. Security
        1. 11.1. Security Concepts
        2. 11.2. Pairing and Bonding
        3. 11.3. Signing of Data
      4. Chapter 12. The Generic Access Profile
        1. 12.1. Background
        2. 12.2. GAP Roles
        3. 12.3. Modes and Procedures
        4. 12.4. Security Modes
        5. 12.5. Advertising Data
        6. 12.6. GAP Service
    11. Part IV: Application
      1. Chapter 13. Central
        1. 13.1. Background
        2. 13.2. Discovering Devices
        3. 13.3. Connecting to Devices
        4. 13.4. What Does This Device Do?
        5. 13.5. Generic Clients
        6. 13.6. Interacting with Services
        7. 13.7. Bonding
        8. 13.8. Changed Services
        9. 13.9. Implementing Profiles
      2. Chapter 14. Peripherals
        1. 14.1. Background
        2. 14.2. Broadcast Only
        3. 14.3. Being Discoverable
        4. 14.4. Being Connectable
        5. 14.5. Exposing Services
        6. 14.6. Characteristics
        7. 14.7. Security Matters
        8. 14.8. Optimizing for Low Power
        9. 14.9. Optimizing Attributes
      3. Chapter 15. Testing and Qualification
        1. 15.1. Starting a Project
        2. 15.2. Selecting Features
        3. 15.3. Consistency Check
        4. 15.4. Generating a Test Plan
        5. 15.5. Creating a Compliance Folder
        6. 15.6. Qualification Testing
        7. 15.7. Qualify Your Design
        8. 15.8. Declaring Compliance
        9. 15.9. Listing
        10. 15.10. Combining Components
    12. Index
    13. Footnotes
      1. Chapter 1
      2. Chapter 3
      3. Chapter 4
      4. Chapter 5
      5. Chapter 7
      6. Chapter 10
      7. Chapter 11
      8. Chapter 13
      9. Chapter 15