- Что можно было бы сделать лучше
- Что можно сделать ещё
- Автоматический полив цветочков
- Алиса, открой ворота
- Беспроводные выключатели, кнопки и пульты
- Влажность, температура, co2
- Внешние розетки и удлинители
- Внимание, мошенники!
- Встраиваемые выключатели
- Голосом
- Движения
- История рождения моего умного дома
- Клапаны и вентили
- Лампочки
- Локальное управление яндекс.розетками
- Ну, а теперь по порядку, немного теории
- Поддерживаемые типы устройств
- Подключение устройств
- Полная локализация
- Появление голосового управления
- Предпосылки
- Приводы для штор или жалюзи
- Релейные модули
- Сердце умного дома
- Скажи «друг» и войди
- Список устройств
- Умный дом и дети
- Управление и коммутация
- Управление яндекс станциями
- Через приложение дом с алисой
Что можно было бы сделать лучше
Наверняка — почти всё. У меня всё получилось всё настолько быстро, что я не успел прочитать, как это делать правильно. Очевидные косяки есть такие:
- Можно было бы использовать зигби. Но при моём количестве устройств две точки Keenetic в меш сети вполне тянут всё на вайфае, так что не хотелось дополнительной магии. А проблемы интерференции сетей в отдельном домике в подмосковье не существует.
- Можно было бы писать в один топик все показатели от датчика CO2/температуры/влажности. А потом парсить. Но было лень, да и места в очереди не жалко.
- Все устройства на микроконтроллерах можно было сделать с self discovery, чтобы не писать конфиг в HA, а он сам их находил и отрисовывал нужные иконки и контролы. Но лень.
- Можно было бы использовать что-то вроде ESPHome, что позволяет прошивку и обновление устройств по воздуху. Но с моим пятком датчиков мне стало лень в этом разбираться, так что сделал как шесть лет назад.
- Наверняка, ты, читатель, тоже увидел, что можно было сделать лучше или проще — подскажи!
Что можно сделать ещё
Так же у меня возникали следующие мысли:
- Поставить сервопривод на регулятор котла, чтобы менять температуру воды. У меня нет бойлера, так что регулировать температуру надо на котле. И бывает нужно тёплую, а бывает — кипяток. Бегать крутить ручку неудобно. Так же можно регулировать и отопление, но меня не обламывает это делать руками при изменении погоды. Хотя можно было бы приглушать отопление на ночь…
- Ребёнок просил сделать алярм на случай, если проспал все будильники. Думаю, что датчик движения плюс станция вполне решат эту задачу.
- Иногда хочется умных штор, но пока что это из той серии, что проще сделать руками. Да и для них надо добавлять специальные устройтва, от которых скорее всего останутся следы в стенах. Так что отложим.
- Ещё наверное дойду до того, чтобы поставить датчики протечек, газа и огня. Протечки уже случались, и было бы неплохо хотя бы оперативно на это смочь среагировать.
Автоматический полив цветочков
Листая каталог компонентов, случайно наткнулся на набор для полива, который состоит из датчика влажности земли (втыкается в землю), реле и небольшого насоса.Процесс шёл всё быстрее, и вот уже ещё один контроллер сообщает мне о влажности земли и сам поливает цветочки.
Правда, пока я пришёл к выводу, что собирать такое на каждый горшок — дороговато. Достаточно просто засунуть его в один горшок и при его высыхании слать напоминалку (лучше поливать всё одинаково, чем забыть на пару недель). Кроме станции, напоминалки у меня так же настроены в телеграмм, но настройка этого настолько тривиальна, что даже писать об этом стыдно.
Алиса, открой ворота
Въедливый читатель наверняка заметил, что Алиса на текущем этапе мне ворота не откроет. Она по них не знает. И здесь нам на помощь приходит интеграция с умным домом яндекса. Которая тоже настраивается за 10 минут и передаёт туда все устройства, которые ты указал, и которые ему понятны.
Теперь я могу управлять домом тремя способами:
- Админка Home Assistant через локальную сеть;
- Та же админка через интернет, выкинутая туда штатными средствами Keenetic — KeenDNS;
- Алиса, которая дёргает Home Assistant через пункт 2.
Видел много статей, которые предлагали другие средства вроде использования Blink или “домовёнка кузи” — но зачем умножать сущности, если можно этого не делать?
Как дополнительный неочевидный бонус, такая интеграция позволяет раздать управление умным домом через Алису всему семейству, чего штатно в Умном Доме Яндекса до сих пор, кажется, нет.
Беспроводные выключатели, кнопки и пульты
Часть производителей смешивает понятия выключателя и кнопки, поэтому название может отличаться от тех конструкции и поведения, к которым мы привыкли. Во избежание путаницы оставлены оригинальные названия устройств.
Aqara | |
Wireless Mini Switch | |
Модель: WXKG11LM Подключается | |
Протокол | Zigbee |
Показания | кнопка, заряд |
Условия для сценария | нажатие, двойное нажатие, долгое нажатие, уровень заряда |
Ссылки | AqaraAliexpressЯндекс Маркет |
Wireless Mini Switch (Advanced) | |
Модель: WXKG12LM Подключается Есть особенности | |
Протокол | Zigbee |
Показания | кнопка |
Условия для сценария | нажатие, двойное нажатие, долгое нажатие |
Особенности | отсутствует встряхивание |
Ссылки | Яндекс Маркет |
Выключатель одноклавишный (2022) | |
Модель: WXKG03LM_rev1 Не подключается | |
Протокол | Zigbee |
Сенсорный двухлинейный выключатель Livolo ZigBee | |
Модель: VL-C702Z-11 Не подключается | |
Протокол | Zigbee |
Выключатель одноклавишный (2022) | |
Модель: WXKG03LM_rev2 Подключается | |
Протокол | Zigbee |
Показания | кнопка, заряд |
Условия для сценария | нажатие, двойное нажатие, долгое нажатие, заряд |
Выключатель двухклавишный (2022) | |
Модель: WXKG02LM_rev1 Не подключается | |
Протокол | Zigbee |
Выключатель двухклавишный (2022) | |
Модель: WXKG02LM_rev2 Подключается Есть особенности | |
Протокол | Zigbee |
Показания | кнопка, заряд |
Условия для сценария | нажатие, двойное нажатие, долгое нажатие, заряд |
Особенности | отсутствует нажатие, двойное, долгое нажатие на 2 клавиши |
D1 ◦ Выключатель двухклавишный | |
Модель: WXKG07LM Подключается Есть особенности | |
Протокол | Zigbee |
Показания | кнопка |
Условия для сценария | нажатие, двойное нажатие, долгое нажатие |
Особенности | подключилась только левая клавиша. Правая не работает. |
H1 ◦ Выключатель двухклавишный | |
Модель: WRS-R02 Не подключается | |
Протокол | Zigbee 3.0 |
Opple ◦ Выключатель на 2 кнопки | |
Модель: WXCJKG11LM Не подключается | |
Протокол | Zigbee 3.0 |
Opple ◦ Выключатель на 4 кнопки | |
Модель: WXCJKG12LM Не подключается | |
Протокол | Zigbee 3.0 |
Opple ◦ Выключатель на 6 кнопок | |
Модель: WXCJKG13LM Не подключается | |
Протокол | Zigbee 3.0 |
Ikea Tradfri | |
Беспроводная кнопка | |
Модель: E1743 Не подключается | |
Протокол | Zigbee |
Lonsonho | |
Беспроводная кнопка | |
Модель: TS0041 Не подключается | |
Протокол | Zigbee |
Moes | |
Кнопка с возможность поворота | |
Модель: ERS-10TZBVK-AA Не подключается | |
Протокол | Zigbee |
Xiaomi Mi (Mijia) | |
Беспроводная кнопка ◦ Wireless Mini Switch | |
Модель: WXKG01LM (YTC4040GL) Подключается Есть особенности | |
Протокол | Zigbee |
Показания | кнопка, заряд |
Условия для сценария | нажатие, двойное нажатие, заряд |
Особенности | отсутствует долгое нажатие |
Ссылки | AliexpressЯндекс Маркет |
Влажность, температура, co2
Как я уже упоминал выше, у меня уже шесть лет работает собранный на коленке датчик. Оставалось только прикрутить к нему публикацию данных через MQTT. Что тоже было сделано с лёгкостью, приводящей в изумление.
Опять же не буду на этом останавливаться — конфиг для HA есть в репозитории.
Внешние розетки и удлинители
Особенность для всех розеток: пока что нет поддержки энергомониторинга и розетка не может выступать в качестве условия в сценариях
Внимание, мошенники!
Кстати, про Яндекс.Станции. С рук покупать очень не советую – оказалось, что есть станции по подписке – продается конкретному человеку и 3 года он должен платить по 400 рублей в месяц. Никому такую передавать нельзя – она залочена на учетку того, кому ее Яндекс отдал.
То есть они не для продажи. Ни на коробке, ни на станции, ни при включении она ничем не отличается от обычной (только, кажется, глуховатые, кстати). Но через 10 минут работы говорит «оплатите подписку» и вообще не работает никак. Поддержка Яндекса может проверить по номеру, но отвечают через день – явно долго для проверки при покупке.
Встраиваемые выключатели
Особенность для всех встраиваемых выключателей: пока что нет поддержки энергомониторинга и выключатель не может выступать в качестве условия в сценариях
Голосом
Для того, чтобы подключить Zigbee устройство голосом, нужно проделать следующие шаги:
- Сказать Алисе из Станции 2: “Алиса, найди устройство” или “Алиса, найди несколько устройств“
- Сразу после активации поиска нужно перевести устройство в режим подключения (Способ сброса указан в инструкции, а также в таблице ниже)
Движения
Aqara | |
Датчик движения и освещения ◦ Motion Sensor | |
Модель: RTCGQ11LM Подключается | |
Протокол | Zigbee |
Показания | движение, освещённость, заряд |
Условия для сценария | движение, нет движения (1/2/5/10 мин), освещённость, заряд |
Сброс | нажать и удерживать кнопку до тех пор, пока индикатор не моргнёт 3 раза |
Ссылки | AqaraAliexpressЯндекс Маркет |
Irbis | |
Датчик движения ◦ Motion Sensor | |
Модель: IRHMS10 Не подключается | |
Протокол | Zigbee |
Life Control | |
Датчик движения ◦ Motion Sensor | |
Модель: MCLH-05 Подключается | |
Протокол | Zigbee |
Показания | движение |
Условия для сценария | движение, нет движения (1/2/5/10 мин) |
Особенности | Отсутствует уровень заряда |
Ссылки | Life ControlAliexpressЯндекс Маркет |
Philips Hue | |
Датчик движения, освещённости, температуры | |
Модель: SML001 Не подключается | |
Протокол | Zigbee 3.0 |
Показания | движение, освещённость, заряд |
Особенности | датчик не передаёт показания, в сценариях участвовать не может |
Sonoff | |
Датчик движения | |
Модель: SNZB-03 Не подключается | |
Протокол | Zigbee 3.0 |
Tuya | |
Датчик движения | |
Модель: JMWZG06 Не подключается | |
Протокол | Zigbee |
Датчик движения | |
Модель: TS0202 Не подключается | |
Протокол | Zigbee |
Booox Mini Датчик движения | |
Модель: ZMS-102 Не подключается | |
Протокол | Zigbee |
Xiaomi Mi (Mijia) | |
Датчик движения | |
Модель: RTCGQ01LM Подключается | |
Протокол | Zigbee |
Показания | движение, заряд |
Условия для сценария | движение, нет движения (1/2/5/10 мин), заряд |
Ссылки | AliexpressЯндекс Маркет |
Триколор | |
Датчик движения | |
Модель: GS SMHM-I1 Не подключается | |
Протокол | Zigbee |
История рождения моего умного дома
На момент начала моей автоматизации, у меня были штук 6 устройств SonOff (у них родное приложение и облако – eWeLink), управлял розетками на даче. И поставил камеры Xiaomi Dafang (камеры не понимали русский, но это PTZ, FullHD, да еще и стоили всего 2 тысячи рублей каждая).
Камеры принесли на дачу постоянный интернет (мобильный), роутер. А также облако Xiaomi. Итого, 2 облака – Xiaomi eWeLink. Надо было собирать в единую панель управления. Первым был установлен HomeAssistant, даже игрался с камерами (хотел на датчик движения у камер прикрутить и сохранять в системе).
Но дальше скриншотов, и то не всегда, дело не пошло. С SonOff вообще не смог подружить. Решив, что логика для розеток все-таки важнее, начал играться с MajorDomo, который имел для этих устройств коннектор, а также более-менее понятный интерфейс настроек (субъективно, да, php html, объектно-ориентированная модель).
Первый тревожный звоночек пришел от Роскомнадзора – в попытке убить телеграмм (безуспешной) они прибили доступ ко многим облакам, в том числи и Xiaomi. В середине зимы было очень неприятно оказаться без видеонаблюдения за дачей, расположенной в 100 км от дома..
Итог – камеры перепрошиты на Dafang Hack (прошивка делающая локальный RTSP сервер потокового видео) и первая моя Raspberry c MotionEyeOS (локальный видео сервер), а также белый IP дома и VPN между домом и дачей (на роутерах Mikrotik). Локальный сервер держит архив на 500Гб (пара месяцев с двух камер), питается от аккумулятора (до 3 дней без света).
Для логики нужно не только управлять, но и контролировать, для этого купил SonOff POW R2 – это фактически, счетчик электроэнергии с выключателем на 16А (стоимость по 750 рублей). Это позволило при включении посудомоечной машины, бойлера для воды (суммарно 4 кВт) блокировать розетку с чайником.
Сейчас это модно называется DemandResponse. А так же стало возможно контролировать работоспособность насосов водоснабжения и канализации (по графику дренаж включается и на графике мощности есть пики, по которым можно понять, много ли воды и вообще, не завис ли поплавок!) – дистанционная диагностика оборудования.
Так же для управления низковольтными устройствами (включение дизельного отопителя, насоса аэрации воды для очистки, отключения зарядника от аккумулятора, когда нет напряжения в сети СНТ) был куплен клон SonOff G4 – четырехканального реле с радиопультом (еще 1100 рублей).
Второй «звоночек» пришел от eWeLink – с выходом в массы устройства контроля напряжения SonOff POW R2 поток через их сервер, видимо, стал превышать их возможности (ток, напряжение, мощность активная, мощность реактивная, мощность полная, коэффициент мощности и все это 5 раз в секунду с каждого такого устройства) и они решили, что датчики будут телеметрию слать один раз в минуту.
Итог – модуль MojorDomo для локального режима SonOff и окончательный переход на MajorDomo на Orange Pi (стоила около 1000 рублей всего, пришлось осваивать Linux, а точнее – Armbian и по инструкциям ставить MajorDomo).
Клапаны и вентили
Важно! Данный тип не поддерживается, но устройства могут добавиться как другой тип. Работоспособность не гарантируется!
Лампочки
Особенность для всех ламп: пока что нет поддержки RGB (смен цветов) и режимов (сцен)
Aqara | |
E27 ◦ Умная лампочка | |
Модель: ZNLDP12LM Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость, изменить цветовую температуру |
Ссылки | AqaraAliexpressЯндекс Маркет |
Gledopto | |
E14 RGB ◦ Лампочка разноцветная | |
Модель: GL-B-001P Не подключается | |
Протокол | Zigbee 3.0 |
Особенности | не работает (добавляется с температурой и яркостью, но на изменения не реагирует) |
Ссылки | Aliexpress |
MR16 RGB 2700-6500K 300lm ◦ Лампочка разноцветная | |
Модель: GL-S-004Z Подключается Есть особенности | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость, изменить цветовую температуру |
Сброс | выключить и включить 6 раз |
Особенности | отсутствует RGB (смена цветов) |
Ссылки | Aliexpress |
Ikea Tradfri | |
E27 2700K ◦ Лампочка тёплый белый | |
Модель: LED1836G9 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
E14 2700K ◦ Лампочка тёплый белый | |
Модель: LED1649C5 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
GU10 2700K 400lm ◦ Лампочка тёплый белый | |
Модель: 20410421 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
GU10 2700K 400lm ◦ Лампочка тёплый белый | |
Модель: LED1650R5 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
Сброс | выключить и включить 6 раз |
Life Control | |
E27 ◦ Умная лампочка разноцветная | |
Модель: MCLH-02 Подключается Есть особенности | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость, изменить цветовую температуру |
Особенности | отсутствует RGB (смена цветов), криво изменяется цветовая температура |
Ссылки | AliexpressЯндекс Маркет |
Philips Hue | |
E27 ◦ Умная лампочка белая | |
Модель: уточняется Подключается Есть особенности | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
Ссылки | Philips |
E27 ◦ Умная лампочка белый и цветная атмосфера | |
Модель: LCA001 Подключается Есть особенности | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость, изменить цветовую температуру |
Особенности | отсутствует RGB (смена цветов) |
GU10 2700K 400lm ◦ Умная лампочка | |
Модель: LWG004 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
Trust | |
E27 2700K ◦ Умная лампочка тёплый белый | |
Модель: ZLED-2709 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
E14 2200K ◦ Умная лампочка | |
Модель: ZLED-EC2206 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
GU10 2700K 350lm ◦ Умная лампочка | |
Модель: ZLED-G2705 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость |
Сброс | выключить и включить 6 раз |
GU10 2200-6500K 350lm ◦ Умная лампочка | |
Модель: ZLED-TUNEG6 Подключается | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость, изменить цветовую температуру |
Сброс | выключить и включить 6 раз |
GU10 350lm ◦ Умная лампочка разноцветная | |
Модель: ZLED-RGBG6 Подключается Есть особенности | |
Протокол | Zigbee |
Управление | вкл/выкл, изменить яркость, изменить цветовую температуру |
Сброс | выключить и включить 6 раз |
Особенности | отсутствует RGB (смена цветов) |
Локальное управление яндекс.розетками
Вокруг красота, и я всем могу управлять через HA. Кроме розеток, что в целом пофигу, но я начал комплексовать и начал думать, что можно с этим делать. И тут подумал о том, что Keenetic и HA оба находят у меня устройства tuya, и это ЖЖЖ явно не спроста!
Долго ли коротко ли, оказалось, что Яндекс Розетки построены на OEM решении Tuya. Что в общем скорее хорошо, чем плохо, поскольку работает это решение хорошо, и добавочной стоимости это не создаёт.Но мне хотелось управлять ими через HA, то что я сначала переподцепил их через родное приложение и попробовал интеграцию с облачной туей.
У меня она не взлетела, и тут я обнаружил, что есть хитрый способ подключить их локально через расширение LocalTuya — но тут потребовались пляски с бубном, девелоперский аккаунт и получение локального ключа. Однако, всё заработало, и теперь я могу ими управлять как из локальной сети, так и через УДЯ (Умный Дом Яндекса), куда прокинул их через тот же HA и KeeneticDNS.
Ну, а теперь по порядку, немного теории
Умным домом принято называть что угодно, от 2 лампочек, управляемых по таймеру до сложной системы, реагирующей на множество факторов и делающей жизнь владельца комфортной.
В любом случае речь про управление устройствами, кратко их можно собрать в группы:
Бытовая техника (пылесосы, телевизоры, чайники, кондиционеры)
Реле/выключатели (вкл/выкл)
Лампочки/ленты (меняют цвет и яркость)
Датчики (мощность, напряжение, температура, влажность, концентрация газов)
Диммеры (пропорциональный выходной сигнал)
Исполнительные устройства (регуляторы температуры, привод штор)
Шлюзы (пульты, универсальные передатчики команд)
Построение умного дома начинается с выбора платформы. Разные платформы имеют разную функциональность, стоимость, сложность настройки. Например:
Умный дом Яндекс – нет логики, только команды, много совместимых устройств
Xiaomi (Aqara) – простые скрипты
Google Home – простые скрипты, много совместимых устройств
Domoticz – ограничен набор устройств, развитая логика
IFTTT – ограничен набор устройств, развитая логика
HomeAssistant – ограничен набор устройств, развитая логика, настройка интерфейса плагинами
Majordomo (php) – развитая логика, открытый проект, активно развивается, требует умения программировать.
Нужно заметить, что платформы от именитых производителей умеют работать друг с другом. То есть их экосистемы можно объединять, что существенно расширяет перечень подключаемых устройств. Кстати, о подключениях тут есть 2 аспекта: как подключаться физически и как общаться с концентратором умного дома.
Физически можно связываться через локальную компьютерную сеть (проводную или беспроводную), сеть малого радиуса (Bluetooth, ZigBee) или просто по радио или инфракрасному каналу (последнее обычно только в одну сторону работает).
Что же касается «языка» на котором общаются устройства, то тут вариантов много, но можно разделить на открытые (общедоступные) типа mqtt (сервис коротких сообщений через центральный сервер) или web-hook (обычные прямые ссылки на веб-сервер на борту устройства) и закрытые типа протокола Xioami/Redmond и прочих, которые известны только производителям.
Устройства – это хорошо, но что же ими управляет? Центральное устройство/ центр управления. Кстати, хабы типа Aqara это нифига не центральный модуль, а всего лишь концентратор сети ZigBee или какой иной, понравившейся производителю – логика остается в самих устройствах или на телефоне пользователя или в облаке.
Насколько я понял, большинство облачных сервисов не поддерживают логику. То есть в «Яндекс доме» можно узнать температуру и включить обогреватель. Но заставить Яндекс следить за температурой и держать в комфортном диапазоне – нет!
Для реализации логики нужен центральный блок, причем желательно локальный. Вот тут вариантов масса – поставить на свой домашний комп программу управления, собрать отдельный сервер, разместить сервер в облаке.
Как ни странно, дешевые микро ПК на ARM процессорах, например OrangePi, Nano Pi и прочие фруктовые Пи вполне тянут систему с базой данных, брокером сообщений и веб-интерфейсом. Не говорю уже про Raspberry – это вообще, как заговоренные.
Из программных серверов умного дома можно выделить популярные: Blynk (есть вариант облака и локальный), IFTTT (чисто облако, но с мобильным приложением), Home Assistant, Domotics, Majordomo.
Поддерживаемые типы устройств
- Беспроводная кнопка
- Выключатель (беспроводной и встраиваемый)
- Релейные модули
- Умная розетка (внешняя и встраиваемая)
- Умная лампа
- Датчик движения
- Датчик открытия
- Датчик освещённости
- Датчик вибрации
- Датчик протечки
- Датчик температуры и влажности
Конкретные модели могут не поддерживаться из-за особенностей реализации со стороны производителей. Также на данный момент пока что не поддерживаются следующие типы устройств:
- Привод для штор или жалюзи
- Удлинитель
- Умный замок
- Термоголовка
- Куб управления
- Диммер
- Датчик дыма
- Датчик газа
Подключение устройств
Есть несколько способов запустить процесс настройки:
Полная локализация
Так как умный дом к этому моменту управлял в том числе зарядкой аккумулятора и переключением на инвертор в случае аварии, зависеть от облака на «вражеских» серверах, а так же наличия связи с интернет показалось не очень разумной идеей.
Очередной шаг – перепрошивка всех устройств на Tasmota, отказ от протокола eWeLink и уход на MQTT. Это, кстати, открыло путь в полный лоукост – прошивка легко настраивается, а плата Wemos из Китая стоит всего 120 рублей, при этом на борту 12 линий для подключения периферии, АЦП, WiFi.
Так число устройств в умном доме увеличилось раза в 3 – выключатели, датчики напряжения на АКБ, датчики температуры и влажности (кстати, оказалось, что лучший AM2301 – это AM2320! Программно совместим с AM2301, который еще называют DHT21, но при этом стабилен, не глючит и не зависает).
Тут Остапа понесло и в умном доме появились солнечные панели, 2 контроллера (один PWM, второй – MPPT), датчики тока от солнечных панелей в систему и на АКБ (просто по напряжению на клеммах степень заряда не измерить). От АКБ, кстати, на этот момент питаются 3 камеры, 2 микросервера, 2 роутера, общее потребление примерно 40Вт постоянно.
После примерно полугода, когда все было настроено и отлажено пришла беда – умерла карта памяти. Свежего бэкапа не оказалось – все ждал идеального состояния, не дождался. Изучил, какие карты бывают – узнал про MicroSD A2 – это карты с контроллером, как у SSD дисков – то есть много и часто писать/читать мелкие файлы им не страшно.
Настроил, по памяти восстановил логику и оформление, сделал бэкап. Через месяца три началось неладное – зависания, тормоза при открытии графиков за месяц. Анализ (я почти стал спецом по Linux) показал, что база данных тупит из-за очень большого числа накопленных данных.
Пришлось делать удаление старых данных, оставляя только по 2 отсчета за минуту для данных старше месяца. Помогло, но не сильно. Надежда была на плату с большим объемом памяти – Orange Pi One Plus (700 рублей), но не судьба.
В итоге куплена Raspberry Pi4 c 2Гб памяти на борту, а для этой палаты есть оптимизированный образ MajorDomo – и о чудо, там все отлично – БД крутится полностью в памяти, раз в час сбрасывается на карту бэкап, в случае незапланированного падения, при загрузке восстанавливается состояние на начало часа.
Все это было отлично, управляется с компьютера, с телефона (экран на картинке – там 2 таких сцены, одна для управления и климата, вторая для телеметрии).
Но вот беда – чтобы включить свет надо все равно тянуться за телефоном и тыкать мелкие кнопки. А на даче еще и родители бывают, а для них много кнопок на экране – слишком сложно.
Появление голосового управления
И вот тут я задумался, что пора подключать голосовой помощник. Сначала думал про Google Assistant/Home, но увидав, что они творят со своим президентом, да еще к новому году отключили поддержку русского на колонках (оставив только на телефонах), решил, что вполне реально повторение с отключенными облаками Xiaomi и eWeLink.
В итоге, Алиса от Яндекса. Каково же было мое удивление, когда увидел, что есть стандартный коннектор (навык Алисы) к MajorDomo! Яндекс станция мини отлично подошла по функциям и размеру, более того, нашел и обратный коннектор – из MajorDomo можно выдавать команды на устройства, подключенные к Алисе – пультам кондиционеров, телевизиров и даже роботу-пылесосу.
И это не считая проговаривания статусов типа «внимание, работаем от аккумуляторов!». Соединение с Алисой можно сделать двумя способами – через платный сервис Connect (2 тысячи рублей в год, бонусом облачные бэкапы) или через Яндекс.
Диалоги – для этого надо SSL сертификат на сайт, белый IP, и выставленный в интернет сайт с MajorDomo, то есть свет или отопление сможет отключить случайный прохожий. В общем, 2к в год – не большая цена за сохранение комфорта, да и SSL покупать не надо.
Естественно, управление через Яндекс – это чисто функция комфорта, основная логика реализована на локальном уровне.
Итак, затраты:
Количество физических устройств не соответствует числу управляемых каналов – одно 8 канальное реле – это датчик тока и 8 выключателей! Так что общее число устройств в системе – 68 (и это не считая Яндекс.Станции и устройства не на даче, только то, что управляется локально!).
Предпосылки
Мне всегда казалось, что умный дом это и сложно и какой-то бессмысленный выпендрёж.
Сложно — потому что надо изучать всякие там зигби, ставить шлюзы, контроллеры, интегрировать какие-то штуки, и вообще по хорошему надо нанимать бородатых дядек, которые сделают всё как нужно. И ещё и наверняка проводку для этого менять надо.
Выпендрёж — потому что меня всегда смущал основной вариант умного дома — управление светом. До сих пор не могу понять, зачем управлять им голосом, хлопками или датчиками движения. Поднять пятую точку и нажать выключатель — хоть какая-то разминка!
Кроме того, живу я с детьми по съёмной жилплощади, а хозяева за такую самодеятельность вряд ли спасибо скажут. Да и с собой не прихватишь при выезде. Как мне казалось.
Тем не менее, накопилось значительное количество несистематизированных огрызков:
- Ещё в далёком 2022 я собрал свой датчик CO2, температуры и влажности.
- На новый год ребёнок выпросил себе светодиодную ленту. Потратив какое-то время, я выбрал RGB ленту с умным контроллером MagicHome, которая внезапно сопряглась с Алисой. И это было прикольно.
- На новый год мы украсили на улице ёлку гирляндами. Когда мне надоело включать её руками, я заказал розетку яндекса и составил расписание включения. Заодно подключил так же уличный свет, выключатель которого висел крайне неудобно. К слову, розетки с честью выдержали нерегламентированные -15 на улице и продолжали бодро щёлкать реле.
- Периодически я призывал домой клининговый сервис, и каждый раз был квест с тем, как им оставить и забрать ключи. Очень хотелось решить это при помощи какого-то способа удалённого управления раздвижными воротами.
- У детей завелось две Яндекс.Станции, с которыми они активно общаются и слушают музыку.
В общем, я решил, что критическая масса накопилась, и пора бы посмотреть, что можно сделать. Я думал, это будет долгоиграющий проект на долгие зимние вечера, но внезапно всё получилось буквально за пару вечеров, чему я страшно удивился.
Приводы для штор или жалюзи
Важно! Данный тип не поддерживается, но устройства могут добавиться как другой тип (например, освещение - "вкл" и "выкл" вместо "открыть" и "закрыть"). Работоспособность не гарантируется!
Релейные модули
Особенность для всех релейных модулей: пока что нет поддержки энергомониторинга и релейный модуль не может выступать в качестве условия в сценариях
Сердце умного дома
Какое-то время я листал имеющиеся решения, и в глазах рябило от жутких разноцветных квадратов и прочих решений, интерфейсы к которым писали очевидно враждебные рептилоиды. В конце концов я нашёл то, что не вызывало отторжения и даже выглядело симпатично — Home Assistant. Выглядеть инсталлиция может, например, так.
Рассказывать долго про него буду, на хабре уже есть десятки статей, скажу лишь, что установка заняла примерно полчаса. Из которых 20 минут я придумывал, как мне работать с машинкой без клавиатуры и удалённого доступа.
Когда я вошёл в поднятую инсталляцию, он быстренько подцепил мой Keenetic City роутер, выдал информацию про все устройства, сам нашёл диодную ленту и телевизор. Что меня приятно удивило. Так же удивился количеству и качеству имеющихся интеграций. К тому моменту я смирился, что надо будет что-то писать на питоне, но этого так и не потребовалось.
Скажи «друг» и войди
Сначала я решил попробовать задачку, которая болела больше всего — открывать ворота.Лезть внутрь них и что-то добавлять мне очень не хотелось, как и делать так, чтобы они работали только через умный дом — это лучший способ в один прекрасный момент остаться за закрытыми дверьми.
Забудьте про безопасность, динамические ключи и прочие вещи, которые давали вам спокойно спать. Пара трансмиттер-ресивер за 200 рублей может считать ключ от ворот CAME при нажатии на кнопку открытия ворот, и воспроизвести сигнал. Остаётся дело за малым — затащить это в Home Assistant.
Мне казалось, что MQTT это какая-то страшная аббревиатура, и сейчас я обложусь литературой и буду вникать, но… Оказалось, что это обычный pubsub, для которого есть библиотеки Arduino, и который цепляется в Home Assistant парой строчкой конфига. Всё это есть в репозитории по ссылкам выше, так что не буду останавливаться здесь подробнее. За вечер мне удалось и считать сигнал и воспроизвести его и затащить кнопкой в Home Assistant.
Минус у такого решения только один. Ворота довольно тупые, и единственная кнопка, которая у них есть — это “изменить текущее состояние”. Поэтому нельзя быть уверенным, ты открываешь ворота, закрываешь, или останавливаешь процесс. К счастью, это по большей части решает видеокамера, направленная на них.
Да, можно было бы залезть в сами ворота и поставить там таймер на закрытие, который есть штатно, но повторюсь, что мне очень не хотелось что-то разбирать из местного хозяйства. Так что минимальная инвазивность решения для меня искупила его минусы.
Список устройств
Маленькое напоминание: список постоянно пополняется, и в его развитии можете принять участие и вы, если располагаете информацией, которой здесь нет (подробнее смотрите плашку вверху страницы). В списке проверено 120 устройств.
Умный дом и дети
Детям очень зашла эта несложная магия, а старшая даже написала в УДЯ небольшой сценарий:
- Заходишь к ней, и колонка говорит “закрой дверь и выключи свет!” — и повторяет это, пока не сделаешь, как велено.
- Включается стробоскопическое красно-синее освещение и страшная музыка.
- Колонка говорит “Её я уже съела, а теперь и ты попался!”
Управляется это, правда, не хитрой автоматикой, а ребёнком, спрятавшимся в шкафу. Но вау эффект на детей делает. Тут мог бы быть смайлик, но сами знаете.
Кроме того, можно придумывать небольшие игры и шутки:
Управление и коммутация
В этой группе собраны устройства, которые либо сами управляют нагрузкой, либо отдают такую команду другим устройствам (пример – беспроводные кнопки).
Управление яндекс станциями
Это уже в общем-то из серии “потому что могу”. Заметил, что есть интеграция с яндекс станциями, которая позволяет говорить в них Алисой. Вроде бы фигня, но настроил, чтобы Алиса говорила мне о том, что пора проветрить, и предупреждала, что пора заваривать чай к стендапу (очень помогает его не продолбать).
Через приложение дом с алисой
Для того, чтобы подключить Zigbee устройство через приложение “Дом с Алисой”, нужно проделать следующие шаги:
- Нажать на в правом верхнем углу основного экрана
- Перейти в Устройство умного дома
- Нажать на Начать Zigbee поиск поиск в самом вверху
- Выбрать, Найти одно устройство или Искать несколько устройств
- Сразу после активации поиска нужно перевести устройство в режим подключения (Способ сброса указан в инструкции, а также в таблице ниже)