Domoticz + Xiaomi - строим умный дом, введение

Здравствуйте друзья

В своих обзорах устройств умного дома экосистемы Xiaomi — я уже неоднократно упоминал название Domoticz. Наконец у меня дошли руки поделится своими наработками на эту тему, и рассказать что же это такое и каким образом можно дополнить стандартные возможности умного дома от Xiaomi при помощи этой системы. В рамках одного обзора это рассказать невозможно, но нужно с чего-то начинать — поехали…

Ссылка на комплект 6 в 1 базовый набор для умного дома Xiaomi - 

GearBest  Aliexpress

Таблица (обновляется) по экосистеме Xiaomi

Для тех кто любит больше смотреть и слушать, видеоверсия этого обзора в конце текста.

Вопросы и ответы


1. Что такое Domoticz ?
Это мультиплатформенное ПО с открытым кодом ориентированное на создание системы управления умным домом. Поддерживает большое количество различных устройств разных вендоров, в том числе работает с устройствами Xiaomi.

2. Какие устройства Xiaomi могут управлятся Domoticz?
Буду говорить только о тех устройствах, которые я проверил лично. На данный момент можно управлять шлюзом Xiaomi Gateway — и всеми устройствами которыми он управляет — кнопки, датчики открытия и движения, розетки ZigBee, выключатели Aqara. Так же поддерживаются осветительные гаджеты Yeelight — RGBW и White лампы, потолочный светильник Celling Light.
Читал про работу с bluetooth сенсорами miflora.

3. Для чего мне Domoticz ?
Система имеет более гибкие возможности по настройке сценариев — например проверку активности устройства, то чего нет в MiHome, или создание переменных — которые позволяют по одному условию — например нажатие клавиши — выполнять различные действия, в зависимости от значения переменной.
Сценарии, созданные в Domoticz не зависят от китайских серверов и наличия интернет.
Domoticz расширяет функциональность устройств — например новые действия «free fall» или «alert» для кубика, или «Long Click Release» для кнопки.

4. Если я буду использовать Domoticz то не смогу работать с MiHome?
Обе системы прекрасно живут паралелльно — функциональность MiHome — полностью сохраняется, просто часть сценариев будет жить в одной системе — часть в другой. В принципе все сценарии могут жить в Domoticz.

5. Зачем мне нужен MiHome если я буду использовать Domoticz?
По крайней мере для добавления новых устройств. Выбор стоит за вами — но мое мнение — на данный момент Domoticz лучше всего использовать как дополнение к MiHome

6. Что нужно для подключения устройств Xiaomi к Domoticz?
Сразу хочу успокоить — паяльников, программаторов и танцев с бубнами не надо. Так же вам не понадобится Linux или виртуальные машины — попробовать все можно прямо на вашей рабочей винде. В дальнейшем — если будет такое желание, то систему можно будет установить на одноплатном компьютере типа Raspberry или Orange — об этом я тоже расскажу, но на начальном этапе установка системы не сложнее установки календаря огородника на 2017 год. Подключение очень легко и просто и совершенно не влияет на базовую функциональность устройств. При желании вернуть все назад — элементарно.

Подготовительные работы

Итак, что нужно для того что бы начать работать с Domoticz?


1. Резервирование IP адресов
Первым делом необходимо, тем устройствам которыми вы планируете управлять — пока это шлюз и лампы — установить статические IP адреса. Это делается на вашем домашнем роутере, при помощи таблицы клиентов DHCP которая выглядит примерно так —

и информации из вкладок Network info плагинов управления шлюзом и лампами, где указаны MAC адреса устройств

Используя эту информацию нужно прописать выдачу постоянных IP адресов этим устройствам — так как они будут управлятся именно по IP, и если адрес будет сменен — Domoticz потеряет связь с ним. Таблица резервирования адресов выглядит примерно так — 

