"Привет Siri, уберись на кухне" (пылесос Xiaomi + Homey)

29 нояб. 2018 г.

В данной статье хочу рассказать как интегрировать пылесос Xiaomi (вторую версию, но первая должна быть аналогичной) в Homey (он же колобок). А так же обозначить зоны уборки в помещении и управлять их уборкой через HomeKit, Siri или использовать в любых сценариях.

1. Обновляем прошивку пылесоса, если требуется:

Для начала потребуется обновить пылесос до прошивки не ниже 3.3.9_001633 т.к. в ней появилась возможность сохранения карты (а так же возможность указать виртуальные ограничения зон уборки, чтобы пылесос не заезжал в проблемные зоны.). На версиях ниже тоже будет работать, но не стабильно, т.к. при каждом запуске карта будет обновляться и все координаты сбиваться.

После обновления, там же в приложении Mi Home, выбираем пылесос / настройки (многоточие в верхнем правом углу) / настройки робота / и включаем "режим сохранения карты". После чего на главной странице управления пылесосом появился кнопка "редактировать карту" жмём её и сбрасываем старую карту. Запускаем пылесос на уборку по всей квартире, чтобы он построил и сохранил всю карту помещения.

2. Добавляем пылесос в Homey:

Следующим шагом добавляем пылесос в Homey, для этого устанавливаем в Homey плагин Xiaomi Mi Home, так же потребуется знать ip адрес пылесоса в Вашей сети и token пылесоса.

IP адрес можно посмотреть на роутере в списке клиентов WiFi, а о том как достать token есть много статей, но мне больше всего понравился способ с эмулятором Android Nox и версией Mi Home от Вевса. Если у Вас есть устройство на Android, то эмулятор можно пропустить (у меня просто ни одного Android устройства дома не оказалось) подробнее где что скачать и как делать можно найти здесь.

1.Получаем токен Mi wi-fi совместимых устройств

2. Добываем токен (Token) Xiaomi MiHome с iOS устройств через MacBook

После того как достали token, добавляем в Homey новое устройство, выбираем Mi Robot в соответствующем плагине и прописываем ip и token.

3. Определяем координаты:

Для определения координат открываем приложение Mi Home и переходим на страницу пылесоса, чтобы была видна карта помещения. Далее за вводное берём координаты 25500x25500 это так называемая нулевая координата, и начинается она от док станции пылесоса. Создаём тестовый Flow, в столбик when перемещаем для теста This Flow is started, а в столбик then перетаскиваем карточку Mi Robot и перелистываем до действия Send vacuum cleaner to target. Затем необходимо задать X и Y координаты, помня что докстанция это 25500x25500 прибавляем и убавляем значение к этим координатам по 1000, и выполняя тестовый запуск Flow смотрим на открытую карту в приложении Mi Home. Запоминаем куда перемещается указатель точки назначения, тем самым сможем ориентироваться в координатах, прибавлять или убавлять их для попадания в нужную зону. Определившись с системой координат, стараемся переместить точку назначения в левый нижний угол желаемой зоны уборки. (возможно у кого-то нужно будет переместить в правый нижний угол, или даже верхний, зависит от положения док станции, но у меня это левый нижний)

4. Обозначаем границы зон:

Следующим шагом меняем действие Send vacuum cleaner to target в тестовом Flow на Start zone cleaning. Формат координаты в этой карточке следующий [18700, 27600, 22200, 33200, 1] где 18700, 27600 координаты X и Y нижней левой точки зоны уборки, которую мы определили на предыдущем шаге, а 22200, 33200 координаты верхней правой точки этой зоны, которая определяется путём экспериментов. Прибавляя и убавляя значения, проверяем получаемую зону после запуска Flow на карте в Mi Home. ВАЖНО координаты второй точки ОБЯЗАТЕЛЬНО больше чем первой! Если координаты второй точки получились меньше чем у первой, то нужно их поменять местами в шаблоне, иначе не будет работать. А последний оставшийся параметр в шаблоне "1" это количество циклов уборки, по аналогии с тем же параметром в Mi Home от 1 до 3.

Таким же способом определяем координаты других зон если требуется.

5. Добавляем в HomeKit:

Для запуска зональной уборки через Siri потребуется добавить в Homey виртуальную кнопку через модуль Virtual Devices. Лучше всего Siri будет озвучивать тип кнопки Heater, такой тип она будет считать выключателем, а не розеткой или светом.

Далее создаём Flow где when это условия включения виртуальной кнопки, а then это карточка Mi Robot с действием Start zone cleaning по указанным координатам. И ещё одна карточка это выключение виртуальной кнопки. Т.к. если оставить её включенной, то второй и далее запуск через Siri не пройдёт, т.к. HomeKit видит что данное устройство уже включено и не передаёт команду в Homey.

Остаётся только пробросить виртуальную кнопку в HomeKit через плагин от Sprut'а, переименовать как Вам нравится, и создать сценарий в приложении Home Вашей iOS, где в имя написать удобную Вам команду, например "Уберись на кухне", а в действие добавить включение той самой добавленной виртуальной кнопки.

Всё теперь можно командой через Siri "Уберись на кухне" отправить пылесос убираться в нужной зоне. Это быстрее и удобнее чем рисовать каждый раз зону в приложении Mi Home, и работает даже без интернета (разве что SiRi нужен интернет) и китайских серверов, которые часто стали сбоить, после чего в приложении Mi Home ничего нельзя сделать :-)

         
         

