1# Bluetooth Glossary
2
3This glossary is for consolidating documentation of terms used throughout
4Bluetooth codebases. When adding an entry there are a few important
5considerations to keep in mind:
6
71. The glossary is not exhaustive - it is sufficient to add a few sentences and
8   link to a full description
92. Readers may be unfamiliar with this domain - keep entries readable to
10   newcomers and if you must use other Bluetooth-specific terminology make sure
11   it is also added in the glossary
12
13## Bluetooth Specification
14
15Details of a given profile or protocol may change over time, so descriptions
16included here are high level to avoid including innaccurate information. As
17such, specific documents are not linked, but all Bluetooth specification
18documents can be found on the [Bluetooth website](https://www.bluetooth.com).
19
20### Advacned Audio Distribution Profile
21Common aliases: A2DP
22
23Audio streaming profile for music and other audio.
24
25References: A2DP Specification
26
27### Attribute Profile
28Common aliases: ATT
29
30The protocol for describing Bluetooth LE data.
31
32References: Core Specification, GATT
33
34### Audio/Video Remote Control Profile
35Common aliases: AVRCP
36
37A profile for allowing a Bluetooth device to control media devices.
38
39References: AVRCP Specification
40
41### Generic Access Profile
42Common aliases: GAP
43
44The profile that determines how two Bluetooth devices discover and connect to
45each other.
46
47References: Core Specification
48
49### Generic Attribute Profile
50Common aliases: GATT
51
52Profile for organizing attributes and providing access to them.
53
54References: Core Specification
55
56### Hands-Free Profile
57Common aliases: HFP
58
59A superset of HSP and some additional features useful to hands-free interaction
60with a device.
61
62References: HFP Specification, HSP
63
64### Human Interface Device Profile
65Common aliases: HID, HIDP
66
67A wrapper around the USB Human Interface Device (HID) specification used in
68Bluetooth Classic.
69
70References: HID Profile Specification, USB HID Specification
71
72### HID over GATT Profile
73Common aliases: HOGP
74
75Profile for supporting HID devices via the GATT protocol for Bluetooth LE
76devices.
77
78References: HOGP Specification, USB HID Specification
79
80### Headset Profile
81Common aliases: HSP
82
83Profile for enabling headsets that provide audio output and input.
84
85References: HSP Specification
86
87### Logical Link Control and Adaptation Layer Protocol
88Common aliases: L2CAP
89
90The communication protocol that most of the Bluetooth stack is built on, similar
91to UDP.
92
93References: Core Specification
94
95### Radio Frequency Communication Protocol
96common aliases: RFCOMM, rfc[^1]
97
98A communication protocol built on top of L2CAP that provides emulated RS-232
99communication.
100
101References: RFCOMM Specification
102
103## Project Shorthands
104
105### Bluetooth Device Address
106Common aliases: bda[^1], bdaddr[^1]
107
108The unique identification for a Bluetooth device. It is a 48-bit identifier
109typically expressed in hexadecimal.
110
111Notes: It is rarely helpful to refer to these addresses as a Bluetooth Device
112Address in Bluetooth code as the Bluetooth portion is implied, and "Device" is
113usually less descriptive than "host", "local", "remote", or a similar term.
114
115## Computing Terminology
116
117### Finite State Machine
118Common aliases: FSM[^1], State Machine
119
120A mechanism for describing the logical flow of a system based on states and
121transitions.
122
123[^1]: These aliases are in use but heavily discouraged as they negatively impact
124    readability
125