xref: /nrf52832-nimble/packages/NimBLE-latest/docs/ble_hs/ble_att.rst (revision 042d53a763ad75cb1465103098bb88c245d95138)
1*042d53a7SEvalZeroNimBLE Host ATT Client Reference
2*042d53a7SEvalZero--------------------------------
3*042d53a7SEvalZero
4*042d53a7SEvalZeroIntroduction
5*042d53a7SEvalZero~~~~~~~~~~~~
6*042d53a7SEvalZero
7*042d53a7SEvalZeroThe Attribute Protocol (ATT) is a mid-level protocol that all BLE devices use to exchange data. Data is exchanged when
8*042d53a7SEvalZeroan ATT client reads or writes an attribute belonging to an ATT server. Any device that needs to send or receive data
9*042d53a7SEvalZeromust support both the client and server functionality of the ATT protocol. The only devices which do not support ATT
10*042d53a7SEvalZeroare the most basic ones: broadcasters and observers (i.e., beaconing devices and listening devices).
11*042d53a7SEvalZero
12*042d53a7SEvalZeroMost ATT functionality is not interesting to an application. Rather than use ATT directly, an application uses the
13*042d53a7SEvalZerohigher level GATT profile, which sits directly above ATT in the host. NimBLE exposes the few bits of ATT functionality
14*042d53a7SEvalZerowhich are not encompassed by higher level GATT functions. This section documents the ATT functionality that the NimBLE
15*042d53a7SEvalZerohost exposes to the application.
16*042d53a7SEvalZero
17*042d53a7SEvalZeroAPI
18*042d53a7SEvalZero~~~~~~
19*042d53a7SEvalZero
20*042d53a7SEvalZero.. doxygengroup:: bt_host
21*042d53a7SEvalZero    :content-only:
22*042d53a7SEvalZero    :members:
23