2. Режим разработчика
Необходимо активировать режим разработчика. Для шлюза Xiaomi Gateway необходимо зайти в меню, выбрать опцию about, внизу экрана где написана версия (2.23 у меня) — нажимать на нее до тех пор пока в меню не появится две новые опции, они могут быть на китайском, в моем примере — на английском. Нажимаем на первую из двух — local area network communication protocol, в меню активируем верхний переключатель и записываем пароль шлюза.

Для ламп все проще — нужно установить приложение Yeelight, если вы его еще не поставили, и для каждого светильника — заходим в меню, режим разработчика — включить

Установка Domoticz

Приложение берем здесь выбираем Beta — так как именно в ней имеется поддержка устройств Xiaomi. Так как на данный момент я работаю с Domoticz под управлением Windows — то и писать про про нее. Когда ко мне доедет RaspBerry — тогда расскажу и про нее.

Установочный файл занимает чуть более 14 Мб, просто качаем запускаем — установка стандартная, со всем соглашаемся

И через минуту имеем установленный на локальной машине Domoticz, доступный по адресу 127.0.0.1:8080 либо вместо 127.0.0.1 — адрес компьютера в локальной сети. Интерфейс изначально на английском (у меня уже переключено на русский)

Язык системы, пароль для входа, координаты — меняем в меню настройки — настройки
127.0.0.1:8080/#/Setup

Добавление устройств

Для добавления устройств переходим во вкладку Настройки — Оборудование
127.0.0.1:8080/#/Hardware

Выбираем тип устройства Xiaomi Gateway, называем его как нибудь, указываем его IP адрес, который мы зарезирвировали на роутере, прописываем пароль полученный в окне режима разработчика. Порт — у меня работает на порту 54321. В вики домотикз описано подключение с указанием порта 9898

Для добавления ламп — просто добавляем устройство YeeLight LED — адреса указывать не надо, лампы подтянутся сами. 

Датчики подключенные к шлюзу подтянутся не сразу все, это процесс может занять час и более — нужно подождать. Это связано с тем, что устройства ZigBee активируются только в момент передачи данных. Немного подтолкнуть процесс можно — открывая и закрывая окна с датчиками, дышать на датчики температуры, включать выключать розетки — словом вынуждать устройства передавать данные. 

Устройства

Устройств добавится НАМНОГО больше чем вы ожидаете :) Список их доступен на вкладке Настройки — устройства. 
127.0.0.1:8080/#/Devices

Например каждый датчик температуры и влажности — добавится как три устройства, отдельно температура, отдельно влажность, и все вместе. Розетки — отдельно розетка (управляемое устройство) отдельно — как датчик энергопотребления. А вот шлюз — отдельно подстветка, отдельно сирена сигнализации, отдельно будильник, дверной звонок и регулятор звука. Для того чтобы добавить устройство в список используемых — в конце строки нужно нажать зеленую стрелочку. Убрать из используемых — синюю стрелочку. То что нам не нужно — не добавляем. 
Добавленные к использованию устройства располагаются по нескольким вкладкам — 

Переключатели

На этой вкладке собраны все управляемые устройства 
127.0.0.1:8080/#/LightSwitches

Выключатели, кнопки, лампы, и прочее. Здесь мы можем включать, выключать, и делать любые действия с устройствами в ручном режиме.

Например выбрать звук который будет звучать на шлюзе, или цвет свечения на RGB лампе или яркость на белой лампе.

Температура

На этой вкладке группируются климатические датчики — влажности и температуры
127.0.0.1:8080/#/Temperature

Поначалу они все называются одинаково, определить где какой — можно по их показаниям и сверке с приложением Mi Home, после чего их можно соответственно переназвать. 

Вспомогательное

Здесь сгрупирован датчик освещенности шлюза — хотя его показания весьма странные, и счетчики потребления энергии розеток. 

127.0.0.1:8080/#/Utility

Сценарии

Для создания сценариев — необходимо перейти во вкладку — Настройка — Дополнительно — События. Написание сценариев доступно в двух вариантах — блочный и скриптовый на языке lua. 

Примеры сценариев

