# Architecture Source: [https://docs.qualcomm.com/doc/80-70017-13/topic/bt_architecture_overview.html](https://docs.qualcomm.com/doc/80-70017-13/topic/bt_architecture_overview.html) The Bluetooth software architecture consists of open-source and Qualcomm proprietary software. The following figure shows how the user space and kernel space components interact through a socket interface. In the user space, the sample test applications interact with the BlueZ Bluetooth daemon to run Bluetooth functions. Figure : Bluetooth software architecture  The Bluetooth software architecture consists of the user space, the kernel space, and the Bluetooth controller. ## User space components The user space contains the following Bluetooth applications, daemon, and interface layers. | Component | Description | | --- | --- | | Bluetooth daemon (bluetoothd) |
| | Bluetooth-tools | | | bluetoothctl | | | mpris-proxy | | | obexctl | | | OBEX daemon (obexd) | | | ofono | | | ofono-tests | Provides options to perform the following functions: | | PulseAudio | | ## Kernel space components The kernel space contains the following core components and drivers. | Component | Description | | --- | --- | | Bluetooth management (btmgmt) | | | BlueZ Host Control Interface (HCI) core | | | HCI | | | Logical Link Control and Adaptation Protocol (L2CAP) | | | Qualcomm Bluetooth driver | | | Radio Frequency Communication (RFCOMM) | | | Session Description Protocol (SDP) | | | SLIMbus Bluetooth driver | | | Synchronous Connection Oriented (SCO) | | | Universal asynchronous receiver/transmitter (UART) serial