Фукционал тестировался с использованием USB стика CSR4 BTD-401
https://ru.aliexpress.com/item/Bluetoot ... 33edeKwEac
На предыдущей версии ubuntu данный стик не определялся ядром. После обновления ядра на стабильное LTS, стик видится без каких-либо танцев с бубном.
В виду того, что hcitool требует повышения прав, команды сканирования эфира записаны через sudo. Чтобы корректно работали функции сканирования, придется исключить запрос пароля для пользователя www-data, или того, от которого запущен apache2.
Для этого в консоли нужно выполнить sudo visudo и прописать в конце файла:
Код: Выделить всё
www-data ALL=(root) NOPASSWD: /usr/bin/timeout
www-data ALL=(root) NOPASSWD: /usr/bin/hcitool
www-data ALL=(root) NOPASSWD: /bin/echo
www-data ALL=(root) NOPASSWD: /usr/bin/gatttool
www-data ALL=(root) NOPASSWD: /bin/hciconfig
Возможности:
1) сканирование эфира на наличие доступных bluetooth устройств
2) Получение доступных сервисов устройства
3) Получение доступных handle устройств https://www.bluetooth.com/specifications/gatt/services
В настоящее время поддерживается следующее оборудование:
1) mi flora plant ( для версии прошивки выше 2.6.6). Запрос осуществляется в интерактивном режиме.
https://www.open-homeautomation.com/201 ... nt-sensor/
https://wiki.hackerspace.pl/projects:xiaomi-flora
http://www.n8chteule.de/zentris-blog/20 ... ogramming/
Доступно :
- запрос версии прошивки
- получение процента остатка заряда батареи
- уровня соли почвы
- освещенности
- температуры
2) eq-3 radiator thermostat
https://github.com/Heckie75/eQ-3-radiat ... tat-api.md
Можно просматривать:
1) Текущий режим работы (auto, manual)
2) Режим отпуска (vocation)
3) Модель и серийный номер устройства
4) Целевая температура
5) Режим открыто окно
6) Включен ли режим быстрого нагрева (boost)
7) locked
8) Предупреждение о низком заряде батареи (lowbattery).
Управление пока не готово, но в планах.
3) Браслеты
mi bi band 1s и mi band 2
Доступно:
- уровень заряда батарей
- количество шагов за день
Список оборудования, поддержка которого планируется в дальнейшем:
1) LYWSDCGQ/01ZM (xiaomi ble гигротермограф) https://github.com/vitamin-caig/mitemp/ ... mp-poll.py
2) весы Gason S4
3) Чайник mi kettle (обменивается шифроваванными пакетами, поэтому маловероятно) https://4pda.ru/forum/index.php?showtop ... ry67207028.
Тестирование показало, что подключение устройств ble стабильно работает в пределах одного помещения. Через стены сигнал проходит с трудом. На aliexpress имеются стики с антенной, возможно это как то улучшит покрытие, я пока не тестировал.
Ссылка на актуальную версию модуля https://github.com/directman66/majordom ... ter.tar.gz
Модуль в коннекте: https://connect.smartliving.ru/addons/c ... 1/151.html (поддержать разработку можно тут)
Похожие темы:
http://majordomo.smartliving.ru/forum/v ... f=8&t=5459 про весы
http://majordomo.smartliving.ru/forum/v ... f=8&t=5501 ready for sky
Также как альтернатива, имеются интересные проекты шлюзов ble2mqtt для esp32.
https://github.com/1technophile/OpenMQTTGateway
https://connect.smartliving.ru/profile/ ... og126.html
https://github.com/zewelor/bt-mqtt-gateway