Учится работать с Domoticz лучше начинать с блоков. Тут все разбито на группы и составлять сценарии довольно просто. Пример простого сценария на блоках — включение света по обнаружению движения, и выключения через минуту после того как датчик движения перейдет в статус выключено. После составления сценария нужно назвать его, поставить галочку на опции Event active: — для включения и сохранить его.

Точно такой же сценарий на lua

Примеры использования

Больше внимания конкретным сценарям я буду уделять в других обзорах, тут в качестве примера приведу сценарий, который НЕВОЗМОЖНО реализовать в Mi Home, а именно — двухкнопочный выключатель Aqara c размыканием проводов — левая кнопка будет работать по назначению — разрывать и соединять фазу, а правая — не подключенная к линии (для питания выключателя достаточно подключения только одной из кнопок) — будет включать и выключать Yeelight лампу, которая физического соединения с выключателем не имеет.

В данном сценарии будет проверятся состояние лампы Yeelight, значение самого выключателя On или Off — значения иметь не будет. Если состояние лампа отлично от Off — значит она работает, и будет выключена, а если выключена — то будет включена. 

На этом, вводную часть по Domoticz буду завершать, если тема будет интересна — то продолжу, интересного еще очень много. 

Видеоверсия обзора:

Все мои видео обзоры - YouTube

Спасибо за внимание.

Об авторе
+6 2 116407 45
Автор 1507278702933555@facebook Рейтинг +285.65 Сила 726.44
Блог Kvazis House 53 99 RSS

45 комментариев

Zloi
Сценарии, созданные в Domoticz не зависят от китайских серверов и наличия интернет. 
И в этом его главное преимущество, т.к интернет стабильный и быстрый есть далеко не у всех. Ну и конечно подключение сторонних устройств (не сяоми).
Спасибо, как всегда очень познавательно.
1507278702933555@facebook
В Сяоми многие сценарии так же не зависят от сети — включение света кнопками и т.п. Достаточно посмотреть в конкретном сценарии в настройках Running Mode — если LAN — то интернет ему не нужен.  Тут интереснее что Домотикз умеет больше чем Mi Home. Пример с выключателем Aqara — лишь малая часть, ну и конечно работа со сторонними вендорами.
Последний раз редактировалось
2003666446388557@facebook
https://c2n.me/3WrNGGm а тут нужно регистрироваться ??
4114953@vkontakte
я так понимаю компьютер должен быть все это время запущен?
1507278702933555@facebook
Да, потому если система вам понравится — есть смысл перевести ее на одноплатный компьютер типа rasberry или orange. Я такой как раз жду
maxtor
У меня с 64-битной виндоус не работают команды на гейтвей (просто например включить\выключить розетку). И данные не обновляются, если не «перезапускать» опрос по таймауту.
Пытался на 4pda найти хоть какую то информацию как победить — тишина.
 
