Чтение данных термометра с Bluetooth Bluez Low Energy

Мне было интересно, есть ли кто-нибудь, кто хочет меня немного наставить. Я пытаюсь определить температуру термометра Bluetooth с помощью gatttool, но я не знаю, как работать со свойством указать.

Я могу подключиться к устройству, получить имя устройства и т. Д., Но оказалось сложнее получить фактические данные о температуре.

У кого-нибудь есть идея? Также, если у вас есть еще вопросы для меня, дайте мне знать.

1 ответ

Решение

Предполагая, что ваше устройство использует принятый профиль термометра, вы хотите включить показания для характеристики измерения температуры. Для этого есть несколько шагов:

  1. Найдите ручку температурной характеристики, используя:-

    gatttool -b 00:11:22:33:44:55 --characteristics

Замените 00:11:22:33:44:55 адресом Bluetooth вашего устройства. По сути, вы хотите найти uuid, содержащий 2a1c, и записать соответствующий ему "дескриптор значения символа".

  1. Найдите дескрипторы на этой ручке, используя

    gatttool -b 00:11:22:33:44:55 char-desc --handle=0xXX

Где XX - дескриптор значения символа, который вы записали ранее. Вы должны быть в состоянии увидеть несколько характерных дескрипторов на этом дескрипторе. Запишите ручку с символом uuid 2902.

  1. Включить индикации, написав "0200" на этой ручке, используя

    gatttool -b 00:11:22:33:44:55 --sec-level=high --char-write --handle=0xYYYY --value=0200

Где 0xYYYY - дескриптор CCCD, который вы отметили на шаге 2. Как только это произойдет, вы должны начать получать данные индикации, которые можно расшифровать, используя структуру данных температуры, найденную здесь.

Если ваше устройство не использует принятый профиль термометра, то вам нужно повторить вышеупомянутые три шага, но на шаге 1 вместо поиска характеристики с uuid 2a1c найдите характеристику, которая имеет 'char properties = 0x20', как это означает, что характеристика может быть указательной.

Вы можете найти больше информации об использовании команд BlueZ по следующим ссылкам:-

Надеюсь, это поможет.

Другие вопросы по тегам