Смарт удлинитель Broadlink MP1 — подключаем к системе Domoticz

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Обзор | Kvazis House

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

В продолжение моих обзоров про возможности системы управления умным домом Domoticz, где аппаратную роль выполняли гаджеты Xiaomi, хочу рассказать про внедрение в систему устройств другого производителя —  Broadlink, на примере смарт удлинителя Broadlink MP1 и его совместной работе с существующей структурой Xiaomi. Подробности далее

Вступительное слово

Одним из достоинств альтернативных систем управления умным домом, на примере - Domoticz, является возможность объединения в одних сценариях устройств различных производителей. Не исследовать эту тему было бы преступлением :) 

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

Где купить?

Banggood  Aliexpress 

Доставка

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

Broadlink как и Xiaomi не напрягается с полиграфическими изысками, больше уделяя внимание технической информации. 

Внешний вид, параметры

Удлинитель выполнен в белом цвете, на фронтальной панели расположены 4 совмещенные розетки, рассчитанные на подключение вилок Тип А, С, I

Из основных характеристик нужно выделить максимальную мощность — 2500 Вт, но не более 10 А и установленный Wi-Fi модуль, никаких шлюзов для работы не нужно. В стандартном режиме удлинитель управляется через приложение. Кстати нам оно тоже понадобится. QR код для его загрузки, имеется и на коробке и на наклейке сзади удлинителя.

Удлинитель комплектуется тройной вилкой Тип I. Использовать комплектный переходник не рекомендую — лучше заменить вилку на сборную евровилку.

Реальные размеры соответствуют заявленным — 254 х 60 х 32. Взвешивать я его пожалуй не буду.

Разборка

Для разборки удлинителя, необходимо открутить 5 саморезов с треугольной головкой. 4 самореза находятся по углам — за наклеенными ножками, пятый — по центру, под наклейкой. 

К достоинствам этого удлинителя можно отнести раздельное управление каждой из розеток. К недостаткам — невозможность делать это вручную и отсутствие подсчета электроэнергии.

Блок управления и Wi-Fi модуль

Розетки защищены подпружинеными крышками — заглушками.

Так же на самих розетках, поверх контактов, расположены пластиковые защитные крышки.

При включении обод единственной кнопки управления подсвечивается

Первое включение, штатное ПО

Для подключения у смарт удлинителю нам понадобится родное приложение E-control. Если это ваше первое устройство от Broadlink — как у меня, то нужно создать аккаунт. Это недолго и несложно — понадобится электронная почта, и нужно придумать пароль. После авторизации в приложении — нужно будет добавить устройство

Далее вам будет необходимо подключить найденное устройство к своей wi-fi сети, после чего удлинитель появится у вас в списке устройств. Приложение позволяет управлять состоянием каждой из четырех розеток фильтра, устанавливать расписание включения — выключения, задать имя и даже собственное изображение для иконки удлинителя. 

Подробнее рассказывать о приложении не буду, так как тема обзора — это интеграция удлинителя в инфраструктуру Domoticz. Напомню у меня он крутится на одноплатном миникомпе Raspberry Pi Model 3 B. Внимание —  обязательно настраиваем на домашнем роутере, выдачу статического IP адреса удлинителю, привязав его к mac. 

Подключение к Domoticz

Для управления устройствами Broadlink — базами дистанционного управления, сенсорной платформой A1, смарт розетками и удлинителем, имеется замечательный проект - https://github.com/mjg59/python-broadlink. Основой послужила инструкция для работы с базой дистанционного управления с 4pda и переработана мной для удлинителя mp1. Инструкция ниже успешно опробована мной на Raspberry Pi Model 3 B, и вполне может применяться на схожих решениях, на Windows — аналогов нет (ну либо они мне неизвестны). 

Инструкцию пишу по шагам как делал я лично

1. Создание рабочего каталога — sudo mkdir /python-broadlink

Нам необходимо установить несколько пакетов, необходимых для работы - 

