环境安装
- 使用HassWP作为 homeassistant 客户端。
- 使用 ESPHome 作为连接 ESP8266 与 HA 的平台,由于 HassWP 并不是 HA 的完全体,所以这里需要安装完整的 ESPHome,这里选择将其部署在 Liunx 虚拟机上。
- 在安装 ESPHome 前请确保 Liunx 的 python 处于较高版本,这里使用了 3.11.1 版本。
- 使用
pip3 install esphome命令安装 ESPHome; 使用ln -s /home/coolcall/.local/bin/esphome /usr/local/bin/esphome创建软连接; 使用sudo esphome dashboard config/运行。
ESP8266 接入 ESPHome
- 在 ESPHome 的管理页面中(建议在 windows 系统下使用 Liunx IP 地址的 6052 端口号访问,虚拟机使用桥接模式),点击
NEW DEVICE添加新设备,输入name,在选择ESP8266并出现Configuration created!后,先选择SKIP,然后在页面右上角的SECRETS处配置网络并保存。 - 完成后打开
EDIT并进行INSTALL,选择第四个,这里我选择使用 ESP8266Flasher 刷写下载的.bin(需要安装 CH341 驱动),当然你也可以选择使用 ESPHome 提供的 web 页面进行刷写。这里需要下载编译链,请保持良好的网络环境并等待一段时间。 - 刷写成功后,ESP8266 就可以连接到 ESPHome 了,页面将会显示固件上线,再次点击
EDIT,在captive_portal:后添加以下代码:
yamlweb_server:port: 80switch:- platform: gpiopin: GPIO0name: "书房灯"id: relay2inverted: Truebinary_sensor:- platform: gpiopin: GPIO2name: "press_switch_lib1"device_class: openingfilters:- delayed_on_off: 100ms #消抖on_state: #当这个二进制传感器状态改变的时候,触发 gpio0then:- switch.toggle: relay2
再次INSTALL时即可选择第一个选项刷写。
在 HA 中添加固件
- 在 HA 的配置面板中选择设备与服务,在添加集成中搜索 ESPHome,主机地址需要填写上文中的
NAME,在输入 key 后即可添加成功。(key 可以在刷写的.yaml文件中找到)
其他
WIFI 省电模式:
yamlwifi:# ...power_save_mode: light