PVE + HomeAssistant + ESPHome

2022-09-24 作者:

Today let’s try out this ESP32-C3-12F dev board that costs only $5 (domestic shipping included) but has 3 power supply mode (AC 220V, DC 7~12V and microUSB, which is super convenient!) and a relay to turn my ordinary led light strip to be a remote controlled.

记得上次玩Arduino已经是2014年的事情了,那会儿用的还是ATMega系列的MCU,装专用IDE,写的C lang。

近10年后,感觉家用IoT玩的都是ESP和Pico了。至于开发语言,常青树C lang自然还有的,但大多视频教程则是外行更容易上手的Micro Python、Lua乃至只要配个yaml config的ESP Home —— 可见贵圈也很卷。

今天搞的是这块ESP32-C3-12F,带wifi、蓝牙BLE和一路继电器,以上都属于一般配置。比较巴适的是,这货带三模供电,AC 220V、DC 7~12V,以及MicroUSB,这就很方便了,省一个手机充电头。

废话少叙,先看实验结果吧。

服务器自然是Proxmox VE Home Server上的vm,数据内网本地化存储(2C 2G 32G即可),公网使用走ddns没毛病。

【注】HAOS(Home Assistant Operating System)的部署有N多选择。支持X86物理机、至少三种VM(kvm、vbox、vmware)、三种主流操作系统(Linux、Win、MacOS),两种容器(docker、lxc)、以及包括树莓派在内的至少三种SBC…… 这友好程度,你要说自己小白不会安装,都对不起开发者。只是这里要注意,选择安装方式一定要带上Supervisor,否则无法支持ESPHome扩展,详情参阅官网文档

HAOS装好后,打开web服务,安装ESPHome的插件,打开后就能开始设计ESP固件了。

比如已经上线的这个  lvrm-switch-env-sensors ,具体配置是这样的,跟着官网文档就是分分钟的活儿。

当然如果想写组合、联动也都有范例参考,ESPHome自身可以在单机固件内做联动,然后HA可以多设备之间做场景联动,比乐高还积木有木有。

yaml配置文件校验通过后,选择手动下载,固件会自动开始下载依赖并开始编译。

编译是跑在HAOS上,此处用的是PVE server运算资源(而非浏览器),编译完成后,浏览器自动弹出 .bin文件保存到本地。

第一次下载依然是传统艺能,RS232烧写。但这个浏览器直连serial就有点先进了,看来坚持几十年的串口调试助手没市场了。

板子这边,ESP32-C3-12F是上电时把IO9拉低,进入等待固件状态。浏览器操作串口直接擦除出厂固件,刷入ESPHome。

第一次烧录完成后,下电,IO9置空(去掉拉低),接上BME280传感器(使用了IO3和IO4引脚做I2C的SDA和SCL),上电等板子上线wifi。

板子上线后,就可以直接在线读到板子的log了。板子走2.4G wifi,可以看到ip地址、信号强度、I2C总线扫描结果等细节。

测试结果没问题,自制个小盒,把板子连到220V AC供电,扔到吊顶上控制灯带去。

Web页面编辑一下HA的dashboard,手机装上HA app,地址直接输入过ddns的公网域名就搞定,不管在家在外都一样控制。

至此,一个数据本地化存储的IoT home server的原型就搭建完成了。据说粗粮家的蓝牙传感器也都可以不上云直接走BLE报数据到HA,最近忒忙,以后找机会慢慢搞咯。

原创文章,转载请注明: 转载自渔人小径

本文链接地址: PVE + HomeAssistant + ESPHome

打赏 PayPal

文章的脚注信息由WordPress的wp-posturl插件自动生成

打赏 赞(2)
微信
支付宝
微信二维码图片

微信扫描二维码打赏

支付宝二维码图片

支付宝扫描二维码打赏

最近文章

分享

发表评论

电子邮件地址不会被公开。 必填项已用*标注