Пример кейса "уборка на кухне после готовки":

Для себя решил опробовать кейс уборки на кухне после окончания готовки.

После выключения подсветки в зоне готовки приходит уведомление на телефон с вопросом "запустить уборку на кухне?" и если нажать в ответе кнопку "Да" то запускается уборка по координатам кухни.

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


Мы в Telegram - t.me/soprut
  1. Андрей Помников (Oscar23)
    Андрей Помников (Oscar23) 4 месяца назад

    ты гений! А руссифицировать пробовал пылесос?

  2. Андрей Помников (Oscar23)
    Андрей Помников (Oscar23) 4 месяца назад

    Эту видел:) там на маке через «питон» какой-то надо... я ничего не понял. Токен и айпи доставать научился:)

  3. Владислав Байдаченко (Baidak_V)

    Все версии пылесоса поддерживаются?

  4. Maxmudjon Payziyev (Maxmudjon)
    Maxmudjon Payziyev (Maxmudjon) 4 месяца назад

    Скоро у Mi Homey будет поддержка пылесосы) 

  5. Александр Любопытный (auva)
    Александр Любопытный (auva) отредактировано 4 месяца назад

    вот это да... вот бы еще iRobot Roomba 980 научить зоны убирать...

    • Александр Костерин (Akost)

      iRobot не умеет так карту строить, поэтому Xiaomi и выигрывает сейчас среди других пылесосов при меньшей цене) если качество уборки на первом месте то iClebo Omega, а старички iRobot не шевелятся, всё думая что они на рынке самые главные, только цену гнут, а по всем фронтам уже проиграли конкурентам)

  6. Александр Любопытный (auva)
    Александр Любопытный (auva) отредактировано 4 месяца назад
    2000x2000x_image.png?1543574376умеет только вот так ;(
    • Александр Костерин (Akost)
      Александр Костерин (Akost) отредактировано 4 месяца назад

      И на сколько она точная? зоны же по ней убирать нельзя как понимаю? или ошибаюсь?

      я так понимаю он строит её просто по данным от колёс как ездил, а не по датчикам типа лидара? т.к. лидара у него вроде бы и нет

  7. Александр Любопытный (auva)
    Александр Любопытный (auva) отредактировано 4 месяца назад

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

    по поводу лидара - не знаю.

    но его огромный плюс это уборка под кроватью... а ксиаоми умеет убирать под кроватью?

    • Александр Костерин (Akost)

      Да конечно, и под кроватью и под шкафами убирает, везде где пройдёт по высоте. Шторы и т.п. не помеха, их видит но через них тихо проезжает. Ещё есть старый шкаф один, у него внизу вензеля, пылесос определил себе одно место где вензель более высокий, и он умещается там. так вот проезжает под этим вензелем, убирается под шкафом и выезжает в этом месте. Так что построение карты у Xiaomi очень хорошее. Сама уборка хорошая, претензий нет, но у друзей iClebo Omega убирает ещё лучше, особенно коврик у двери)

  8. Владислав Байдаченко (Baidak_V)

    Какие версии пылесосов работают?

  9. Михаил Радьков (mike02)
    Михаил Радьков (mike02) месяц назад

    При запуске через Homey (как описано в этой инструкции) должна подсвечиваться заданная область зональной уборки в приложении MiHome?

    И почему-то у меня странная штука с координатами происходит: в пункте Send VC to target узнаю необходимые координаты нижней левой и верхней правой точек, но когда убираю эту команду, а на ее место ставлю Start Zone Cleaning с полученными ранее координатами, пылесос едет совершенно в другое место...

К списку статей

Скидки для сообщества

MI-DOM

+7 977 282-80-53
Промокод:
SPRUTAI
Размер скидки:
5%

ds-electronics.ru

+7 499 403-34-90
Промокод:
sprut
Размер скидки:
25%
-25% на terneo sx
-10% на остальные терморегуляторы terneo
в комментариях к заказу, предложение ограничено и действует только до конца апреля.

УЮТНЫЙ ДОМ

+7 495 797-21-74
Промокод:
SPRUT
Размер скидки:
5%

Похожие статьи

15 нояб. 2018 г.
Xiaomi Mi Remote 360 добавляем Apple HomeKit
9 нояб. 2018 г.
Кейс создания умного дома без каких либо прокладок в виде Raspberry pi
27 окт. 2018 г.
Нативный Термостат для котла на ESP8266 с поддержкой Apple HomeKit
28 авг. 2018 г.
От голого Raspbian до веб-интерфейса homebridge за четыре команды в терминале.
14 нояб. 2018 г.
Плагин для интеграции в Athom Homey дочерних zigbee-устройств, подключенных на координаторы deCONZ - RaspBee или ConBee.
19 мар. 2019 г.
Обзор долгожданного 2х канального zigbee реле от Aqara, сравнение с конкурентами и небольшой тест на Deconz, Mi Hub и Aqara Hub.
1 нояб. 2018 г.
Настройка Deconz USB стика ConBee от Dresden Elektronik в Hass.io и некоторые особенности эксплуатации
25 нояб. 2018 г.
Умное зеркало добавляем модули Airplay и Google Calendar
3 окт. 2018 г.
Как собрать и настроить Hyperion Ambilight - адаптивную подсветку ТВ.
30 июн. 2018 г.
Добавляем устройства управляемые по ИК через Broadlink RM3 Mini на примере кондиционера.