Комментарии 49
Т.е у яндекс станции с zigbee все еще нет нативной интеграции в home assistant? Мне кажется для гиков которые собирают умный дом (а умный дом это все еще занятие для гиков) это был бы большой плюс, чтобы купить яндекс станцию, а не home pod.
Ведь в HomeKit через bridge все устройства появляются в экосистеме apple и управляются без облака почти со всех устройств.
С HomePod можно слушать музыку с любым приложением с iphone и не тратить деньги на подписку яндекс.музыку
В общем яндекс впереди планеты всей :)
Яндекс наверное не для (2-3) гиков делает, а для простых пользователей и чтоб наименее замарочено было
Имхо, но и не будет. Умный Дом Яндекс (УДЯ) - Самостоятельная экосистема и ей банально не выгодно (в отличии от партнерства с Aqara) делать бесплатный и свободный доступ к их главному детищу. К тому же, станции по-прежнему полноценно без серверов не умеют работать из-за технических особенностей (но станция Миди уже имеет прогресс в этом направлении)
В УДЯ не так давно появилась поддержка Matter. Пока вроде не для всех доступна, и бета и с количеством поддерживаемых устройств проблемы. Но суть в том, что бридж в маттер в ХА сможет локально отдавать устройства в УДЯ. Точно так же как бридж ХК в ХоумПод.
Прекрасные интеграции, пользуюсь ими, но всё упирается в интернет (: Яндекс станции могут оффлайн давать команды только на Zigbee девайсы, которые связаны с ней.
Но если яндекс станция не работает без интернета, то какая разница? Либо интернет есть и всё управляется, либо интернета нет и станция не может распознать команду
С точки зрения "обественной" пользы мне кажется было бы полезно рассказать немного о програмировании zigbee на esp32, наверняка есть подводные камни. Мне кажется многие заинтересованные и не знают что есть такое.
Вместо ESP32 я бы взял TLSR825x:
Protocols: Supports Bluetooth LE 5.3, Bluetooth Mesh, Zigbee 3.0, Apple HomeKit (Bluetooth LE), and 2.4GHz proprietary
Bluetooth LE PHY: 1Mbps, 2Mbps, Long Range S2 (500Kbps), S8 (125Kbps)
Bluetooth LE Multi Connection:Master x 4 , Slave x 4
Location Service: RSSI, AoA/AoD (AoD is only supported in some Part Numbers)
MCU: Telink 32-bit, 48MHz;SRAM: 32~64KB;Flash: 512KB~1MB;GPIO: 10~32
I2C: 1;UART: 0~1;SPI: 1;USB: 0~1;PWM: 4~6;ADC: 14bit;AMIC: 1;DMIC: 0~1
Supply Voltage: 1.8V ~ 3.6V
Power Consumption: RX mode: 5.3mA TX mode: 4.8mA @ 0dBm with DCDC
Sleep Consumption: 0.4~1.4uA
Tx Output Power: 10dBm @ BLE mode
Rx Sensitivity: -96dBm @ BLE 1Mbps
Security: AES-128, ECC, TRNG
===================
У ESP32-C6 ток потребления в активном режиме при включенном приемнике в 14 раз больше. А при работе передатчика в 20 раз больше.
-------------------------------
Telink можно питать от CR2032.
Здесь есть одна деталь, которая позволяет не смотреть на ток потребления - ESP по факту у нас выступает не как отдельное устройство, а как USB свисток по типу Zigbee приёмника от того же Sonoff (для интеграции zigbee2mqtt например) т.е. у нас постоянное питание от USB.
А почему Вы не передаете в home assistant по Zigbee?
Этот аспект как раз описан в разделе "Проблема". Zigbee девайс может быть связан только с одним координатором, а Home Assistant и Яндекс станция оба являются координаторами сети.
Не понял. Что мешает сначала включиться в одну сеть, потом в другую?
Ваш ESP32 должен зарегистрироваться в двух сетях и потом переключаться между ними.
изначально идея как раз была именно такая, однако потом пришел к следующим выводам:
это довольно накладно по ресурсам т.к. придется для банальной передачи состояния вкл\выкл проводить инициализацию протокола 3 раза (для приема, потом для передачи и снова для приёма), что затратно по времени
Переключение между сетями делает крайне проблемным использование двух сетей, поскольку вы сможете отправлять по сути только одну команду за одну операцию, потому что после подачи сигнала одному каналу, ESP уйдет переподключаться и не будет слушать остальные команды
Банально нет необходимости в такой автономности, поскольку home assistant устанавливается на устройства с нормальными USB портами, что решает сразу две проблемы - задержки в передаче данных и питание платы.
Для реализации такого подхода придется писать прошивку с полного нуля без фреймворков, поскольку последние ориентированы на разработку конечных устройств и "из коробки" такого не умеют, что уже накладно по человеко-часам и ценности разработки.
а почему бы не передавать в ha все команды через mqtt?
Интересно получилось, я вот расстроился, когда со станции миди перешёл на Home Assistant, лишившись локального управления устройствами голосом. Жду продолжения)
вторую часть планирую написать когда доведу до ума интеграцию) Она сейчас вроде и работает, но много чего отсутствует для стабильной работы. Эту часть решил написать раньше, потому что я как программист не идеален и возможно знающим людям дам возможность разработать свой аналог, основываясь на моём решении.
Разве в НА нет интеграции с Алисой? Использую majordomo и zigbee2mqqt, все устройства через zigbee2mqqt интегрированы в мажордомо а из него уже взаимодействуют с Алисой (правда только через облако)
А Марусю кто-то смог интегрировать в HA?
Я смог, но пока только через интернет и белый айпи...
Можете рассказать подробнее?
HA виден в интернете (DuckDNS), но без https.
Создал в Марусе умный дом, но в приложении маруси при входе в HA (ввожу логин и пароль) и выбрасывает обратно).
Я руководствовался этой статьей: https://habr.com/ru/articles/649571/
Там надо руками делать yaml файл и скармливать сервису умного дома. А то что у вас на скрине - скорее всего надо зайти в ВК в настройки двухфакторной аутентификации и создать пароль приложения.
Да вот пробовал. Настроил аутентификацию, но вот пишет с восклицательным знаком "Получение доступа к https://vc.go.mail.ru" и дальше ничего не происходит...
Статью можно не читать. Автор изобретает мегакостыль, который нормально работать не будет.
Есть готовая Интеграция Yaha Cloud, в котором все реализовано, все работает более чем отлично. Нужно сделать пару нажатий кнопки. Никаких плат и прослоек не надо, возможна работа как через облако, так и напрямую.
https://docs.yaha-cloud.ru/v0.6.x/
Там же на сайте супердоккментация на Русском языке. Там описано абсолютно все.
Вы забыли нюанс - всё это работает только с интернетом. А фишка миди как раз в том что она умеет работать в офлайне, но только с зигби
почему же не будет нормально работать?
Как интеграция реализует оффлайн управление устройствами Home Assistant голосом когда интернет отсутствует?
Не вводите людей в заблуждение, интеграция и моя реализация решают разные задачи.
Яндекс подвёз "Быстрые команды". Т.о. интерпретация "включи свет", "выключи свет" уже работает локально на колонке.
И если б всё было zigbee и локально сопряжено с Алисой - локальное управление бы работало (предполагаю). "шлюз" в HA выглядит странненько, но так же потенциально через zigbee в Алису можно засунуть и не zigbee устройства? :)
Быстрые команды - фича не связанная с оффлайн и локальным управлением. Это возможность выполнять команды, не вызывая помощника триггер-словом "Алиса". И увы, но быстрые команды не работают в оффлайн режиме. Как раз уточнение в конце 1 скриншота наводит на выводы, что они работают всё же не локально.
Касательно обратной совместимости - это побочная фича моей реализации) Через плату мы по сути подключаем в УДЯ много лампочек, а на стороне HA можно навешать on\off триггер на что угодно, так что да, по факту мы имеем возможность управлять вообще чем угодно, что подключено к home assistant в т.ч. локальные wifi\bluetooth девайсы.
через ИК пульт еще можно
А Matter не позволит с 2 хабами говорить? Правда не знаю какие библиотеки есть для него
Matter интересная технология, о ней пока что еще мало что известно как для готового решения, поскольку всё же должна быть поддержка непосредственно в прошивке девайсов этой технологии. Здесь всё же более фундаментальная проблема в том, что HA и УДЯ являются роутерами, к тому же, например в данный момент УДЯ не умеет работать с bluetooth устройствами, как и с Wifi девайсами напрямую (нужен хаб). Аналогию я привел в одном из заголовков - HA и УДЯ являются разъёмами "мама-мама" т.е. напрямую мы не может их чисто технически никак связать, это устройства одного класса, они не умеют хранить какие-либо состояния как объекта, поэтому и нужна такая прослойка-ретранслятор в виде программируемого конечно девайса, который получается как переходник "папа-папа".
Matter это что-то вроде универсального SDK, как например Unity - один проект можно собрать и на пк, и на андроид, и на ios и в VR. Matter стандартизирует общение девайсов, но вроде как никаких новых фич он не привносит.
УДЯ получил поддержку Matter, но устройств, как и информации со стороны поддержки в HA у меня нет, поэтому эта тема остается неизвестной.
Есть локально работающая распознавалка голосовых комманд "Ирина" (автор присутствует на Хабре), которая элементарно вяжется с хоме-ассистент.
у самого Home Assistant уже есть встроенная поддержка голосовых ассистентов, но здесь всё же речь именно про станции Яндекс и их оффлайн работу с Home Assistant
Тут основное - нужны достойные микрофоны (массивы микрофонов, как на самой станции) если Ирину заводить на "обычном" -работает, но хуже.
Сам сейчас в поиске, есть несколько плат, но дороговато.
Через Яндекс Хаб будет работать?
Хочу переустановить HA, смогу все интеграции восстановить из резервной копии? Проблем не будет? А то там все что настраивал, уже забыл как делать. Будут какие нибудь подводные камни?
Что то не понял, как использовать Алису без доступа в Интернет.
Привет! Спасибо за статью, очень интересно, скорей всего попробую твою реализацию.
А ты не думал над тем что бы саму станцию сделать хабом для HA? и тогда бы проблемы с так называемым шлюзом отпала сама собой.
Да понимаю что наверное это еще сложней в реализации, и скорей всего нужна кастомная прошивка платы (отвечающей за zigbee) под zigbee2mqtt, но кажется это было бы идеальное решение, устройства были-бы одновременно и в ha на на станции (мои влажные мечты))))
Хотел бы послушать(почитать конечно)) что ты думаешь на этот счет, и на сколько это сложная реализация)
З.Ы. Потенциально я бы с удовольствием поучаствовал в реализации такого проекта.
Почему реализация идет вокруг именно HA - Алиса без интернета имеет крайне ограниченный функционал, а в онлайн режиме информацию с неё можно получить только через интернет (об устройствах), что уже противоречит подходу оффлайн умного дома. Не стоит так же забывать, что УДЯ - коммерческий проект Яндекса, который крайне маловероятно будет иметь свободный доступ к корневому функционалу) Я пошел по пути "проще то, что имеет открытый код".
Да, станция как хаб было бы хорошо, однако не стоит забывать банально о том, что она поддерживает так же ограниченный круг устройств, в то время, как Z2M расширяет диапазон девайсов, поэтому станция и идет как вторичное устройство, а не центральное.
Будет ли вторая часть? Получилось ли какое-то развитие?
Управляем умным домом Home Assitant через Алису и без интернета. Часть 1