网站搜索

我花5美元建了一个智能家居控制面板,并删除了三个智能家居应用


随着你家中智能家居设备数量的增加,你会发现自己不断在做生态系统方面的决策。不同厂商的设备彼此无法互通,不久你就会发现手机上有半打应用程序,但你几乎不使用它们。

设置 Home Assistant 可以彻底解决这个问题。我用一部旧手机搭建了一个智能家居仪表板,从此翻找多个应用程序的日子一去不复返。然后,我花了一个周末和一些钱摆弄一个 ESP32、一个 OLED 显示屏和几个按钮,我就有了一个微型智能家居仪表板,完全不需要我去操作其他设备就能控制家里的设备。

智能家居应用很方便——直到它们不方便的时候

在多个生态系统和界面之间腾挪所带来的挫败感

每个智能家居设备都有其自己的应用程序,如果你使用的设备不是来自同一制造商,那么你手机上的智能家居应用程序可能会和你家里的设备数量一样多。无需多言,这是一种令人极度沮丧且低效的方式来控制原本应该是智能化的房子。

没有一个统一的界面可以一次性让你访问所有设备。你可以尝试在 Google Home 中设置所有设备,并用 Gemini 控制智能灯,但如果你的体验和我一样,你很快就会不想这么做了。

我的 Home Assistant 安装解决了这个问题,但仍然需要在浏览器或手机上打开 Home Assistant 来控制灯光。我已经安装了仪表盘,所以当我在办公桌前时,我还在使用这些应用。直到我决定做另一个仪表盘,不过这次更易访问。

五美元能让你走得很远

设置中心的小硬件






ESP32 对于这个价格来说,是一个极其强大的微控制器。这次组装我用的是普通的ESP32 DevKit V1主板。这几乎适用于你能找到的任何ESP32板,所以不会有选错ESP32板的风险。

ESP32搭配一块简单的1.13英寸SH1106 OLED显示屏和三个触感按钮。如果你在速卖通购物,总零部件成本不到5美元。即使你从亚马逊或本地电子产品店买这些东西,我怀疑你也不会花更多钱。

OLED 通过 I2C 使用仅四根电线连接到 ESP32。按键连接到 GPIO 引脚,并启用了 ESP32 的内部上拉电阻,这意味着不需要额外的电阻。整个装置可以放在半尺寸面包板上,接线时间不到 10 分钟。

ESPHome 承担繁重的工作

将廉价硬件变成精致的仪表盘控制器






我没有直接编写可以通过 REST API 与 Home Assistant 接口的原始 Arduino 固件,而是使用了 ESPHome。它让你可以在 YAML 配置文件中定义整个设备的行为,这意味着不需要编译 C 代码,不需要手动管理库,也不需要翻阅数据手册去查找 I2C 地址。如果你已经在运行 Home Assistant,ESPHome 可以原生集成,并且你的设备一旦连接到网络,就会作为一个实体显示出来。

SH1106的显示逻辑通过ESPHome内置的显示组件处理,采用lambda函数直接在OLED上绘制文本和状态图标。每个按钮对应一个on_press动作,其中两个开关不同的灯,第三个控制我的空调智能插座。显示屏上显示这三台设备都是药丸开关,实时状态是从Home Assistant拉取,旁边还有一个页脚,显示仪表盘名称和当前时间。没有云依赖,整个配置都在你的网络本地运行。

一些升级让它变得更好

小的改进可以显著提高可用性

现在面包板上的裸露电线并不算桌面装饰。我可以把所有东西塞进一个小盒子里,为按钮和显示屏切出孔,然后用超级胶把所有东西固定,好看一些。但在 Blender 中设计一个定制外壳并进行 3D 打印才是更好的办法。我目前不介意桌子上有一个裸露的面包板,但最终我还是会处理的。

你可以添加的其他生活质量提升功能包括显示屏调光或某种屏幕保护程序。可以使用 SH1106 的对比度寄存器在一段时间不活动后自动调低显示屏的亮度。

我换的比我预期的多

那些变得完全不必要的应用和控制

总体来说,这个小仪表盘替换了三个应用:用于空调智能插座的Tapo应用,智能灯泡的Syska应用,以及连接LED灯带的Magic Home应用。大多数时候,我唯一想要的控制就是开关这些设备,而这正是仪表盘的功能。

一个 5 美元的仪表板不会神奇地解决每一个智能家居问题,但它证明了一个值得提出的观点:你需要几十个应用或订阅才能控制自己的家。如果你已经在使用 Home Assistant,ESPHome 的工作流程对于初学者来说足够温和,同时又强大到让你在未来的项目中不断使用它。你手机上的应用抽屉图标已经够多了,不需要再增加更多。

相关文章