Установка ESPHome в Docker для Core

Материал из УМКИwiki
Перейти к навигации Перейти к поиску

Установка ESPHome в Docker для Homeassistant в режиме Core

Как установить

Разные способы установки приложения ESPHome для Home Assistant возможны не обязательно только из Supervised в виде аддонов, как показано на рисунках.

Core
Haos

Если у вас не режим Supervised для Home Assistant, то ESP Home можно установить как приложение в контейнере - используя контейнер Docker или Docker compose. Для этого например в папке /home/user/wsn/UMKI_CAR_Therm/Smart_HotBed/esphome нужно создать файл vim docker-compose.yml и в нем положить код следующего содержания

version: '3'
services:
  esphome:
    container_name: esphome
    image: esphome/esphome
    volumes:
      - /home/user/wsn/UMKI_CAR_Therm/Smart_HotBed/esphome/config:/config
      - /etc/localtime:/etc/localtime:ro
    restart: always
    privileged: true
    network_mode: host

После этого перейти в эту папку и там запустить докер

cd /home/user/wsn/UMKI_CAR_Therm/Smart_HotBed/esphome
docker compose up -d

Если все прошло нормально то сам сервер будет доступен по адресу вашего компа, который можно посмотреть командой

ip a
http://195.209.192.232:6052/
http://IP_server:6052

Как прошить

В ESPHome надо создать проект - новое устройство. Его как то обозвать и указать точку доступа и пароль WIFI , после этого записать API ключ, например ohxTGkYUpYGIzf+uzRcrbRcnZBbCiAPr8wDXqKynzy0= Если это ESP8266 с драйвером CH340, которое распозналось как /dev/ttyUSB0, то перейти в нужную директорию где лежит BIN файл и там выполнить команду

$ esptool --port /dev/ttyUSB0 write_flash 0x00000 firmware.bin

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

$ /bin/stty -F /dev/ttyUSB0 raw -echo 115200
$ cat /dev/ttyUSB0

Как сконфигурить

Для того чтобы присоединить уже прошитое в ESPHome устройство, например датчик влажности, к Home Assistant, в Настройки>> Устройства и службы >> Интеграции -- заходим в ESPHome и там выбираем Добавить устройство. В диалоговом окне система спросит IP адрес Хоста и предложит подтвердить порт 6053.

Предварительно, прежде чем привязывать устройство ESPHome к интеграции в Home Assistant, необходимо не забыть его привязать к wifi роутеру, чтобы знать его IP адрес. Для этого из доступных wifi сетей, на телефоне, находим AP точку доступа, например у нее будет ssid: "Vlaga Fallback Hotspot" заходим в эту AP, там выбираем нужную нам сеть роутера и вводим ее пароль. После этого на роутере в меню Attached Devices находим какой IP адрес присвоен к ESP устройству. По MAC адресу можно сделать привязку этого IP в настройках DHCP.

Возможно придется ввести еще секретный ключ API , если он был задан в конфигурационном файле

Вместе с этим, из YAML файла нам понадобиться пароль для интеграции в Home Assistant, в нашем случае это 12345678

Core
Haos

Добавить карточку важности объекта sensor.humidity на панель приложения, в текстовом виде:

type: entities
entities:
  - sensor.humidity
title: Vlaga