homelab:python安装esphome以及使用

esphome安装

首先,homeassistant可以使用add-on插件的方式安装esphome

但是如何homeassistant的配置比较差,比如我的香橙派3B 2GB,那么要么编译固件会超级慢,要么直接编译器爆炸,无法正确编译固件

所以我之前会采用docker的方式,安装esphome,然后在性能比较好的主机电脑上编译esphome固件, 然后上传固件到esp32

但是最新发现,我的电脑虚拟化有问题,无法正常使用wsl2 ubuntu server,也无法正常使用docker desktop,所以我懒得折腾docker

改为使用python的方案安装esphome,然后esphome命令编译固件

安装esphome

执行命令

python install esphome

添加secrets.yaml

secrets.yaml文件是固件yaml文件配置会用到的

内容为

# Your Wi-Fi SSID and password
wifi_ssid: "wifi_name"
wifi_password: "wifi_password"

secrets.yaml放在当前python项目的根目录下

固件yaml

在esphome页面创建yaml配置

下载对应的yaml文件,比如dht11

执行编译命令

gpoi_fish.yaml为编译的固件配置文件

esphome compile .\gpoi_fish.yaml

刷入固件

打开网站 esphome.io

点击连接,选择esp32等设备

刷入固件,选择之前编译好的firmware.factory.bin

刷入成功后,homeassistant setting devices会识别到这个设备,添加到ha

Tips

以前使用esphome

要么使用树莓派刷入整个homeassistant,编译esphome,比较慢,但是勉强还行

要么linux server docker部署esphome,然后代理代理esphome到公网,然后使用,比较麻烦

现在直接在性能好的大主机上,python安装,然后命令编译固件,固件刷入硬件,相对方便,固件还可以保存起来,方便下次恢复使用