havedeg

havedeg

just setting up my twttr
Пикабушник
поставил 13179 плюсов и 3685 минусов
отредактировал 155 постов
проголосовал за 276 редактирований
Награды:
Сборщик Пыли За любознательность За неравнодушие к судьбе Пикабу5 лет на ПикабуС Днем рождения, Пикабу!За Великую Снежковую битву
67К рейтинг 634 подписчика 81 подписка 40 постов 16 в горячем

Ну вы знаете - эти тиктокеры

Штирлиц никогда так не был близок к провалу

#comment_198264255

Предыстория - таксисту не засчитали бонусные поездки и заподозрили в мошенничестве. Кто-то создал фейковый аккаунт @yandex.faxi и таки узнал правду.

Штирлиц никогда так не был близок к провалу Скриншот, Яндекс Такси, Длиннопост, Комментарии на Пикабу, Такси
Штирлиц никогда так не был близок к провалу Скриншот, Яндекс Такси, Длиннопост, Комментарии на Пикабу, Такси
Показать полностью 2

Миграция из Mi Home в Home Assistant. Часть 2

И снова всем привет!

Предыдущий мой пост вызвал большой резонанс и отклик, что меня несказанно удивило. Соответственно, не прошло и пары месяцев, как я пишу этот пост, потому что я ленивая жопа

очень сильно был занят).


В предыдущем посте я рассказывал о том как установить Home Assistant на Raspberry Pi 3b+, и как было справедливо подмечено в комментариях, я выбрал не самый простой путь)

Для малинки имеются уже и готовые образы Home Assistant, которые достаточно раскатать на SD карту, воткнуть и запустить - лежат они вот >>>тут<<<, вместе с инструкциями по их раскатке и первоначальной подготовке. Читаем и раскатываем, должно быть не сложно. Сам я их не пробовал, поэтому ничего не могу сказать о нюансах их установки.


Тем не менее, продолжаем.

Я уже говорил, что в своём сетапе использую Xiaomi gateway 2 в качестве центра интеграции для различных датчиков температуры/движения, поэтому буду говорить исключительно о его подключении к HA. В комментариях предлагали приобрести ZigBee свистки CC253x, они действительно будут работать, но я не пробовал, ничего не могу сказать. Слышал что с ними бывают частые проблемы в плане их дальнобойности/периодических отвалов, но это всё "одна бабка сказала".


Итак, собственно подключение. Вы купили xiaomi gateway 2 и набор датчиков, купили raspberry pi и установили на него home assistant одним из предложенных способов. Что дальше? А дальше нужно сделать следующие шаги:


1. Инициализовать Xiaomi Gateway через приложение Mi Home. НИ В КОЕМ СЛУЧАЕ НЕ ОБНОВЛЯЙТЕ ЕГО! Да, вот прям капсом. Иначе потом придется браться за паяльник) Мне пришлось по крайней мере. А вообще штатно подключаем Xiaomi Gateway 2 к Mi home, прописываем WiFi сеть - всё, как обычно.


2. Добавить все необходимые датчики в mi home. Этот шаг не должен вызвать особых сложностей.


3. Теперь необычная часть. Мы же помним, что шлюз не обновляли, да? Идем в карточку шлюза, нажимаем три точки справа вверху - About, и тыкаем около 10-15 раз в районе надписи Plug-in version. Если всё сделано правильно, то появится вкладка Wireless communication protocol. Заходим в неё, убеждаемся что стоит галочка и записываем где-нибудь пароль. Таким образом мы включаем локальный режим для шлюза.

Миграция из Mi Home в Home Assistant. Часть 2 Умный дом, Xiaomi, Home Assistant, Длиннопост

Записали пароль? Отлично, а дальше всё просто.

В случае, если вы ставили hassio по моей инструкции, то идём в /usr/share/hassio/homeassistant на малинке, и правим файлик configuration.yaml

Должно получиться что-то вроде этого:


# Gateway
xiaomi_aqara:
discovery_retry: 5
gateways:
- key: тут_указываем_ключ_из_пункта_3

После чего перезапускаем home assistant

docker restart homeassistant


!!!!!!!!!

Сноска к тексту выше. Поскольку писать я его начал месяц назад, за это время вышла новая версия home assistant, и шлюз теперь добавляется не через файл конфигурации, а через страницу интеграций. Просто заходите на вебморду HA, заходите слева в Configuration - Integrations, выбираете Xiaomi Gateway, и следуете инструкциям.

!!!!!!!!!



После этого у вас по http://raspberry_pi_ip/config/entities должны появиться ваши датчики и светильник, коим шлюз по сути и является.

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


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

По ssh заходим на raspberry pi, и выполняем следующую команду:


nmap -sU ip_адрес_шлюза -p 9898,4321


В ответ должно прийти сообщение, что порты открыты. Если видим хотя бы один closed, значит беремся за паяльник.


