In this lesson, we will take a closer look at the Generic Attribute Protocol (GATT), its underlayer Attribute Protocol (ATT). We will learn how to represent and exchange data between two connected Bluetooth LE devices using different GATT operations. We will also examine important concepts in Bluetooth LE such as services and characteristics.
In the theory part of this lesson, we are going into the details of GATT and ATT, the attributes table structure, and the GATT operations available for data exchange, such as read and write.
We will build a complete Bluetooth LE peripheral profile that uses both standard and custom Bluetooth LE services and characteristics. In exercise 1 of this lesson, we will learn how to build the LED Button Service from scratch and focus on GATT read and write operations. In exercise 2, we will complete the LBS service and cover GATT notifications and indications. The last exercise will be about the Nordic UART Service (NUS) and how to add standard Bluetooth LE defined services.