1507278702933555@facebook
У меня крутится на 64 битной 10 ке — все отлично
maxtor
а версия билда какая? у меня последняя бета
1507278702933555@facebook
Домотикза? Я обновляю раз в несколько дней, проблем ни с одной не было, сейчас 
Version: 3.7377
Build Hash: 2b6e7192 
maxtor
ясно… пойду попробую переустановить
maxtor
Аллилуя. После тотальной переустановки — заработал контроль!
Последний раз редактировалось
3793494@vkontakte
Спасибо большое за Ваши статьи, в последнее время они — это главный повод заходить на ixbt.
Получается, при помощи этой связки возможно задействовать устройства сторонних производителей, например сверхдешевые wifi-реле sonoff и wifi-удлинители broadlink, а может даже и самоделки на arduino?
1507278702933555@facebook
Именно. По сонофам есть мануалы по перепрошивке, обязательно буду пробовать, по броадлинк — тоже, мне вот едет их удлинитель на 4розетки, попробую как-то прикрутить к домотикз
110021933953278770413@google
Спасибо за статью! Тоже собираюсь настраивать domoticz на raspberry, а все эти датчики от xiaomi манят своей ценой и отличным внешним видом. Очень бы хотелось побольше таких статей от Вас
dagman
Добавляю например датчик движения. Это ведомое устройство или главное?Если ведомое, то какое главное для него указать?В списке есть Gateway Doorbell, Gateway Volume и Wireless switch. Тоже самое не понятно при добавлении всех датчиков и кнопок. К чему их привязывать? Или они главные?
eugenuvin
НЕ могу понять без хаба домотикз не может управлять лампой? Все общение через шлюз все равно идет?
advokatb
Подскажите, пожалуйста, как в Сценариях, в режиме конструктора с блоками можно указать собственный звук для события?
Пытаюсь реализовать приветствие, когда телефон жены подключается к Wi-Fi, а значит — она дома.
Спасибо.
Последний раз редактировалось
1624203807850387@facebook
Подскажите, может сталкивались с такой проблемой:
Подключил шлюз к домотикзу, в списке устройств вижу все датчики, но вкладке «Переключатели» ничего нет.
P.S. В Используемые устройства все датчики добавил. Но безрезультатно.
Сажаев
Здравствуйте. Всё классно. В программировании я не силен. Делаю вроде бы как у Вас. Домотикс на малинке уходит в offline… переустанавливал пару раз всё равно, что то не то. Подскажите, что ещё попробовать?
Сажаев
Здравствуйте.
Подскажите пожалуйста
На малинке переключатели не найдены,
Захожу с компа или планшета переключатели есть.
Что может быть?
amplituda
Не планируете сделать описание по добавлению камер в domoticz? Было бы интересно увидеть примеры, у Вас как вижу есть весь товарный ряд камер от сяоми)
2003666446388557@facebook
Добрый вечер. А Домотиксе нужно заводить токин шлюза?
2003666446388557@facebook
https://c2n.me/3WrNofK ЧТо это за ошибка?
1507278702933555@facebook
Устройство недоступно для управления. Или оффлайн или на другом шлюзе или изменился ИП адрес или отключен режим управления по локальной сети или у шлюза другой или изменился ключ доступа
2003666446388557@facebook
После танцев с бубнами переключатели заработали. Обновил Домотикз, обновил ключи и заново завел шлюз.
2003666446388557@facebook
http://192.168.31.94:8080/json.htm?type=command%C2%B6m=switchlight&idx=63&switchcmd=On команда не работает, выдает ошибку. где мой косяк?
2003666446388557@facebook
Добрый день. Команда http://192.168.31.94:8080/json.htm?type=command%C2%B6m=switchlight&idx=31&switchcmd=Toggle, выдает ошибку — {
«status»: «ERR»
}
2003666446388557@facebook
Xiaomi сенсор протечки воды в Домотиксе определяется как Smoke detektor, так и должно быть? Иконку поменять при этом не дает. Какой выход?
SERJnCo
А нет подобного устройства, но без участия компа?
Например, подсоединился с компа, написал сценарий, нажал «сохранить» и он «улетел» на гейт, который дальше будет сам его обрабатывать.
1507278702933555@facebook
Да, в этой роли лучше всего использовать одноплатники — типа raspberry, orange и т.д.
Alieksandr_h
Добрый день.
Первый раз в жизни установил Domoticz, нашел шлюз xiaomi geteway (две розетка zigbee). Не могу понять в чем причина: при нажатии на иконки розеток в domoticz выдается сообщение об ошибке — «Ошибка при отправке команды переключения, проверьте устройство / оборудование!».

Все устройства видны, статистика энергопотребления отображается.Помогите разобраться в чем причина.
Domiticz установил на компьютер windows7

Ничего не помогает…
Возможно я изначально что-то делаю не так? Можно ссылку на подробную инструкцию установки и настройки?
Какой указывать порт? Произвольно? Или его надо устанавливать?

При настройке шлюза в Domoticz указывал номера портов: 9898; 54321; 8080; 6144; 8443
1507278702933555@facebook
Очевидно неправильно указан ключ от шлюза
Alieksandr_h
Странно! Я уже пробовал вводить ключ напрямую в domoticz и текстовой файл, а потом копировать.
Ситуация не меняется уже в панике, думаю что что-то изначально настроил неверно…
А порт можно указывать любой?
Alieksandr_h
Добрый день
С подключением разобрался. Действительно был неверно указан ключ geteway.