Довольно неплохой гайд есть тут: https://m.habr.com/ru/post/487768/


Собственно, делал я по нему, за исключением того момента что вместо usb свистка я использовал raspberry pi.

На нем имеется гребёнка с выводами rx/tx, поэтому цепляемся проводами к ним

Миграция из Mi Home в Home Assistant. Часть 2 Умный дом, Xiaomi, Home Assistant, Длиннопост

Порты на диаграмме обведены.

Предполагается, что вы уже зашли по ssh под рутом на raspberry pi (да, она должна быть включена!), и запустили там


minitty /dev/ttyAMA0


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


соединяем его TX с RX конвертера, а GND с GND. RX шлюза пока не подключаем.


Крайне внимательно прочитайте этот абзац, иначе велика вероятность шлюз спалить!


Далее следуем инструкциям из статьи (включаем шлюз, вводим команды, накидываем RX на ТХ малинки).


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


Собственно, на сегодня всё, хотел бы ещё чего-нибудь рассказать, но понял что борюсь с желанием отложить статью на завтра, а я этим и так занимался последний месяц) В следующей части могу рассказать как дружил дом с Алисой, мучал пылесос и настраивал всякие разные автоматизации.


Вопросы, предложения приветствуются)


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

Показать полностью 2

Миграция из Mi Home в Home Assistant. Часть 1

На днях тут ляпнул не подумав в комментариях, что могу рассказать как перетащить девайсы умного дома Xiaomi в Home Assistant, и внезапно в подписчиках у меня образовалось 258 человек. Люди, что ж вы делаете?) Придется рассказывать) А так как работаю я как раз в роли девопс инженера то тут уж никуда не деться.

Миграция из Mi Home в Home Assistant. Часть 1 Умный дом, Xiaomi, Home assistant, Длиннопост

Ну ладно, шутки шутками, а давайте всё же попробую.

Итак, начнем с общей информации для тех, кто не в теме. Что за звери этот Mi Home и кто такой Home Assistant? И зачем что-то куда-то перетаскивать?


Mi Home - это такое приложение от компании Xiaomi, в которое можно добавлять различные устройства умного дома от Xiaomi же. Этих устройств компания наплодила вагон и маленькую тележку, отличаются невысокой ценой и, внезапно, вполне достойным качеством. Тут вам и датчики дыма, и умный свет, и увлажнители с пылесосами и ещё черт знает что с хвостиком.

Стоит при этом всё это вполне разумных денег. Ну, имхо конечно же.


Процесс взаимодействия с умным домом Xiaomi происходит следующим образом - вы покупаете, например, робот-пылесос. Скачиваете приложение Mi Home на свой телефон, следуете нехитрой инструкции и вуаля - ваш пылесос резко умнеет, и умеет уже убираться по расписанию, убирать зоны квартиры и разве что кофе вам в постель с утра не приносит.

В общем-то всё это выглядит хорошо и здорово, за исключением одного неприятного момента.

ВСЕ ваши умные девайсы за редким исключением смотрят во внешнюю сеть, чтобы взаимодействовать с серверами Xiaomi, что само по себе является не очень-то приятным фактом.


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


Чтобы решить эту проблему умные люди, собравшись с мыслями и покурив документацию на девайсы (а где-то и отреверсив прошивки девайсов) начали писать своё, открытое ПО для умного дома - а именно, Home Assistant, Domoticz и ещё кучу всяких разных. Суть этих решений заключается как раз в том чтобы отвязать ваши умные девайсы от злобных китайских серверов и управлять ими вне зависимости от того доступны они или нет.


Рассказывать я буду на примере своего "умного дома". И рассказывать именно про Home Assistant, потому что именно его и удалось успешно запилить.

Итак, что имеем на старте.

22 умных девайса, а именно: робот-пылесос, два шлюза Xiaomi, пачку разных лампочек, 3 датчика движения, датчик протечки и датчик дыма, датчики температуры и влажности. А также 2 увлажнителя и умную розетку для обогревателя. В Mi Home это выглядит как-то так:

Миграция из Mi Home в Home Assistant. Часть 1 Умный дом, Xiaomi, Home assistant, Длиннопост

Собственно, процесс добавления девайсов в приложение обычно не вызывает особых вопросов и отдельно его освещать я не буду.


Чтобы начать втаскивать всё это хозяйство в Home Assistant, вам понадобится:


1. Базовое знакомство с linux. Всё конфигурирование (по крайней мере основное) Home Assistant сводится к редактированию его конфиг-файла. Вас не должны пугать такие слова как docker, shell, daemon, логи и т д.

2. Наличие raspberry pi 3 b+ либо Intel Nuc. На самом деле, подойдет любой свободный ПК дома, но учтите, что он должен быть включен 24/7, и желательно иметь на борту встроенный Bluetooth.

