Главная страницаHome AssistantHome Assistant в Docker ContainerDocker часть 8: ESPHome
Docker часть 8: ESPHome

Docker часть 8: ESPHome

Если вам нравится проектировать системы с микроконтроллерами ESP8266 и ESP32, обязательно загляните в раздел ESPHome, если вы еще этого не сделали.

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

Установка ESPHome контейнера

Расширяем наш docker-compose.yaml конфигом для контейнера ESPHome.

version: '3.0'

services:
  [...]

  esphome:
    container_name: esphome
    image: esphome/esphome
    restart: unless-stopped
    privileged: true
    ports:
      - "6052:6052/tcp"
    environment:
      - TZ=Europe/Moscow
    volumes:
      - ./esphome/config:/config
      - /etc/localtime:/etc/localtime:ro

Добавление в Home Assistant

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

Открываем основной файл конфиграции Home Assistant configuration.yaml и добавляем новую панель.

panel_iframe:
  portainer:    # часть 2
    [...]
  configurator: # часть 4
    [...]
  adminer:      # часть 5
    [...]
  zigbee2mqtt:  # часть 7
    [...]

  esphome:
    title: ESPHome
    icon: mdi:chip
    url: "http://<ip>:6052"
    require_admin: true

Далее перезагружаем Home Assistant и у нас появляется возможность зайти в web интерфейс.

Так как мы выставили privileged: true для контейнера, то USB устройства будут автоматически доступны в панели.

Давайте попробуем добавить новое устройство со стандартным конфигом. В качестве железки будет выступать ESP32-WROOM-32, которая раньше не использовалась. Процесс прошивки мы опустим, для этого воспользуйтесь статьей прошивка ESP32/ESP8266.

ESP32 будет содержать всего один датчик, со статусом работы. Чтобы можно было отследить в Home Assistant.

binary_sensor:
  - platform: status
    name: ESPHome Hello World Status

Как видно Docker контейнер с ESPHome отрабатывает как надо. Теперь вы можете управлять и прошивать ваши устройства прямо из интерфейса Home Assistant.

Итоговая структура проекта

home-assistant
├── .env
├── docker-compose.yaml
├── esphome
│   └── ...
├── fileeditor
├── homeassistant
├── mosquitto
├── portainer
└── zigbee2mqtt

Список всех частей

Был ли полезен материал?

Мне очень важно получать обратную связь. Пожалуйста, оцените материал. Так я пойму в какую сторону его стоит изменить.

Комментарии
  • Михаил
    Михаил
    20.06.2024 23:28

    Добрый вечер! Большое спасибо за цикл столь подробных статей, но как быть, если HA не Supervised? В боковой панеле иконка ESPHome не появляется, после добавления конфига в congiguration.yaml

  • Игорь
    Игорь
    27.08.2024 17:33

    Добрый день, после добавления в configuration.yaml этого кода — панелька слева никак не меняется, как после 4 главы появились configurator и portainer так больше ничего не меняется, ни порядок их ни иконки ни нового не добавляется. В чем может быть проблема?

    # Loads default set of integrations. Do not remove.
    default_config:

    # Load frontend themes from the themes folder
    frontend:
    themes: !include_dir_merge_named themes

    automation: !include automations.yaml
    script: !include scripts.yaml
    scene: !include scenes.yaml

    panel_iframe:
    portainer:
    title: Portainer
    url: «https://192.168.0.27:9443/#!/2/docker/containers»
    icon: mdi:docker
    require_admin: true
    homarr:
    title: Homarr
    url: «http://192.168.0.27:7575/b/default»
    icon: mdi:bird
    require_admin: true
    esphome:
    title: ESPHome
    icon: mdi:wrench
    url: «http://192.168.0.27:6052/»
    require_admin: true
    configurator:
    title: Configurator
    icon: mdi:docker
    url: «http://192.168.0.27:3218»
    require_admin: true

Оставить комментарий