安装和配置 ESPHome

注解

如果你想在 Home Assistant 中添加 ESPHome, 那么你可以通过这个章节来安装和配置它。

如果你不想添加它,可以选择跳过这一节,直接进入下一节 登录.

ESPHome 是为您的 ESP8266/ESP32 开发板创建自定义固件的完美解决方案。

../../_images/esphome_logo.png

以下是对 ESPHome 工作原理的快速介绍:ESPHome 是一种工具,旨在尽可能简化 ESP 板的管理。它读取一个 YAML 配置文件(就像 Home Assistant)然后在你的 ESP 设备上安装一个自定义固件。在 ESPHome 的配置中添加的设备或传感器将自动显示在 Home Assistant 的 UI 中。

安装

  1. 安装依赖项。

sudo pip3 install cryptography==2.8
  1. 安装ESPHome前,需要安装Python并通过pip3安装控制台脚本。

注解

安装 ESPHome 1.18.0 或更高版本需要 Python 3.7 或更高版本。

sudo pip3 install esphome

或者通过Docker镜像安装(此镜像现在可用于AND64、ARM 和 ARM64(AARCH64)架构);如果您有其他的架构,请通过 pip 安装 ESPHome 或使用 Home Assistant 插件:

docker pull esphome/esphome
  1. 打开 ESPHome 仪表板。

注解

在 ESPHome 仪表板中操作时,需要保证此命令正常运行。

esphome dashboard config/

配置 ESPHome

  1. 打开浏览器并通过 http://localhost:6052http://X.X.X.X:6052 (这里的 XXXX 需要替换为您的树莓派IP 地址)进入 ESPHome Dashboard 。

  2. 创建配置

单击 "+" 开始添加配置。

../../_images/image44.png

输入设备连接所需的名称以及 WiFi 和密码,然后单击 NEXT

../../_images/image48.png

选择设备类型(例如 ESP32)。

../../_images/image46.png

点击NEXT添加完之后,您将在 ESPHome 的仪表板中看到它们。

注解

当不是第一次添加设备时,在主页面点击“+”,按照提示输入设备名称、WIFI和密码,选择设备类型。

../../_images/image53.png
  1. 编辑 .yaml 文件.

单击右下角的 EDIT 进入 .yaml 文件内部,您将看到以下默认组件。

../../_images/desphome_yaml0.png
  • esphome: 包含您设置的名称、平台和板类型。

  • logger: logger 组件通过串口和 MQTT 主题自动记录所有日志消息。

  • api: ESPHome 原生 API 用于通过高度优化的网络协议直接与客户端通信。目前,只有 ESPHome 工具和 Home Assistant 使用这个原生 API。

  • ota: 使用 OTA (Over The Air) 更新组件,您可以将固件二进制文件上传到您的节点,而无需使用 USB 电缆进行上传。

  • wifi: 这个 ESPHome 组件可以帮您设置 WiFi 连接。必须要配置好,否则 ESPHome 将在配置验证阶段遇到错误。

  • captive_portal: 这个组件是连接到 WiFi 失败时的回退机制。当尝试连接 WiFi 失败 1 分钟之后,ESP 将启动 WiFi 热点(根据配置启动)。

现在开始添加其他组件。 在 ESPHome 官方网站 中还有很多其它的组件, 包括 传感器组件, 输出组件, 光组件 等, 下面我们以 光组件 为例开始添加。

../../_images/image52.png

将以下代码添加到 .yaml 文件末尾。

# Example configuration entry
light:
  - platform: binary
    name: "Desk Lamp"
    output: light_output

output:
  - id: light_output
    platform: gpio
    pin: GPIO16
../../_images/desphome_yaml.png
  1. .yaml 文件安装到 ESP32 板上。

编辑完成后点击右下角的 INSTALL 进行编译安装。有两种方法供您选择:无线和 USB 端口。但是对于第一次安装,您需要使用 USB 将 ESP32 板连接到树莓派,然后选择第二种安装方法。之后的每一次安装便可以直接通过无线方式安装和编译了。

第一次编译下载依赖大约需要10分钟,请耐心等待。

../../_images/install_esp32.png

安装成功后,如果在 ESP32 板的 GPIO16 上连接一个 LED,您将看到 LED 亮起。记好此IP,将ESPHome添加到Home Assistant时需要填写此IP。

../../_images/install_suc.png

注解

如果点击 INSTALL 没有反应,请清除浏览器缓存,重新安装。

sudo rm -rf ~/.cache/chromium

ESPHome 配置完成后,便可以将其添加到Home Assistant了。