智能家居断网也能用:我的十年规则
Smart home devices should work without the internet

我坚持智能家居设备必须能在断网时正常工作,这是过去十年家庭自动化的第一条铁律。文章分享了从 Nest 集成失效到三星冰箱证书错误的真实教训,并总结了一套核心规则:核心设备不依赖云端、保留传统操作方式、保持系统敏捷可改。随着家庭成员增加,我又补充了关于 API 日志、统一配置和 MQTT 通信的新准则。通过 Tasmota、Node-RED 和 ESP 等本地化方案,我的房子在互联网断开时依然能自动运转,真正实现了“无网无问题”。
如果我家里的一个电灯开关需要依赖别人的服务器才能工作,那它就不该出现在我的房子里。
HN 评论区
228- mountain_peak
差不多20年前买的房子,前房主(看来)经营过一家现已倒闭的家庭自动化公司。好处是家里100%配备了X10/Insteon的电力和灯光控制、顶级的报警面板、环境控制系统等,都通过一个壁挂式“SmartLinc”触控面板运行。我后来用Axis摄像头和一台运行Indigo与SecuritySpy(无需订阅)的Mac Server扩展了系统,实现了远程监控和控制,但所有操作都在本地进行。
一时手痒,我花30美元清仓价买了一个D-Link无线(WiFi)水浸探测器放在集水坑里;它依赖D-Link Home云服务(免费),但这项服务几年前就关闭了。
不想把它扔了,我就把一台准备回收的备用Chromebook 14改造成Alpine监控器来配合这个水浸探测器使用,供电直接来自Chromebook的USB端口(如果暴雨中断电,我需要在集水坑灌满水之前收到警报)。
立刻出现的问题是,D-Link的固件会每24小时尝试“电话回家”,由于服务器已挂,设备就会从本地网络断开,而我完全不清楚它需要服务器返回什么响应才能保持存活。解决方案:每23小时通过中断USB供电(使用Pico和MOSFET)“重启”该设备。毫无疑问,家庭自动化应该在没有互联网的情况下也能工作。
- scosman
HomeAssistant为所有集成发布“IoT等级”,范围从“本地推送”到“云端轮询”:https://www.home-assistant.io/blog/2016/02/12/classifying-th...
我只使用“本地轮询”或更高等级的集成,并高度偏好“本地推送”。
- reasonabl_human
我新制定的规则如下:
- 买最便宜但能完成任务的硬件
- 忽略与软件相关的负面评价
- 收到设备后,让Claude找本地优先的第三方固件(CFW)
- 花几个小时充当“肉鸡代理”(meat proxy)乐一乐
- 搞定,廉价且仅本地的智能家居就完成了
用SBC或NAS运行Home Assistant。这套流程让我成功搞定了开关、恒温器、空气质量监测仪、温度计和窗扇风扇。
如果硬件自带合适的本地优先功能,我本愿为此多付约2.5倍的钱。但反过来,这一切都包含在我现有的20美元推理服务商订阅费中。本地运行DS 4.1也差不多,只是慢一些。
- anotherevan
“仅限本地”的要求一直是我从未认真涉足家庭自动化的一个非常强的理由。据我观察,大多数百货商店里的东西都要“电话回家”。无论是研究投入还是其他折腾(例如:某种繁琐的刷写Tasmota的方法),都让我望而却步。
但我看了看手头闲置的几个RPi,决定在其中一个上安装Home Assistant,先看看情况。现在我决定再深入一步,已经订购了一个Zigbee USB适配器、一些基于Zigbee的按钮和干簧管,还有几个基于Matter的电源开关,希望它们都能愉快地工作。
我还需要在Openwrt路由器上设置一个IoT VLAN。(我不是网络专家,所以这也挺折腾!)
到目前为止,我的家庭自动化尝试仅限于:
- 一个粘在前门附近天花板上的红色闪烁LED,连接到一个干簧管,用于指示车库门是否打开。
- 一个我成功刷写了Tasmota的灯光开关¹,这样我就能用电视遥控器开关客厅的灯。
- 一个放在显示器顶部的超声波距离传感器²,可以检测我是否坐在电脑前。它会在我不在时暂停音乐,回来时恢复播放。如果我坐在电脑前太久,它还会唠叨我。
¹ 我觉得自动灯泡没什么价值。我要的是自动开关。不幸的是,澳大利亚的电气认证标准相当严苛,使得这……
- augment_me
求求你们,要么用初稿,要么自己润色,别用LLM。
我改到了这样:
云端是薄弱环节
- 没网也没问题。...
---
如果你是为机器阅读而写,那随便。但如果是写给人类看的,至少对我来说,这信号表明你并不真正关心你想传达的信息,而是满足于一个被稀释的、LLM生成的平庸版本。
- driverdan
我有一些简单但严格的规则:
1. 商用设备必须仅使用离线协议,如Zigbee或Zwave。如果是仅WiFi设备,除非其固件是开源的,或者可以轻易替换为开源且仅本地的替代方案,否则我不买。
2. 非传感器设备必须在没有IoT功能的情况下也能完全工作。我必须能在没有任何外部接口的情况下控制我的恒温器、冰箱、炉灶等。
永远不要使用非开源的WiFi IoT设备。即使你能在本地控制它,它也可能是一个正在外泄你数据的间谍设备。是的,你可以设置VLAN或独立网络,但这不值得。用你的钱包投票。
- senorqa
这篇文章描述的其实是一个早已被遗忘的概念:渐进增强。智能开关应该在“哑”或更准确说是“核心/基础”的开关功能之上提供“智能”功能,而不是只提供“智能”功能,当例如互联网中断时,却无法回退到核心功能。
- tehlike
1. 买Zigbee/Zwave设备
2. 如果Zigbee/Zwave不可行,优先选择能刷Tasmota的东西。
3. 也许可以用eMudhra进行中间人攻击(mitm)并刷写不支持的设备。