Сейчас пытаюсь написать свой первый сценарий в Domoticz.
Задача такая;
есть кнопка AQra
две розетки розетка Zigbee (для подключения обогревателей)
температурный датчик AQra

Помогите пожалуйста разобраться с настройкой сценария:
Необходимо чтобы при двойном нажатии на кнопку две розетки (обогревателя) включались и работали пока температура не достигнет 18 градусов.
При достижение указанной температуры отключались.
Если температура станет меньше 15 градусов снова включались. И так по кругу.

А еслеси на кнопку нажать один раз, чтобы сценарий полностью отключился и розетки больше не включались, даже если температура будет меньше 15 градусов.

если можно, разместите сценарий схематично с помощью блоков Domoticz.
1507278702933555@facebook
Я уже несколько месяцев назад съехал на Home Assistant так что строить особо негде, да и когда на домотикз сидел, почти сразу ушел на lua а потом на dzvents. Блоки — балалайка.
Alieksandr_h
Т.е. помочь не сможете? Или хотя бы на lua или на dzvents? У меня вообще нечего не выходит....
1507278702933555@facebook
Конечно не выходит, вы сразу хотите построить такую конструкцию, и у меня бы не вышло в начале. Начинать надо с простых сценариев — нажал на кнопку, если розетка выключена — включить, иначе — выключить. Сценарии по изменению статуса датчиков — той же температуры, посмотреть как работают пользовательские переменные — они вам пригодятся для «отключения сценария», так как в Домотикзе нет такого понятия, но можно ввести условие, по которому логика будет проверять — включать сценарий или нет.
Хотите управлять — надо потратить время и поучится.
Alieksandr_h
Добрый день. Смотрел Ваш обзор на ip camera. Вы настаивали камеру на отправку сообщений в Telegram при движении. Возможно ли реализовать подобный сценарий в Domoticz?
Спасибо.
10215704191856900@facebook
Добрый день
Развернул вчера Domoticz и вечером игрался, вопросов со шлюзом не возникло, спасибо хорошие инструкции в инете. Вопрос возник с камерой (он же bluetooth шлюз) + датчик температуры и влажности. КОторый по bluetooth коннектиться к камере. Кто коннектил?
Есть еще вопросы по wifi переключатель от Broadlink — тоже не нашел его, возможна работа?
117343415492524112802@google
Открытие портов 9898 Xiaomi Gateway
https://www.youtube.com/watch?v=AhkPdIujzM0
3702993@vkontakte
Подскажите, шлюз xiaomi будет работать с выключателями LIVOLO ZIGBEE? вышли новые выключатели со своим шлюзом, также по протоколу zigbee работают.
114435486869399953636@google
Купил xiaomi gateway 2 обновил прошивку и теперь не могу подлючиться к domoticz. Шлюз не подключается (это видно в логах). Там, как оказалось, нельзя прошивать последнюю прошивку сразу, если это сделать, закроются порты и придется вскрывать шлюз, подпаивать 3 провода к программатору(юарт по идее подойдет, но в инете есть видео, вон в комментах выше, там через ардуино), через этот программатор нужно открыть порты, через программку. Там еще есть особенность, один из проводов (rx или tx) нужно подключить после загрузки роутера. В общем это я все к чему, добавьте в топике, пожалуйста, что нужно сначала открыть режим разработчика, проверить в domoticz, и только потом можно перепрошиваться. Закроются в этом случае порты или нет, я пока не проверял.
114435486869399953636@google
А еще автору спасибо! Вдохновил на настройки)))
1301429129935500@facebook
Что то у меня все коряво работает: движение штор путается если открывать не до конца. Те. открываю на 50% и шторы едут на 50%. Открываю дальше и шторы едут назад! Люстра не слушается.

Добавить комментарий