И давайте немного погрузимся в то, как устроен BLE. Это одна большая табличка, в которой ключ — это идентификатор устройства, а значение — набор сервисов. Сервисы, в свою очередь, имеют свой идентификатор и могут содержать от одной до нескольких характеристик. Характеристики отвечают за какое-то значение, они содержат свой идентификатор, само значение и могут содержать один дескриптор, но это необязательно. Дескриптор, в свою очередь, отвечает за какое-то дополнительное свойство или пояснение к характеристике, состоит из идентификатора и значения. И в BLE мы как раз работаем со значениями характеристики или дескриптора. Мы можем как читать их, так и записывать.
Давайте рассмотрим пример. Пусть есть устройство — комнатный термометр. Сервис — это термометр. У него две характеристики: одна отвечает за температуру в комнате, а вторая — за влажность в комнате. А дескриптором может быть, например, единицы измерения температуры, там, цельсии или фаренгейты. Или максимальный процент влажности.