H

Home Assistant

免费开源的软件,在你自己的电脑上运行智能家居:灯光、传感器、插座和摄像头集中管理,无需云账户。

本文由 AI 翻译。 阅读原文

7 个章节2 篇教程官网

01 · 介绍

Home Assistant 是什么

智能设备通常自带各自的应用:一个控制灯,一个控制插座,一个控制温控器。Home Assistant 是一个能同时连接所有这些设备的统一程序。

你可以把它运行在家里的一台小型计算机上(迷你主机、Raspberry Pi、NAS,或任何能运行 Docker 的机器)。然后打开网页或手机应用,就能在同一个仪表盘中看到所有设备。

你会看到的三个词:

  • Integration(集成):某个品牌或协议的连接器(Philips Hue、Zigbee、Google Cast、天气服务等)。目前有一千多种。
  • Entity(实体):任何你可以读取或控制的对象,例如“客厅灯”或“卧室温度”。
  • Automation(自动化):一条自动运行的规则,例如“日落后前门打开时,打开走廊灯”。

它是免费的开源软件,并且在本地运行。即使你的互联网断开,大多数功能仍然可以继续工作。

02 · 适合什么场景

何时适合使用

适合使用的情况:

  • 你拥有多个品牌的设备,希望在一个地方统一控制。
  • 你想要超出各个应用本身支持范围的规则,例如“最后一个人离开时关掉所有设备”。
  • 你重视隐私,希望数据留在家里。
  • 你喜欢折腾,并且以后想加入 AI 助手或语音控制。

如果你只有两个灯泡,而且一个应用就够用,那就不必用它。Home Assistant 需要花一点时间设置,但会带来回报。

适合初学者的典型入门项目:

  • 一个包含所有灯和插座的仪表盘。
  • 一条日落规则,自动打开门廊灯。
  • 门窗传感器打开时发送手机通知。
  • 每日室内温度报告。

03 · 配置

准备工作

Home Assistant 有四种安装方式。第一次尝试的话,选一种即可:

  1. Home Assistant OS:一个现成的系统,直接装在树莓派或迷你电脑上。最简单,而且自带插件(小型扩展应用),一键即可安装。
  2. 容器(Docker):Home Assistant 作为一个容器运行在你已有的机器上。如果你本来就在用 Docker,或者运行 NAS 或家庭服务器,这种方式最适合。本手册接下来介绍的就是这种方式。
  3. Supervised 和 Core:面向专家。目前可以先跳过。

使用 Docker 方式需要准备:

  • 一台常年开机的电脑:最好是 Linux(迷你电脑、树莓派或 NAS 都可以)。
  • 已安装 Docker。如果你还不熟悉它,请先阅读 Docker 手册。
  • 你的设备和手机连接在同一个家庭网络中。
  • 大约 10 分钟。

04 · 部署

使用 Docker 部署

如果你还不熟悉容器,请先阅读 Docker 手册,然后再回来。你只需要以下两条命令。

第 1 步:为 Home Assistant 的设置创建一个文件夹。 你所有的配置都保存在这里,因此更新后也不会丢失。

mkdir -p ~/homeassistant/config
cd ~/homeassistant

第 2 步:在该文件夹中创建一个名为 compose.yaml 的文件:

services:
  homeassistant:
    container_name: homeassistant
    image: ghcr.io/home-assistant/home-assistant:stable
    volumes:
      - ./config:/config
      - /etc/localtime:/etc/localtime:ro
      - /run/dbus:/run/dbus:ro
    restart: unless-stopped
    privileged: true
    network_mode: host
    environment:
      TZ: Europe/Amsterdam

将 TZ 改为你自己的时区,例如 America/Toronto 或 Asia/Shanghai。

每一行的作用如下:

  • image:官方的 Home Assistant 程序。stable 表示最新的正式发布版本。
  • ./config:/config:将你的设置保存在你创建的文件夹中,位于容器之外。
  • restart: unless-stopped:重启电脑后自动再次启动。
  • network_mode: host:让 Home Assistant 能够在你的家庭网络中找到设备。这也是它在 Linux 上效果最好的原因。
  • privileged: true:允许它访问 USB 设备,例如 Zigbee 加密狗。

第 3 步:启动它:

docker compose up -d

首次启动需要下载镜像,因此请等待几分钟。

第 4 步:打开它。 在浏览器中访问:http://<your-computer-ip>:8123(例如 http://192.168.1.20:8123)。创建管理员账户,设置你的家庭位置,Home Assistant 会列出它已经发现的设备。

第 5 步:之后的更新:

docker compose pull
docker compose up -d

使用 Docker Desktop 的 Mac 或 Windows? network_mode: host 在那里的效果不同,因此请删除该行和 privileged 行,并改为添加 ports: - "8123:8123"。它可以运行,但无法自行发现你网络中的设备。如需用于真正的家庭环境,请使用一台小型 Linux 机器。

Docker 方式没有附加组件商店。 附加组件仅随 Home Assistant OS 或 Supervised 版本提供。使用 Docker 时,你需要将相同的工具作为额外的容器来添加。

05 · 使用说明

日常使用

  • 添加设备:进入 设置 → 设备与服务 → 添加集成。选择你的品牌,然后按照步骤操作。
  • 搭建仪表盘:打开仪表盘,点击铅笔图标,然后添加你最常查看的内容的卡片。卡片越少越好。
  • 创建自动化:进入 设置 → 自动化 → 创建。选择一个触发器(日落、门被打开)、一个可选的条件,以及一个动作(打开灯)。先从一条规则开始。
  • 安装手机应用:登录你的 Home Assistant 地址。它可以提供远程控制、通知以及手机的位置信息。
  • 备份:不时将 config 文件夹复制到另一块磁盘,或使用 设置 → 系统 → 备份。
  • 更新:每月一次就足够了。进行大版本更新前请先阅读发行说明,因为有少数集成会发生变化。

06 · 注意事项

常见陷阱

  • 不要直接把 8123 端口开放到互联网。 任何人都可能尝试登录。请使用 Home Assistant Cloud、VPN,或带有 HTTPS 和高强度密码的反向代理。
  • 忘记备份 config 文件夹。 如果你没有映射 /config,容器被删除后你的设置就会丢失。
  • 时区设置错误。 日出日落相关的规则会在错误的时间触发。请检查 TZ。
  • 只用 Wi-Fi 的设备。 通过 Wi-Fi 连接的服务器可能会掉线。如果可以,请使用网线。
  • 未做备份就更新。 先复制一份 config。
  • 一次添加过多集成。 每次添加一个,确认它正常工作后再添加下一个。
  • 仅支持云端的设备。 有些品牌的设备只能通过其自有云服务工作,并可能随时停止服务。优先选择支持本地运行的设备。

07 · 资源

接下来去哪里

Home Assistant 运行起来之后,接下来的步骤就是设置能帮你节省时间的规则,以及让它变得更智能的工具。

我的笔记

登录后可以在这本手册上记私人笔记。登录