Так же, в девайс зашито действие «Подбросить кубик», но в Mi Home это действие недоступно (видимо, далеко не все удачно его ловили). Но доступно в альтернативных системах, например в Domoticz.
На коробке кубика не указано ограничение по возрасту, но я бы добавил +12 как минимум. Настроенный кубик, попадая в руки ребенку, становится замечательной игрушкой. Так что держать его лучше в недоступном для детей и домашних животных месте.
Перейдем к подключению Aqara Cube в Mi Home и настройке сценариев автоматизации.
Как подключить Aqara Cube в Mi Home
Кубик Aqara работает по ZigBee протоколу, а значит ему нужен один из шлюзов управления. К шлюзу Aqara Hub его так же можно подключить, но об этом позже. Более привычно использовать основной шлюз Gateway 2, но у меня он перегружен (около 30 устройств), так что буду подключать к шлюзу Aqara Camera Hub.
Заходим в плагине камеры в дополнительных настройкахнастройки шлюза, и нажимаем на кнопку «Добавить устройство»:
Нам предлагают резко махнуть кубиком, чтобы подключить к шлюзу. Сколько не махал, у меня не получилось. Возможно изначально у него выключен режим сопряжения, поэтому надо открыть крышку кубика и на 3 секунды нажать на кнопку сопряжения, когда индикатор моргнет 3 раза, кубик переходит в режим сопряжения.
После этого устройство будет добавлено в систему «Умного дома». В плагине нет особых настроек, 2 вкладки: Сценарии и Журнал событий.
В дополнительных настройках можно посмотреть примеры взаимодействия кубика. Кстати, действия сценария идут сразу на русском:
Кубик у меня не так давно, так что на нем только управление освещением на кухне. А вот на старом кубике Xiaomi сценариев побольше:
Тут и отключение всего освещения в квартире, включениевыключение телевизора и другие. Некоторые действия кубика и устройств не совместимы между собой, например нельзя увеличить громкость потрясыванием кубика. Если действие недоступно, напротив действия будет замочек:
Стоит обратить внимание, что мало устройств поддерживают действие «Вокруг своей оси», например лампы Philips не поддерживают изменение яркости, а лампы Yeelight поддерживают.
Подключение кубика к шлюзу Aqara Hub
На сегодняшний день, возможность подключения кубика в приложении Aqara отсутствует. Скорее всего в ближайшее время должны добавить. А к самому шлюзу можно добавить минуя приложения, 3 раза нажимаем кнопку на шлюзе и зажимаем кнопку сопряжения в кубике.
Приобрести кубик Aqara
Ищем в продаже на Aliexpress при доставке с Китая, или в московском магазине FoxPox.ru (с доставкой по России).
При покупке не забывайте про необходимость шлюза.
Личный опыт использования Aqara cube
Кубиком пользуюсь довольно давно, управлять кубиком заметно удобнее, чем лезть с приложение и выполнять действие оттуда. Поначалу, точно манипулировать кубиком получалось не с первого раза, точность выполнения была процентов 70-80. Со временем проблема практически сошла на нет, но иногда бывают ложные срабатывания, например при перевороте на 180 градусов, срабатывает действие 90 градусов.
Касательно прочности, кубик многократно падал, но корпус цел и на точность это не повлияло. Но если кинуть кубик в стену, то скорее всего не переживет.
В целом, если у вас много устройств умного дома, то кубик пригодится, а если всего парочка, то в кубике нет необходимости.
Приобрести можно тут: http://alii.pub/6hvr31
Наверное ни для кого не секрет для чего этот куб. В нем стоит гироскоп и крутя его в руках можно управлять устройствами умного дома.
На самом деле у него много действий которые можно выполнять. А именно:
- Поворот на 90 градусов
- Поворот на 180 градусов
- Передвинуть
- Покрутить вправо
- Покрутить в лево
- Потрясти
- Подкинуть
И вот эти все 7 действий можно использовать в автоматизациях.
Например Покрутить вправо – это мы увеличим яркость лампочки. А покрутив влево мы сделаем тусклее ее.
Или например потрясся его мы включим везде свет.
вот варианты действий показаны на картинке:
Ну и все эти действия доступны в умном доме Xiaomi или Aqara. Про них мы в этой статье не будем писать. А опишу способ управления устройствами в Home Assistant через zigbee2mqtt.
Сопряжение с zigbee2mqtt
Снимите заднюю пластину с помощью прилагаемого инструмента или клина, чтобы защелкнуть ее. Нажмите и удерживайте кнопку сброса внутри устройства в течение +- 5 секунд (пока синий индикатор не начнет мигать). После этого устройство автоматически подключится, но процесс интервью может не закончиться. Если это произойдет, продолжайте делать короткие нажатия на кнопку сброса, чтобы индикатор продолжал мигать, пока процесс интервью не завершится успешно.
Когда сопряжение пройдет корректно, то устройство появится в аддоне zigbee2mqtt.
Ну а теперь собственно к управлению.
аддон zigbee2mqtt работает из названия по mqtt. СОбственно нам нужно понять в какой топик он отправляет сообщения, какого они вида. Ну а дальше мы с этими данными можем работать и использовать в своих автоматизациях.
Топик, в который отправляются данные с куба, найти очень просто. По стандарту главный топик аддона называется zigbee2mqtt. Его впринципе можно посмотреть в аддоне, вот тут:
Настройки->MQTT-> Base topic
Ну а конкретный топик куба называется по его пользовательскому названию. у меня это Magic_Cube.
И того топик где мы можем поймать данные с куба будет звучать zigbee2mqtt/magic_cube
Собственно подписываемся на этот топик аддоном mqtt и вертим куб (снимая показания).
Так выглядят показания поворота на 90 градусов:
{
"action": "flip90",
"action_angle": null,
"action_from_side": 3,
"action_side": 1,
"action_to_side": 1,
"angle": -105.43,
"battery": 100,
"current": 0,
"device_temperature": 24,
"from_side": 3,
"linkquality": 255,
"power": 69,
"power_outage_count": 3259,
"side": 1,
"to_side": 1,
"voltage": 3025
}
Так выглядит поворот на 180 градусов:
{
"action": "flip180",
"action_angle": null,
"action_from_side": null,
"action_side": null,
"action_to_side": null,
"angle": -105.43,
"battery": 100,
"current": 0,
"device_temperature": 24,
"linkquality": 255,
"power": 69,
"power_outage_count": 3259,
"side": 4,
"voltage": 3025
}
Так выглядит "передвинуть":
{
"action": "slide",
"action_angle": null,
"action_from_side": null,
"action_side": null,
"action_to_side": null,
"angle": -105.43,
"battery": 100,
"current": 0,
"device_temperature": 24,
"linkquality": 255,
"power": 69,
"power_outage_count": 3259,
"side": 4,
"voltage": 3025
}
Так выглядит покрутить вправо:
{
"action": "rotate_right",
"action_angle": 82.06,
"action_from_side": null,
"action_side": null,
"action_to_side": null,
"angle": 82.06,
"battery": 100,
"current": 0,
"device_temperature": 24,
"linkquality": 255,
"power": 69,
"power_outage_count": 3259,
"side": 4,
"voltage": 3025
}
Так выглядит покрутить влево:
{
"action": "rotate_left",
"action_angle": -36.5,
"action_from_side": null,
"action_side": null,
"action_to_side": null,
"angle": -36.5,
"battery": 100,
"current": 0,
"device_temperature": 24,
"linkquality": 255,
"power": 69,
"power_outage_count": 3259,
"side": 4,
"voltage": 3025
}
Так выглядит потрясти:
{
"action": "shake",
"action_angle": null,
"action_from_side": null,
"action_side": null,
"action_to_side": null,
"angle": -36.5,
"battery": 100,
"current": 0,
"device_temperature": 24,
"linkquality": 255,
"power": 69,
"power_outage_count": 3259,
"side": 4,
"voltage": 3025
}
Ну а так выглядит подкинуть:
{
"action": "fall",
"action_angle": null,
"action_from_side": null,
"action_side": null,
"action_to_side": null,
"angle": -36.5,
"battery": 100,
"current": 0,
"device_temperature": 24,
"linkquality": 255,
"power": 69,
"power_outage_count": 3259,
"side": 4,
"voltage": 3025
}
Ну и собственно подытожим:
flip90
flip180
slide
rotate_right
rotate_left
shake
fall
Вот 4 позиции. Собственно эти слова мы и будем определять в топике zigbee2mqtt/magic_cube
Собственно вот так выглядит автоматизация в automations.yaml.
Автоматизация на положение flip90. Поворот на 90 градусов.
- id: magic_cube_flip90
alias: Cube desk lamp
trigger:
platform: mqtt
topic: zigbee2mqtt/magic_cube
condition:
- condition: template
value_template: '{{ "flip90" == trigger.payload_json.action }}'
action:
entity_id: switch.wifi_2gang_1
service: switch.toggle
Ну а так выглядит эта автоматизация в конфигураторе:
Эта автоматизация включает и выключает выключатель switch.wifi_2gang_1
по повороту куба на 90 градусов.
Так-же давайте рассмотрим автоматизацию под поворот куба по часовой стрелке и против часовой стрелки.
Такие жесты куба подходят для управления яркостью освещения или громкостью например.
ПО этому автоматизация тут немного сложнее. Я покажу на примере управления яркостью настольной лампы Xiaomi. Она у меня в системе Home Assistant называется light.desk_lamp
- id: magic_cube_rotate
alias: Cube - rotate
initial_state: 'on'
trigger:
platform: mqtt
topic: zigbee2mqtt/magic_cube
condition:
condition: template
value_template: "{{ trigger.payload_json.action in ['rotate_right', 'rotate_left'] }}"
action:
- service: light.turn_on
data:
entity_id: light.desk_lamp
- service: light.turn_on
data_template:
entity_id: light.desk_lamp
brightness: >-
{% if trigger.payload_json.angle | float > 0 %}
{{ states.light.desk_lamp.attributes.brightness | int + 30 }}
{% else %}
{{ states.light.desk_lamp.attributes.brightness | int - 30 }}
{% endif %}
Эта автоматизация будет управлять яркостью настольной лампы по повороту куба по часовой стрелке и против. Плюс добавлено, что если лампа была выключена и вы начинаете крутить куб по часовой стрелке, то она сначала включится а потом будет увеличиваться яркость.
Так-же если она была включена и вы начинаете крутить куб против часовой стрелки, то сначала будет уменьшаться яркость до минимума, а потом лампа выключится если яркость достигнет 0.
Ну а вот как эта автоматизация выглядит в графическом редакторе автоматизаций.
Ну и собственно остальные автоматизации можно делать по примеру, зная как называются положения в mqtt топиках.
Для работы проектов iXBT.com нужны файлы cookie и сервисы аналитики.
Продолжая посещать сайты проектов вы соглашаетесь с нашей
Политикой в отношении файлов cookie
Продолжаем обустраивать умный дом с Xiaomi устройствами. Сегодня расскажу про контроллер Xiaomi Magic Cube. Насколько он магический и какие у него преимущества, а также недостатки будем разбираться в очередном видео обзоре. Кстати, на Telegram канале TechnoReview новинки от Xiaomi и скидки на них появляются ещё быстрее, поэтому подписывайтесь, чтобы не пропустить.
Купить Xiaomi Mi Magic Cube Controller можно — ТУТ или ТУТ
Устройство является контроллером или своего рода пультом для реализации тех или иных действий. Как правило, это включение или выключение света через умный выключатель Xiaomi Aqara, различной, в том числе не умной, техники через пульт Xiaomi Remote 360 и так далее. Контроллер представляет собой куб, перемещение которого в пространстве вызывает определённые действия техники для умного дома.
Существует три цветовые вариации данного устройства и все они выполнены в светлых тонах, что не очень практично. В моём случае это традиционно белый цвет.
Внешний вид и комплектация
Поставляется устройство, как ни странно, в небольшой коробке-кубике, практически повторяющей размеры самого устройства. Спереди на коробке имеется небольшая полиграфическая картинка устройства. Сзади, как обычно, основные спецификации.
В комплекте помимо устройства имеется небольшая инструкция и лопатка для вскрытия одной из граней куба.
Открыв одну из граней куба, можно добраться до батарейки и кнопка для включения, а также перезагрузки устройства. Помимо этого, в данном отсеке находится небольшой синий индикатор работы устройства. Важно запомнить в каком положении находилась крышка грани поскольку в ином положении она не закроется.
Что касается веса куба он составляет всего 71 грамм. Размеры 45х45 мм. Балансировка куба немного нарушена и в одной из граней он немного тяжелее.
Как и многие устройства, являющиеся частью системы умного дома, данный контроллер работает по протоколу ZigBee, что требует необходимости наличия шлюза Xiaomi GateWay. Текстовый обзор можно прочитать – здесь.
Купить Xiaomi Gateway можно — ТУТ или ТУТ
Сопряжение с Mi Home
Далее переходим к сопряжению. Нажимаем на привычный «+» или добавить устройство. Затем ищем «магический куб».
После приложение попросит потрясти куб. Вроде, это действие можно осуществить прямо из коробки, не открывая крышку грани куба и не нажимая на кнопку включения, но это не точно. Если тряской подключится не удастся, вас перекинет на требование открыть куб и зажать кнопку включения.
Далее привычные действия по выбору комнаты, в которой будет находится куб и возможность переименовать устройство.
Настройка сценариев
Настройка сценариев с кубом — обязательное действие, иначе устройство просто будет является бесполезным. Для настройки сценария нажимаем на куб. После «add a new scene» или добавить новую сцену. В графе «if» выбираем куб, то есть, «если» куб будет перемещаться в пространстве, то…
Далее выбираем одно из действий, которое необходимо осуществить с кубом, чтобы что-то произошло в системе умного дома. Всего можно запрограммировать 6 действий, на которых я остановлюсь поподробнее.
1) Переворот куба на 90 градусов – срабатывает практически всегда на ура, никогда проблем с этим действием не возникало.
2) Переворот куба на 180 градусов – достаточно сложное действие с точки зрения его осуществления, так как четко перевернуть куб два раза сразу не всегда получается и при этом может сработать первый сценарий на поворот куба на 90 градусов
3) Тряска – это одно из лучших действий, которое можно осуществить со шлюзом, всегда срабатывает на пять с плюсом.
4) Поворот куба вокруг своей оси по поверхности – данное действие можно настраивать только на уменьшение или увеличение какого-либо показателя, например, увеличение или уменьшение яркости подсветки, громкости радио. При этом настроить переключение каналов или увеличение громкости через пульт Xiaomi Remote 360, на который в свою очередь забиндин пульт от телевизора, не удастся.
5) Двойной удар кубом о твёрдую поверхность — простое и интересное с точки зрения применения действия, но реализация сильно храмает, так как срабатывает оно через раз, а то и вообще никогда.
6) Скольжение куба по поверхности – самое неудобное действие, которое только можно осуществить с кубом, так как движение по поверхности может быть нереально мизерным для срабатывания сценария. Возможно данный недостаток поправят с обновлением прошивок. Можно ли его решить кастомно — я не знаю
В моём случае все сценарии осуществлялись при помощи пульта Xiaomi Remote 360. Это, на мой взгляд, одно из самых необходимых устройств для работы большего количества сценариев. Прочитать мою текстовую публикация на данный пульт можно – здесь.
Купить шлюз Xiaomi Remote 360 можно — ТУТ или ТУТ
Для того чтобы создать сценарий с пультом, необходимо в графе «complete» или исполнить выбрать пульт Xiaomi Remote 360. Далее «remote mode» и выбрать забинденый ранее пуль, а также кнопку. Затем нажимаем «save», после можно переименовать название сценария, советую это делать, а то потом чёрт ногу сломит.
Сценарии естественно можно создавать и с устройствами непосредственно являющимися частью умного дома. В моём случае это умный выключатель без нулевой линии. Создание сценария с ним само собой не отличается от действий описанных выше. Посмотреть подробный текстовый обзор на выключатель можно – здесь.
Купить выключатель Xiaomi Aqara можно — ТУТ или ТУТ
Помимо сценариев в плагине шлюза можно посмотреть Log, то есть действия, которые осуществлялись с ним последнее время. А нажав на три точки в правом верхнем углу, можно перейти в привычное окно настроек.
Вывод
Из плюсов: достаточно футуристичный дизайн для контроллера, возможность включать любую технику несколькими движениями за пару секунд не перебирая пульт и не доставая смартфон.
Из минусов: некорректное срабатывание некоторых действий и сложность их осуществления, как в случае с переворотом куба на 180 градусов, маркие и не практичные цветовые решения.
Надеюсь данный обзор вам понравился и вы провели свой время не зря. На моём YouTube канале можно найти целый плейлист, посвящённый умному дому от Xiaomi. Не забывайте пользоваться кэшбэком при покупках в китайских интернет магазинах. Ну и читайте мои публикации в личном Лайве, там много всего интересного. Также чуть ниже можете посмотреть новинки от Xiaomi, которые постоянно выходят в рамках краудфандинговой платформы. Всем удачи и хорошего настроения. Пока.
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #27
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #26
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #25
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #24
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #23
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #22
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #21
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #20
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #19
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #18
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #17
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #16
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #15
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #14
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #13
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #12
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #11
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #10
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #9
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #8
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #7
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #6
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #5
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #4
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #3
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #2
- ТОП 10 НОВИНОК ОТ XIAOMI, О КОТОРЫХ 100% НЕ ЗНАЛИ / #1
- ТОП 10 XIAOMI УСТРОЙСТВ ДЛЯ УМНОГО ДОМА
Беспроводной выключатель для умных устройств с необычным дизайном. Беспроводные выключатели в форме кнопок могут быть привычнее, но не всегда удобнее. Куб управляется жестами, например встряхиванием или поворотом, — а запомнить жесты может быть проще чем сочетания кнопок.
Описание
Умным домом удобно управлять со смартфона, но не всегда хочется открывать приложение только чтобы включить свет. В таком случае помогут беспроводные выключатели. Например, куб можно положить у кровати, чтобы было проще выключить свет перед сном. Любую команду, доступную в приложении, можно привязать к одному из 6 жестов с кубом:
— поворот куба на 90 может приглушить яркость умной лампы;
— поворот на 180 – выключит свет в комнате;
— двойное нажатие отключит весь свет в квартире;
— встряхивание включит умную розетку с подключённым обогревателем;
— повернув куб вокруг оси можно активировать режим сигнализации умного дома;
— Подвинув куб можно отключить до утра датчики движения, чтобы они не включали свет, если вы встанете ночью налить стакан воды.
Поверните кубик для включения света
До двух лет на одной батарее (таблетка CR2450)
Вам также будет интересно…
Инструкция
Инструкция
Краткое руководство
Параметры
Параметры
Модель: MFKZQ01LM
Цвет: белый
Габариты: 45 х 45 х 45 мм
Протокол связи: Zigbee
Батарея: CR2450
Рабочая температура: -10°С…+50°С
Допустимая влажность: 0 — 95% относительной влажности
Комплект поставки: куб управления, руководство пользователя, пластина для извлечения батареи
Умный дом без пультов, но с кубиком
Проблема
На время ремонта новой квартиры я вернулся в квартиру, в которой не жил 10 лет и решил поупражняться в дисциплине “Умный дом”, чтобы со знанием дела обустраивать уже новую квартиру. Техника в этой квартире тоже не самая умная и не самая новая, ибо была произведена ~10 лет назад. Больше всего в квартире меня напрягало обилие инфракрасных пультов, они терялись и нагружали мозг подбором нужного. До недавнего времени было принято на пультах делать огромное количество малоиспользуемых кнопок. А еще пульты не эстетичны и не гигиеничны, одни угловатые, другие с скруглёнными гранями, кнопки желтеют, в них копятся остатки жизнедеятельности обитателей на которых образуется «подкнопочный биоценоз». В итоге по дому разбросано десяток пультов с кучей ненужных кнопок, для простой операций приходилось искать по две-три штуки, их вид царапает взор, хотелось удобного тактильного и модного голосового управления.
Цель
На замену куче пультов хотелось взять современное устройство с приятным дизайном, чтобы разница по сравнению с пультами бросалась в глаза. Ответной частью контроллера должно стать устройство умеющее обучаться инфракрасным сигналам с существующих пультов. Беглый поиск и маркетинг xiaomi сделали своё грязное дело и взор мой пал на Xiaomi universal IR remotecontroller и Xiaomi Mi Smart Home Magic Cube, а чтобы эти ребята могли общаться пришлось купить Xiaomi smart home gateway 2
Приключения
В теории всё казалось просто, вот кубик, вот излучатель IR сигналов, вот их предводитель — ZigBee гейт. Но жизнь, как обычно, богаче.
Уже при подключении этого всего стало весело, без интернета это всё не настроить, все устройства требуют связи с серверами xiaomi, кроме того, продаваемые устройства произведены для китайского рынка и для их работы в родном приложении Mi Home требуется установить регион “Китай”. Всё бы ничего, но если у вас регион Китай то используйте и китайские сервера, выбора не предоставляется. Я не параноик, не против чтобы КГБ товарища Си Цзиньпина знало когда и какие инфракрасные сигналы я посылаю своим колонкам и телевизорам. На практике оказалось, что почти все способности умных устройств гвоздями прибиты к серверам и без их ведома почти ничего не делают, сами сервера далеко (в Китае) в итоге послав из приложения Mi Home 10 сигналов увеличивающих громкость колонок приходилось ждать секунд 5 до начала увеличения звука, и еще секунд 30 до завершения обработки всех 10 сигналов, да и сами сигналы излучались не быстренько, а рывками, звук увеличивается на 1 затем ждет секунду еще на два, снова ожидание итд. Удобство так себе, врагу не пожелаешь…
Беда из Китая не приходит одна, кроме тормозов натирать стала невозможность прикрутить умный кубик к управлению звуком.
Кубик управляется жестами:
- Встряхнуть
- Подвинуть на плоскости
- Повернуть на 90/180 градусов вокруг горизонтальной оси
- Повернуть вокруг вертикальной оси
- И др…
Все действия триггеры — то есть сделал действие, пришел сигнал о том, что оно случилось, но для поворота вокруг вертикальной оси кубик умеет мерять еще и градус поворота, поэтому жест поворота удобно использоваться для управления звуком, повернул на 90 градусов по часовой стрелке — звук увеличился на 10 пунктов, повернул на 45 против часовой стрелки — звук уменьшился на 5 итд. В родном приложении нет возможности реализовать такое поведение в связки с инфракрасным излучателем, лучшее что умел мой комплект — это управление яркостью светодиодов на гейте ZigBee, это настолько-же прикольно насколько бесполезно, да еще и с 3х секундной задержкой имени Китайских серверов.
Чтобы одолеть сию оказию начал смотреть как устройства дружат с опенсорсными проектами типа Home Assistant, оказалось что да, есть такая возможность, но в Xiaomi явно решили придушить её, спрятав токены для общения с излучателем и закрыв порты через которые идет общение с ZigBee гейтом. Security token для общения с IR излучателем были по советам из интернетов выужены из логов на андроид устройстве, для этого пришлось установить приложение Mi Home годичной давности в котором был такой баг. С xiaomi gateway было чуть сложнее, пришлось подпаиваться к его UART RX/TX для того чтобы с консоли открыть порты через которые с ним общается Home Assistant.
Сам Home Assistant надо где-то запускать, под эту задачу подошел Synology DS718+ который использовался у меня как DLNA медиацентр и торрентокачалка. Это устройство умеет запускать Docker контейнеры и в нем легко завёлся контейнер с Home Assistant. Home Assistant штука крутая, но в отличии от Mi Home всю умность дома в нем нужно писать ручками в yaml. Освоив DSL понимаемый Home Assistant и поплевавшись от еще одного средства программирования не требующего знания ЯП удалось состряпать костыль нужной формы.
Код автоматизации:
- id: volume_up alias: Volume up trigger: - event_data: action_type: rotate entity_id: binary_sensor.cube_0000000103ec74 event_type: xiaomi_aqara.cube_action platform: event condition: condition: template value_template: "{{ trigger.event.data.action_value > 0 }}" action: - service_template: "script.bbk_vol_up_{{ (trigger.event.data.action_value / 3) | int }}"
Эта автоматизация отлавливает событие поворота по часовой стрелке и вызывает скрипт в имя которого подставляется кол-во сигналов увеличения звука которые должен послать инфракрасный излучатель. Как вы наверное догадались, для каждого угла поворота требуется свой скрипт, на их создание была призвана копипаста, она и народила мне вот таких скриптов 20 штук:
bbk_vol_up_10: sequence: - data: command: - bbk_vol_up delay_secs: 0.04 num_repeats: 10 entity_id: remote.xiaomi_miio_192_168_2_62 service: remote.send_command
Конфигурация излучателя с перехваченными сигналами с пульта колонок выглядят вот так:
remote: - platform: xiaomi_miio host: 192.168.2.62 token: 392cbed325e862ffff983c4575b7a6f2 commands: bbk_power: command: raw:nE5m0wlk0msxmEsmszmEsm0wAHKaABkAoQAcAL1MZtOQEFmM3ARMCHwCymM2m4ENgXEAioHlgy+AwoL3gvYAh4L0gGGEBYLCAL0BR4CHhU4B+wQ8TCAA bbk_vol_up: command: raw:nMwmUwlk0mk1mEsms3ADKbABlM5hLJtMAD2ALKazkAdgAymM3AYMBApjNgKTmgGLABuBD4IaAEKA1YJrgyuBDwJvgZeEx4C/geHMZsA4YCDgxoAgwR3hU+A1ICJTCAA= bbk_vol_down: command: raw:nE5m0wlk0msxmEsmszmEsm0wAHKaABkAoQAcAL1MZtOQEFmM3ARMCHwIfAdQBFZuAQYFfAfuBCoHngveEx4C/gL+Cj4R2ANfLJqAYQUChU3MIAA=
Ура! Звук управляет поворотом кубика вокруг вертикальной оси, а включаются и телевизор и колонки поворотом кубика вокруг горизонтальной оси на 90 градусов.
Из Home Assistant все управляется, но хочется же еще и голосом этим рулить, Google Assistant подключается в Home Assistant, но тоже не без приключений. GA не показывает в интерфейсе скрипты, зато показывает выключатели. Понятие выключателя не ложилось на мой телевизор, так как не существовало программного способа понять включен он или выключен. Однако я нашел у телевизора разьём для Ethernet кабеля, но не нашел описания протокола общения по нему, поэтому решил использовать признак наличия IP адреса телевизора в сети в качестве сенсора, если IP телевизора в сети есть — он включен, если нет выключен. Чтобы реализовать такой сенсор пришлось написать простенький custom_component для Home Assistant:
import logging from homeassistant.helpers.entity import Entity from pythonping import ping logger = logging.getLogger(__name__) def setup_platform(hass, config, add_entities, discovery_info=None): entities = [] for name, ip in config['hosts'].items(): entities.append(IPSensor(name, ip)) add_entities(entities) class IPSensor(Entity): def __init__(self, name, ip): self._name = name self._ip = ip self._state = None self._is_on = None @property def name(self): return self._name @property def state(self): return self._state @property def state_attributes(self): return {'ip_address': self._ip} @property def device_class(self): return 'connectivity' @property def is_on(self): return self._is_on def update(self): result = ping(self._ip, count=1, timeout=0.1) self._is_on = result.success() self._state = 'on' if result.success() else ‘off'
Затем связать инфракрасный излучатель с сенсором в переключатель вот так:
switch: - platform: template switches: toshiba_tv: value_template: "{{ is_state('binary_sensor.toshiba_tv', 'on') }}" turn_on: service: script.toshiba_power turn_off: service: script.toshiba_power
И вот такой вот переключатель стал отображаться в Google Home и управляться с голоса.
P.S. Упражнение с умным домом прошло успешно, пошел закупать новые устройства!
P.P.S. А ZigBee хаб теперь зачем-то освещает прихожую…
Было
Стало
The Aqara Cube can be operated in 7 ways:
Flip 90°, Flip 180°, Shake, Rotate, Tap Twice, Push, and Motion detected after a minute. You can set up automations in the Aqara Home app that will allow you to control all of your smart devices.
For example: Shaking to control the night light on the Aqara Hub; Flip 90° to turn on/off the Aqara Smart Plug; Flip 180° to control the Aqara Smart Wall Switch.
1. Check to see if the hub’s firmware version is up to date.
2. Check if the hub is already in the pairing mode.
3. Check if the cube is reset successfully, and the LED indicator is blinking as expected.
4. Keep the cube as close as possible to the hub and keep trying.
5. Try with another child device to see if there is something wrong with the sensor itself.
6. Try with another hub and see if there is something wrong with the previous hub.
7. Please be aware that we can add no more than 32 child devices to a hub at the same time.
Possible reasons:
1. The accessory is too far away from the hub. Please try to install the accessory closer to the hub.
2. Low battery or dead battery. Please replace the battery.
3. The accessory is installed on a metal surface and the signal is interfered with. Please avoid metal surfaces.
The Aqara Cube uses a gyroscope sensor and you can operate the designated action in any direction.
The Aqara Cube cannot be connected to the mobile phone directly.
An Aqara Hub is required, please connect the Aqara Hub with the mobile phone, and then connect the Aqara Cube to the hub.
Please place the Aqara Cube on a flat surface to operate. If you operate it on a soft surface, such as a sofa or pillow, the Aqara Cube might not respond normally.
The maximum communication distance between the Aqara Cube and the about Hub is about 10 meters(30 ft), including barriers, such as, walls.
If the external network is down, the app control function for the Aqara Cube will no longer be available. But the local control automation for the Aqara Cube will not be affected and its connection with other smart devices will function normally.
You can rename the Aqara Cubes to distinguish them. After the Aqara Cube connects to the Aqara Hub successfully, you will be given an option to rename it. You can also rename it on the settings page for the Aqara Cube.
Please follow the steps below:
Aqara Home App>Accessory>»+»>select Aqara Cube>select hub> Open the lid with the metal strip which comes with the package, long press the reset button for 5 seconds until the LED indicator blinks 2 times.(For the first time using, just shake the Aqara Cube hard).
No, Apple Home does not have an interface that supports the Aqara Cube control operations, so the Aqara Cube cannot connect to HomeKit. Please download the Aqara Home app for use.