
Статья XDA на прошлой неделе освещала то, что рано или поздно открывает каждый, кто обустраивает умный дом: телефон в вашем кармане уже транслирует BLE-идентификатор в тот момент, когда вы входите в дверь. Не нужно покупать какое-то специальное оборудование. Всё, что вам нужно — приложение, которое опубликует этот сигнал в Home Assistant, MQTT или Tasker, чтобы свет и термостат могли реагировать.
Мы протестировали семь приложений для Android, которые превращают телефон или набор BLE-маяков в датчик присутствия. Все они работают без облака производителя. Некоторые также работают как полные движки автоматизации после срабатывания события присутствия.
На что обратить внимание в приложении для определения присутствия по BLE
- Определение на уровне комнаты или дома. Wi-Fi геозоны дают уровень дома. BLE-маяки, разбросанные по дому, дают уровень комнаты.
- Протокол отчётности. MQTT — почти универсальный путь для Home Assistant. HTTP webhooks работают, но более шумны. Интеграции приложений-компаньонов часто полностью обходят MQTT.
- Стоимость батареи. Постоянное сканирование быстро разряжает датчиковый телефон. Ищите адаптивные интервалы сканирования или элементы управления foreground-сервисом.
- Устойчивость к OEM-ограничениям батареи. Samsung, Xiaomi и Huawei ставят агрессивные ограничения на фоновое сканирование. Некоторые приложения это хорошо обрабатывают, некоторые просят вас добавить их в белый список вручную.
- Только локально или через облако. Если приложение требует учётную запись перед тем, как сообщить о BLE, это не локальное решение для определения присутствия.
Быстрое сравнение
| Приложение | Лучше всего для | Бесплатный план | Особенность |
|---|---|---|---|
| Home Assistant | Определение присутствия приложением-компаньоном | Бесплатно, open-source | Встроенные сущности датчика Home Assistant |
| OwnTracks | MQTT-первое определение местоположения и присутствия | Бесплатно, open-source | Определение на уровне комнаты с BLE-маяками |
| Tasker | Полная автоматизация с BLE-триггерами | Платно $3.49 | Создание скриптов при любых условиях |
| Automate | Визуальная автоматизация потоков | Бесплатно, реклама на сложных потоках | Drag-and-drop BLE-узлы |
| MacroDroid | Дружелюбная для новичков автоматизация | Бесплатно с ограничениями, $6.99 pro | Понятные рецепты триггеров присутствия |
| nRF Connect | Диагностика BLE-маяков | Бесплатно с pro-уровнем | Сканер от Nordic для отладки |
| BLE Radar | Пассивный мониторинг BLE | Бесплатно с рекламой | Непрерывные логи маяков |
Семь приложений
1. Home Assistant Companion, лучше всего интегрированный датчик присутствия
Приложение Home Assistant для Android открывает каждый датчик телефона для вашего центра, включая монитор BLE-маяков и детектор присутствия на основе Bluetooth. После настройки каждый телефон становится сущностью device_tracker. В сочетании с интеграцией Bermuda на стороне сервера и несколькими маяками ESP32 вы получаете определение присутствия с точностью до комнаты без дополнительного программного обеспечения для Android.
Где он отстаёт: вам нужен запущенный где-то Home Assistant. Настройка маяков требует MAC-адресов и немного YAML.
Цена: Бесплатно и open-source. Опциональная подписка Nabu Casa на облако $6.50 в месяц для удалённого доступа.
Загрузка: Aptoide · Google Play
Вывод: Выбор по умолчанию, когда Home Assistant уже является центром.
2. OwnTracks, лучше всего MQTT-первый подход
OwnTracks — минималистичное приложение для отчёта о местоположении, которое публикует в MQTT. Оно поддерживает регионы iBeacon, поэтому маячок с батарейкой в спальне или офисе сообщает события входа и выхода, которые может обработать любой MQTT-брокер. В приложении нет облака производителя: ваш брокер, ваши темы, ваш контроль.
Где оно отстаёт: настройка не очень удобна для GUI. Вам нужно вручную настроить URL-адрес брокера, TLS-сертификат и префиксы тем. Надёжность фонового сканирования сильно зависит от производителя вашего телефона.
Цена: Бесплатно и open-source.
Загрузка: Aptoide · Google Play
Вывод: Выбирайте это, когда вы хотите сырые события маячков MQTT без центра посередине.
3. Tasker, лучше всего для полной автоматизации на телефоне
Tasker — ветеран движка автоматизации Android. Его BLE-условия срабатывают, когда конкретное устройство рядом или только что вышло из диапазона, и вы можете подключить этот триггер к любому другому действию Tasker: HTTP-пост, MQTT-публикация, уведомление, звук. Он работает хорошо как «на телефоне» половина системы определения присутствия, которая публикует в Home Assistant или Node-RED.
Где оно отстаёт: кривая обучения реальна. Интерфейс Tasker устарел, и его терминология требует вечера, чтобы её понять. Стоимость батареи при постоянном сканировании может быть высокой без тщательной настройки триггера.
Цена: Разовая покупка около $3.49.
Загрузка: Aptoide · Google Play
Вывод: Выбор опытного пользователя, когда сам телефон должен решить, что делать с BLE-событием.
4. Automate, лучше всего для визуального потока
Automate от LlamaLab охватывает похожую область, что и Tasker, но с редактором блок-схем вместо форм. Определение присутствия использует блок сканирования Bluetooth Low Energy, и выходы подключаются к HTTP-запросам или узлам публикации MQTT для умного центра. Вид потока облегчает понимание многоусловных правил присутствия.
Где оно отстаёт: сложные потоки требуют платную разблокировку. Узел BLE надёжен, но не поверхностно отображает каждый тип рекламы.
Цена: Бесплатно с ограничениями. Premium разблокирует потоки свыше 30 блоков, около $6 в приложении.
Загрузка: Aptoide · Google Play
Вывод: Выбор для людей, которые мыслят диаграммами, а не скриптами.
5. MacroDroid, лучше всего для первого приложения автоматизации
MacroDroid — самое дружелюбное из приложений автоматизации. Макросы, связанные с присутствием, уже находятся в библиотеке шаблонов, поэтому подключение «когда рядом конкретное BLE-устройство, выключить уведомления» занимает минуты. Интерфейс больше похож на экран настроек, чем на среду написания скриптов.
Где оно отстаёт: бесплатный уровень ограничивает вас пятью макросами. Опции сканирования BLE более поверхностны, чем в Tasker или Automate.
Цена: Бесплатно с ограничениями. Pro $6.99 разово.
Загрузка: Aptoide · Google Play
Вывод: Правильная отправная точка, если это ваше первое приложение автоматизации на Android.
6. nRF Connect for Mobile, лучше всего для отладки маяков
nRF Connect от Nordic Semiconductor — не движок присутствия сам по себе. Это инструмент, который вы держите в ящике на случай, если маячок перестанет сообщать. Приложение сканирует, записывает и воспроизводит рекламу BLE, поэтому вы можете увидеть, действительно ли упрямый датчик присутствия вещает или его батарейка-монета исчерпана.
Где оно отстаёт: нет автоматизации. Это диагностическое приложение, и хорошее, но не приложение, которое вы оставляете работающим как датчик присутствия.
Цена: Бесплатно.
Загрузка: Aptoide · Google Play
Вывод: Установите вместе с любым выбранным вами приложением автоматизации. Однажды это спасёт вас от сеанса отладки.
7. BLE Radar, лучше всего пассивный монитор
BLE Radar находится между диагностическими и приложениями автоматизации. Он сканирует непрерывно и логирует рекламу BLE, затем открывает ярлык и плагин Tasker для других приложений. Это полезно, когда вам нужен лёгкий слой датчиков, который другое программное обеспечение может опрашивать.
Где оно отстаёт: реклама в бесплатной версии. Интерфейс базовый. Нет прямой публикации MQTT, поэтому вам всегда нужно приложение-партнёр.
Цена: Бесплатно с рекламой. Опциональное пожертвование удаляет их.
Загрузка: Aptoide
Вывод: Тихий пассивный датчик, который другие инструменты автоматизации могут вызывать.
Как выбрать подходящее приложение
- Если вы уже используете Home Assistant, установите приложение Home Assistant Companion и остановитесь на этом.
- Если вы хотите конвейер, ориентированный на брокер, выбирайте OwnTracks.
- Если телефон также должен решить, что делать с событием, выбирайте Tasker или Automate.
- Если это ваше первое приложение автоматизации, начните с MacroDroid.
- Всегда держите nRF Connect под рукой на случай, если маячок умолкнет.
FAQ
Нужно ли мне специальное оборудование для определения присутствия по BLE? Нет. Ваш телефон уже транслирует BLE-идентификатор. Для точности на уровне комнаты вы можете добавить дешёвые платы ESP32 или маячки iBeacon с батарейкой-монетой, которые сообщают в Home Assistant.
Какое приложение имеет самую низкую стоимость батареи для постоянного сканирования? Home Assistant Companion наиболее настроен. OwnTracks близко. Tasker и Automate можно настроить, но параметры по умолчанию более тяжёлые.
Будет ли определение присутствия по BLE работать на телефонах Samsung? Да, но вы должны добавить приложение-датчик в белый список в параметрах батареи Samsung Device Care, чтобы фоновое сканирование не было задушено.
Могу ли я определить конкретные комнаты только со своим телефоном? Не надёжно. Точность на уровне комнаты требует несколько пассивных маяков, разбросанных по дому. Телефона достаточно только для сигналов на уровне дома присутствия/отсутствия.
Требуется ли Home Assistant? Нет. OwnTracks сообщает непосредственно любому MQTT-брокеру, и Tasker или Automate могут запускать локальные действия на телефоне без какого-либо центра.