sudo apt-get install python2.7 -y
sudo apt-get install python-pip -y
sudo apt-get install python-dev libgmp-dev
sudo apt-get install git -y
git clone https://github.com/mjg59/python-broadlink

Некоторые пакеты уже могут быть установлены в вашей системе, это нормально, просто запускаем по очереди все.

те, пакеты которых не хватает, будут скачаны и установлены в систему

Дальше, переходим в наш созданный каталог

cd python-broadlink

И запускаем установку 

python setup.py install

Теперь мы можем создавать первый скрипт — поиска устройств Broadlink, создаем файл locatrm.py (все имена файлов — можете давать сами, какие считаете нужным).

sudo nano locatrm.py

В открывшийся пустой файл вставляем скрипт

#!/usr/bin/python
# -*- coding: utf-8 -*-

#Script to locate Broadlink devices on local network by Graeme Brown Dec 23 2016
#These must be set up using the Broadlink app first!

import broadlink
import time

print "************************************************"
print «Using python library created by Matthew Garrett»
print «https://github.com/mjg59/python-broadlink»
print "************************************************"
print «Сканирую сеть для поиска устройств Broadlink....»

mydevices = broadlink.discover(timeout=5)
print «Найдено » + str(len(mydevices )) + " устройство broadlink"
time.sleep(1)
print "..............."

for index, item in enumerate(mydevices):

mydevices[index].auth()

ipadd = mydevices[index].host
ipadd = str(ipadd)
print «Устройство » + str(index + 1) +" Host address = " + ipadd[1:19]
macadd = ''.join(format(x, '02x') for x in mydevices[index].mac[::-1])
macadd = str(macadd)

mymacadd = macadd[:2] + " " + macadd[2:4] + " " + macadd[4:6] + " " + macadd[6:8] + " " + macadd[8:10] + " " + macadd[10:12]
print «Устройство » + str(index + 1) +" MAC address = " + mymacadd
print "..............."

Выходим из режима редактирования CTRL+X сохраняя все изменения. 

Запускаем скрипт командой 

python locatrm.py

Скрипт обнаруживает удлинитель и сообщает его IP и mac адрес

Теперь делаем скрипт для проверки статуса удлинителя. Делал я его скорее для общего развития, для работы он мне не пригодился. Создаем файл s1stat.py 

sudo nano s1stat.py

Вставляем код 

#!/usr/bin/python

import broadlink
devices = broadlink.mp1(host=(«192.168.0.102»,80), mac=bytearray.fromhex(«34EA34A5373B»)) — тут Ваши ИП и Мак удлинителя
devices.auth()

print devices.check_power() — эта команда выводит статус всех розеток

Делаем сохраненый скрипт исполняемым

sudo chmod +x s1stat.py 

Запускаем, проверяем

python s1stat.py

Если все сделано правильно — вы получаете статусы всех розеток


Теперь можно делать скрипты для включения и выключения каждой розетки. Всего у нас 4 розетки, значит получится 8 скриптов. Код скрипта аналогичный вышеприведенному, только вместо команды проверки статуса пишем команду на включение 

devices.set_power(1, True) — первая розетка включить 

Или выключение

devices.set_power(1, False) — первая розетка выключить

Я называл файлы s1on.py, s1off.py и так далее для всех 4х пар.

После создания файлов, нужно сделать каждый из файлов исполняемым - 

sudo chmod +x s1on.py — повторить для всех

Можно проверить их работоспособность включая и выключая каждую из розеток

python s1on.py — включение первой розетки

И дать им права

sudo chmod 777 /home/pi/python-broadlink/s1on.py  — повторить для всех

Теперь можно переходить в Domoticz, на вкладке Настройки — Оборудование — создаем (если у вас еще нет) виртуальное устройство Dummy. После чего создаем 4 виртуальных переключателя, я назвал их 

Broadlink 1, S1, Broadlink 1, S2,  Broadlink 1, S3 и Broadlink 1, S4. 

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

