The Attribute Protocol (ATT) is a fundamental protocol within the Bluetooth Low Energy (BLE) protocol stack. It essentially governs how data is structured and accessed on a BLE server.
Understanding ATT
ATT defines two primary roles:
- Server: Holds the data in a database, structured as attributes.
- Client: Requests to read or write attribute data on the server.
Key Aspects of ATT
Here are the core features and functionality:
- Data Representation: ATT dictates how data is organized into attributes within a BLE server's database.
- Read/Write Operations: It defines the methods by which a client can read data from, or write data to, the server's attributes. In simpler terms, it describes how a device can get information from or send information to another BLE device.
- Attributes: These are the fundamental building blocks of data within the ATT protocol. Each attribute has a handle (a unique identifier), a type (UUID), and a value (the actual data).
Practical Example
Imagine a BLE heart rate monitor (the server). Its heart rate data is stored as an attribute. A smartphone (the client) can use ATT to read this attribute and display your heart rate. Similarly, the smartphone could write to an attribute to configure settings on the heart rate monitor.
Summary Table
Feature | Description |
---|---|
Protocol | Part of the BLE stack |
Purpose | Defines data representation and access on a BLE server |
Roles | Server (holds data), Client (requests data) |
Key Operations | Reading and writing attributes |
Building Blocks | Attributes (handle, type/UUID, value) |