📝GATT

GATT is an acronym for the Generic Attribute Profile.

Concepts:

  • Services

  • Characteristics

Uses generic Attribute Protocol (ATT), stores in a simple lookup table using 16-bit IDs for each entry.

GATT comes into play once devices are

Client

A device that initiates GATT commands and requests, and accepts responses, for example, a computer or smartphone.

Server

A device that receives GATT commands and requests, and returns responses, for example, a temperature sensor.

Characteristic

A data value transferred between client and server, for example, the current battery voltage.

Service

A collection of related characteristics, which operate together to perform a particular function. For instance, the Health Thermometer service includes characteristics for a temperature measurement value, and a time interval between measurements.

Descriptor

A descriptor provides additional information about a characteristic. For instance, a temperature value characteristic may have an indication of its units (e.g. Celsius), and the maximum and minimum values which the sensor can measure. Descriptors are optional – each characteristic can have any number of descriptors.

Services, characteristics, and descriptors are collectively referred to as attributes, and identified by UUIDs.

Backlinks