- Wi-Fi ESP8266 в системе Home Assistant — настройка беспроводного программирования.
- Для реализации этой возможности необходимо:
- Далее нужно добавить Wi-Fi ESP8266 устройство в систему Home Assistant.
- 2. Загрузка программы в ESP8266.
- Wi-Fi ESP8266 в системе Home Assistant — настройка беспроводного программирования.
- Для реализации этой возможности необходимо:
- Далее нужно добавить Wi-Fi ESP8266 устройство в систему Home Assistant.
- 2. Загрузка программы в ESP8266.
- Способы настройки удаленного доступа к Home Assistant
- Реальный статический ip адрес
- Реальный динамический ip адрес
- Серый ip адрес — vpn/ssh туннель
- Серый ip адрес — использование сервиса роутера Keenetic
- Серый ip адрес — использование TOR
- Серый ip адрес — использование ZeroTier
- Серый ip адрес — nabucasa.com
Wi-Fi ESP8266 в системе Home Assistant — настройка беспроводного программирования.
Благодаря дополнению ESPHome, в системе домашней автоматизации Home Assistant, есть возможность беспроводного программирования плат основанных на микроконтроллерах ESP8266 и ESP32 , не снимая их с установленного места.
Для реализации этой возможности необходимо:
- Купить или собрать свой программатор, для первого программирования микроконтроллера (я переделал готовый USB адаптер ссылка ниже).
Далее нужно добавить Wi-Fi ESP8266 устройство в систему Home Assistant.
- Откроется окно (New device) заполняем название устройства (в будущем при добавлении следующего устройства достаточно только ввести название остальные параметры добавятся автоматически), имя и пароль от Вашей Wi-Fi сети. Нажимаем [NEXT]
- В следующем окне выбираем тип нашего устройства (у меня ESP8266 по умолчанию это плата ESP01 с 1Mb), в третьем варианте откроется список разных плат. Нажимаем [NEXT]
Далее нажимаем [EDIT] затем [INSTALL]
Откроется окно где будет предложен способ загрузки программы в наше устройство (ESP8266). Эта программа обеспечит беспроводной доступ к реле. Выбираем ручную установку [Manual download]. Произойдет формирование (в моем случае pump.bin) файла и загрузка его на компьютер.
В системе появилось новое устройство [pump] оно пока OFFLINE. После загрузки в устройство скачанного файла, статус станет ONLINE.
2. Загрузка программы в ESP8266.
Для первой загрузки я применил программу ESPHome-Flasher. Скачиваем ESPHome-Flasher и драйвера к программатору (устанавливаем).
Подключаем программатор (нажимаем кнопку и подключаем в USB порт ПК) и запускаем программу ESPHome-Flasher . Далее прошиваем ESP8266.
Wi-Fi ESP8266 в системе Home Assistant — настройка беспроводного программирования.
Благодаря дополнению ESPHome, в системе домашней автоматизации Home Assistant, есть возможность беспроводного программирования плат основанных на микроконтроллерах ESP8266 и ESP32 , не снимая их с установленного места.
Для реализации этой возможности необходимо:
- Купить или собрать свой программатор, для первого программирования микроконтроллера (я переделал готовый USB адаптер ссылка ниже).
Далее нужно добавить Wi-Fi ESP8266 устройство в систему Home Assistant.
- Откроется окно (New device) заполняем название устройства (в будущем при добавлении следующего устройства достаточно только ввести название остальные параметры добавятся автоматически), имя и пароль от Вашей Wi-Fi сети. Нажимаем [NEXT]
- В следующем окне выбираем тип нашего устройства (у меня ESP8266 по умолчанию это плата ESP01 с 1Mb), в третьем варианте откроется список разных плат. Нажимаем [NEXT]
Далее нажимаем [EDIT] затем [INSTALL]
Откроется окно где будет предложен способ загрузки программы в наше устройство (ESP8266). Эта программа обеспечит беспроводной доступ к реле. Выбираем ручную установку [Manual download]. Произойдет формирование (в моем случае pump.bin) файла и загрузка его на компьютер.
В системе появилось новое устройство [pump] оно пока OFFLINE. После загрузки в устройство скачанного файла, статус станет ONLINE.
2. Загрузка программы в ESP8266.
Для первой загрузки я применил программу ESPHome-Flasher. Скачиваем ESPHome-Flasher и драйвера к программатору (устанавливаем).
Подключаем программатор (нажимаем кнопку и подключаем в USB порт ПК) и запускаем программу ESPHome-Flasher . Далее прошиваем ESP8266.
Способы настройки удаленного доступа к Home Assistant
Итак, я поставил сервер Home Assistant. Находясь в одной WiFi сети я этим сервером я могу на него заходить, включать-выключать свет, смотреть температуру, и делать все то зачем и нужен HA.
Но, если я ушел, то все, — доступа к серверу нет. А хочется иметь возможность удаленно управлять домашним HA. Чтобы можно было из любого места где есть интернет делать все то же самое что можно делать находясь рядом с сервером. Например, задача, удаленно включать обогрев. Чтобы приезжаешь, а уже тепло.
Перед тем как строить удаленный доступ для Home Assistant, я решил выяснить какие вообще есть способы удаленно заходить на сервер HA. Чтобы понять какой способ лучше всего подходит в моей ситуации.
Я знаю про такие варианты. Вполне возможно что есть еще какие-то способы как можно удаленно заходить на сервер HA (если вы о них знаете, напишите, пожалуйста на ivan@bessarabov.ru, я дополню этот список).
- Реальный статический ip адрес
- Реальный динамический ip адрес, использование сервиса duckdns.org или подобного
- Серый ip адрес — vpn/ssh туннель до сервера с реальным статическим адресом
- Серый ip адрес — использование сервиса роутера Keenetic
- Серый ip адрес — использование TOR
- Серый ip адрес — использование сервиса nabucasa.com
Есть совершенно отличная телеграмм группа про Home Assistant. В этой группе я создал опрос о том кто какой способ использует, вот результаты:
(Когда я создавал этот опрос я еще не знал про сервис nabucasa.com, поэтому такого пункта в опросе нет)
Реальный статический ip адрес
Это самый простой и надежный способ сделать возможность удаленно заходить на свой сервер Home Assistant. Ваш провайдер интернета выделяет вам настоящий ip адрес к которому можно обращаться из интернета. Например, «74.125.232.228». И этот ip адрес не меняется, все время у вас именно такой адрес. Дальше вы на роутере настраиваете проброску портов. Например, в вашей сетей сервер HA живет на адресе http://192.168.1.30:8123 и вы настраиваете на роутере что если человек приходит на ваш реальный http://74.125.232.228:8123, то это все прокидывается на сервер HA http://192.168.1.30:8123 После такой настройки появляется возможность заходить на сервер HA снаружи.
Но лучше всего настройку на этом не закончить, а сделать чтобы доступ к серверу был по протоколу https, а не http. (При использовании http гораздо больше вероятности что у вас украдут логин-пароль для доступа к HA и злоумышленник получит доступ к вашему HA)
У разных провайдеров разные условия для получения реального статического ip адреса:
- Некоторые провайдеры дают реальный статический адрес бесплатно всем своим клиентам, просто платите за интернет, плюс при этом у вас есть реальный ip адрес
- Другие провайдеры предоставляют услугу «реальный ip адрес» за дополнительную плату
- А есть провайдеры, которые вообще не могут предоставить реальный ip адрес даже за дополнительные деньги
Итого. Если у вас уже есть реальный статический ip адрес, то вполне возможно что лучше всего вам настроить удаленный доступ к HA с помощью этого ip адреса.
Если провайдер ни при каких условиях вам не может выдать реальный статический ip адрес, то вы можете либо сменить провайдера, либо использовать какой-то другой способ для того чтобы настроить удаленный доступ.
Если же сейчас у вас нет реального ip адреса, но провайдер за дополнительные деньги может вам его выдать, то нужно думать, возможно стоит платить, либо использовать какой-то другой вариант.
Реальный динамический ip адрес
Некоторые провайдеры предоставляют своим клиентам реальный ip адрес, но этот адрес иногда меняется. Сегодня у вас реальный ip адрес «74.125.232.228», а завтра уже «74.125.232.4».
Точно так же как и в случае с реальным ip адресом вы пробрасываете порт на роутере. Плюс нужно настроить специальный софт, чтобы заходить снаружи не на айпишник (который меняется), а на специальное имя типа my-domain.duckdns.org. (благодаря софту это имя всегда указывает на тот реальный ip адрес, который у вас сейчас).
Провайдер либо дает реальный динамический ip адрес, либо предоставляет доступ в интернет как-то иначе. Я ни разу не слышал, чтобы можно было дополнительно купить услугу «Динамический реальный ip адрес».
Итого. Если провайдер вам выдает реальный динамический ip адрес, то, скорее всего, вам стоить настроить доступ к HA через duckdns.org.
Серый ip адрес — vpn/ssh туннель
В том случае если у вас нет реального ip адреса, то проброска порта на роутере не предоставит вам удаленный доступ в HA.
Но если у вас есть виртуалка на digitalocean.com или у другого облачного провайдера, то вы можете сделать следующее.
С сервера на котором у вам работает HA можно прокинуть туннель до виртулаки. Дальше вы будете заходить браузером на порт на виртуалке и при этом будете общаться с вашим сервером HA.
Итого. Если у вас нет реального ip адреса, но у вас есть сервер с реальным ip адресом, то этот вариант может вам подойти.
Серый ip адрес — использование сервиса роутера Keenetic
Если у вас есть роутер Keenetic, то вы можете использовать сервис, который идет вместе с этим роутером. Вы можете получить адрес в домене *.keenetic.pro или *.keenetic.link и настроить чтобы по этому адресу отвечал сервер Home Assistan, который живет у вас дома. Сервис бесплатный и это будет работать даже если у вас нет реального ip адреса (этот способ можно использовать и в том случае если у вас есть реальный ip адрес, но, на мой взгляд, если у вас реальный ip, то лучше использовать другой способ).
Серый ip адрес — использование TOR
Еще один вариант как можно получить доступ к серверу HA это использовать TOR. На сервере с HA нужно поднять и настроить специальный софт.
Как результат вы получите адрес вида «abcdef1234567890.onion» плюс специальный токен. Потом вам нужно установить на мобильный специальный ТОР браузер и после этого вы сможете заходить на ваш сервер удаленно.
Серый ip адрес — использование ZeroTier
Это внешний сервис. Существует специальный плагин который позволяет использовать этот сервис — https://community.home-assistant.io/t/home-assistant-community-add-on-zerotier-one/109091.
Серый ip адрес — nabucasa.com
Существует сервис nabucasa.com Можно использовать его для того чтобы удаленно заходить на свой сервер HA.
Сервис платный, стоит $5 в месяц. Но, насколько я понимаю, какая-то часть этих денег (а может быть и все) идет создателям Home Assistant, так что это хорошая идея поддержать разработчиков HA деньгами, чтобы они и дальше улучшали HA.