POST

Home Assistant:把家里的灯、插座、空调收进一个界面

开源智能家居中枢,能接米家、涂鸦、HomeKit、Modbus 各种设备。装 NAS 上,7×24 跑着,手机随时看。

智能家居最烦的事:每个品牌一个 App。灯是米家的,插座是涂鸦的,空调要装厂家的,摄像头又是另一个。

Home Assistant(HA)把它们收进一个界面。装在 NAS 上,常年开着,手机浏览器打开就是全屋状态。

装

services:
  homeassistant:
    image: ghcr.io/home-assistant/home-assistant:stable
    container_name: homeassistant
    ports: ["8123:8123"]
    volumes:
      - ./ha/config:/config
      - /etc/localtime:/etc/localtime:ro
    environment:
      - TZ=Asia/Shanghai
    restart: unless-stopped
    network_mode: host

network_mode: host 很关键。HA 要自动发现局域网设备(mDNS/SSDP),桥接网络下发现不了。开了 host 模式,端口那行可以删掉。

打开 http://NAS地址:8123,第一次会让你建管理员账号、填位置和时区。

接设备:三条路

一、官方集成(最容易)

设置 → 设备与服务 → 添加集成,搜品牌名。米家(Xiaomi Miot)、涂鸦、飞利浦、Sonos 这些都有。

二、HACS(社区商店)

官方集成覆盖不到的品牌,装 HACS 这个"应用商店",里面有几百个社区集成。装法:下载 → 放进 config/custom_components/ → 重启。

三、自己写(进阶)

有 Modbus、MQTT、REST 这些通用集成,能接任何讲这些协议的设备。

第一个自动化

别一上来就搞复杂场景。先做这个:

“晚上十点后,如果有人开门,把玄关灯调到 20% 亮度并保持 5 分钟”

在「自动化」里:

  • 触发:门磁 → 状态变为 open
  • 条件:时间在 22:00–06:00 之间
  • 动作:灯 → 打开,亮度 20%;等待 5 分钟;关闭

配完点"运行"测试。成功了,你就懂 HA 的思维方式了。

界面怎么做

默认的"概览"页是自动生成的一堆卡片,很挤。

真正好用的是 Lovelace 仪表盘:自己拖卡片、排版面。手机端和电脑端可以各做一套。

投入两个小时做一次,之后每天看着舒服。

资源占用

这是它最大的问题:HA 吃内存。

  • 空实例:约 300–500 MB
  • 接了二三十个设备:1–1.5 GB
  • 接了摄像头、跑视频流:2 GB 起

数据库(SQLite)也会涨,几个月能到几百兆。建议装个 MariaDB 或者定期清理 recorder 数据。

会踩的坑

发现不了设备 没用 host 网络,或者设备在另一个网段(IoT 设备常在 2.4G 独立 VLAN)。

米家设备要账号密码 Xiaomi Miot 集成需要小米账号和 token。有些设备需要提取 token,网上有教程。

重启后状态不对 自动化写的时候没考虑"启动时"这个触发。加一条"HA 启动时"重新评估状态。

数据库越来越大 config/home-assistant_v2.db。设置 recorder 只记录 7 天,或者排除不需要记录的实体。

升级偶尔翻车 HA 每月一个大版本,破坏性变更不算少。升级前备份 config/ 目录,出问题能退。

它适合谁

  • 家里智能设备来自三个以上品牌的;
  • 想自己做"如果……就……“这类自动化的;
  • 愿意花时间折腾的(这是硬门槛)。

不适合:只有一个品牌、App 就够用的;不愿意学 YAML 和集成概念的;NAS 内存小于 4 GB 的。

最后

HA 的学习曲线是真的陡,但它的回报也很实:你的家终于有了一个统一的"控制面”。

从"打开米家 App 开关灯"变成"说一句或者自动执行",这个跨越只有自己搭的人知道有多爽。

有问题留言。

👁 - 次浏览

留言

← 返回首页