Bluetooth Source Layout

The Bluetooth System comprises many components, such as drivers, profiles, and client applications. This document provides an overview of where the various components live in the source tree.

src/connectivity/bluetooth/
    core/
        bt-gap/              # GAP daemon
        bt-host/             # bt-host driver and host subsystem
        bt-init/             # Bluetooth subsystem launcher
    examples/                # various LE API examples
    hci/                     # bt-hci drivers
    lib/                     # protocol and rust utility libraries
    profiles/                # profile components (A2DP, AVRCP, HID over GATT, etc)
    tests/                   # integration tests
    tools/                   # command-line tools and debug components

sdk/fidl/fuchsia.bluetooth.*                    # public API
topaz/bin/bluetooth_settings/                   # Bluetooth Settings UI
topaz/examples/eddystone_agent/                 # [Eddystone](https://github.com/google/eddystone)-based trigger
zircon/system/dev/bluetooth/                    # bt-transport drivers

See the HCI section of the Bluetooth System document for an explanation of how the drivers, such as bt-transport, bt-hci, and bt-host, relate to each other.

See the Host Bus section of the Bluetooth System document for more detail on bt-host.