script:///home/pi/python-broadlink/s2on.py — включить 

script:///home/pi/python-broadlink/s2off.py  — выключить 

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

Первой и третьей розеткой управляет кнопка Xiaomi, по действию клик — включается и выключается настольная лапа, дабл клик — управляет включением и выключением потолочного светильника Yeelight Celling Light, про который я рассказывал раньше и лонг клик — включение и выключение принтера. Сценарий на lua выглядит так:

Вторая розетка работает в связке с датчиками влажности / температуры и открытия от Xiaomi. 

Первое условие выключает увлажнитель при достижении влажности 55 и выше%, второе — включает при падении 45 и менее%, третье условие отключает увлажнитель при открытии окна, четвертое — включает при закрытии окна и влажности менее 45%. Кстати сценарий сейчас я чуть доработал, добавив во второе условие — на включение — проверку статуса оконного датчика, что-бы увлажнитель не включался при открытом окне.

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

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

Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе

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

110021933953278770413@google
Отличная статья! А через родной плагин broadlink в domoticz не пробовали? Или плагин только через rm2 работает?
1507278702933555@facebook
Нет, сразу делал как описано. Сейчас еще прикрутил так же rm plus — полет нормальный, будет чуть позже обзор
110021933953278770413@google
Буду ждать. Сам строю точь в точь систему с domoticz и xiaomi, только на малине еще плата razzberry для z-wave и broadlink rm2. Поэтому очень интересно наблюдать за вашим блогом
1507278702933555@facebook
broadlink и особенно ничем кроме корпуса не отличаются. А вот по z-wave я бы и сам почитал, тема интересная
Т
а подключить этот удлиннитель напрямую к михоум никак нельзя ?)
1507278702933555@facebook
Конечно нет. Было бы странно если бы можно было
A
столкнулся с трудностью на финише —
pi@raspberrypi:~/python-broadlink $ python setup.py install
running install
error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

[Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/test-easy-install-19293.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

/usr/local/lib/python2.7/dist-packages/

подскажите, как исправить ошибку?
t
Ошибка у автора, правильно так: pi@raspberrypi:~/python-broadlink $ sudo python setup.py install

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

Сейчас на главной

Новости

Публикации

Наконец-то бесшумный: обзор мини-ПК Maxtang NX-N100 с пассивной СО

Maxtang NX-N100 — один из немногих мини-ПК, который использует систему охлаждения без активной составляющей, а именно вентилятора. Радиатором выступает в том числе и корпус, выполненный...

Nexus 7: как Google создала один из лучших планшетов в мире, и почему больше не смогла выпустить что-то подобное

Первый планшет в рамках проекта Nexus вышел в 2012 году, а его версия 2013 года многим запомнилась как один из самых удачных Android-планшетов в мире. Но удача сопутствовала Google не всегда. Nexus...

Подземный ужас огородника. Как избавиться от медведки и сохранить урожай?

Кто самый опасный подземный вредитель в огороде? Медведка, она же земляной рак или капустянка. Огромное насекомое, появление которого сулит потерю урожая. Как победить медведку? Способы борьбы...

Как правильно добавлять луковую шелуху в лунки при посадке картофеля и помидор

Каждый садовод хранит свои уникальные секреты и мудрость, передаваемую от старших к младшим. Одним из таких ценных знаний является применение луковой шелухи при посадке растений. Этот нехитрый, но...

Правда ли что благодаря Аль Капоне появилась маркировка со сроком годности на молоке?

История человечества изобилует необычными поворотами, в том числе и в сфере продуктов питания. Одним из таких неожиданных поворотов стало появление маркировки со сроком годности на емкости с...

Недооцененный компьютер Apple Mac mini за копейки

У многих пользователей есть четкое убеждение что компьютеры от компании Apple такие же ограниченные как и айфоны, но с компьютерами на операционной системе macOS все обстоит иначе. Мы...