3. Карточка microSD для Raspberry Pi 3b+. Крайне желательна побыстрее по скорости. Тут уж смотрите сами.

4. Wifi-роутер. У меня mikrotik hap ac v2, возможно будете использовать другой, но роутер должен быть. И он должен поддерживать 2.4 ГГц wifi.

5. Наличие Xiaomi Gateway 2. Нужен если планируете использовать датчики Xiaomi же, и прочие девайсы умного дома работающие по протоколу Zigbee.

Обратите внимание, что нужна именно вторая версия. Шлюз Aqara не подойдет, он не умеет переключаться в dev mode. Выглядит как-то так:

Миграция из Mi Home в Home Assistant. Часть 1 Умный дом, Xiaomi, Home assistant, Длиннопост

6. Наличие прямых рук и умения искать в гугле. Серьезно, искать в гугле - очень пригодится.


Итак, с чего бы начать. Наверное с настройки Raspberry Pi. Для сокращения размеров статьи я буду приводить ссылки на имеющуюся документацию в сети, по которой я сам проводил настройку.


Шаг 1.

Вы купили несколько девайсов, и купили Raspberry Pi 3b+. Для начала нужно установить на него операционную систему Raspbian 10. Вот этот гайд довольно неплохо описывает процесс. Вкратце - скачиваете NOOBS образ для Raspberry, заливаете его на SD карту и вставляете в девайс. По сути это вся установка ОС. Гайд немного устарел, поэтому качайте последние версии, у меня стоит Raspbian 10.


Шаг 2.

Конфигурирование установленной ОС. Как минимум вам понадобится docker для того чтобы завести на нём Home Assistant. Заходите по SSH на IP адрес Raspberry Pi, делаете sudo su и далее следуете этому гайду. Учтите, что архитектура Raspberry Pi armhf, в гайде есть места для сниппетов, где надо выбирать целевую архитектуру. У меня помнится были какие-то танцы с бубном при установке докера, но с помощью п.6 требований (умение гуглить, помните, да?) всё решилось)


Шаг 3

Установка непосредственно Home Assistant. Тут в принципе ничего сложного нет, но нужно повнимательнее читать документацию и делать всё строго по гайдам. По ссылке github-репозиторий со скриптами установки. По сути установка сводится к банальной команде:

curl -sL https://raw.githubusercontent.com/home-assistant/supervised-... | bash -s -- -m raspberrypi3-64

Ждём с полчаса, после чего пробуем зайти по адресу http://RASPBERRY_IP:8123

Если получилось, то нам удалось установить Home Assistant.


Шаг 4

URL с портом - некрасиво. Давайте поставим nginx? Делается это так:

sudo apt update
sudo apt install nginx-full

После чего надо проследовать в директорию /etc/nginx/sites-available и создать там файл hassio с вот таким содержимым (когда на пикабу можно будет вставлять код сниппеты?):

map $http_upgrade $connection_upgrade {

default upgrade;

'' close;

}

server {

listen 80;

client_max_body_size 32M;

large_client_header_buffers 4 16k;

location / {

proxy_pass http://127.0.0.1:8123;

proxy_set_header Host $host;

proxy_http_version 1.1;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection $connection_upgrade;

}

access_log /var/log/nginx/access.log;

error_log /var/log/nginx/error.log crit;

}


После чего сделать
ln -s /etc/nginx/sites-available/hassio /etc/nginx/sites-enabled/
systemctl restart nginx

После этих операций можно будет уже заходить на вебморду Home Assistant по URL http://RASPBERRY_IP (без порта в конце!)

Собственно, после входа home assistant предложит вам изменить имя пользователя/пароль по умолчанию, не забудьте сделать это.



Дико извиняюсь, но устал я что-то набивать эту простыню текста, продолжу завтра-послезавтра. Сегодня мы более-менее научились настраивать Raspberry Pi и худо-бедно установили на него home assistant)

Во второй части рассмотрим настройку шлюза Xiaomi, добавление его в Home Assistant и расскажу для чего там может понадобится паяльник. При условии, конечно, что эта статья зайдет)

Показать полностью 2

Пожалуй хватит на сегодня интернета

#comment_175411159

Пожалуй хватит на сегодня интернета Комментарии, Комментарии на Пикабу, Хватит, Длиннопост
Показать полностью 1

Так и запишем

#comment_172613862

Так и запишем Комментарии на Пикабу, Комментарии, Исполнение желаний, Скриншот
Показать полностью 1

Рядовой ФастАндФуррр к дочке приступает!

Рядовой ФастАндФуррр к дочке приступает! Скриншот, Комментарии на Пикабу

#comment_162566656

Показать полностью 1

Когда некогда смотреть

Когда некогда смотреть Комментарии, Комментарии на Пикабу, Порно, Нет времени объяснять, Скриншот

#comment_152639579

Отличная работа, все прочитано!