1519 个设备集成:Home Assistant 本地智能家居中枢搭建指南
【免费下载链接】core:house_with_garden: Open source home automation that puts local control and privacy first.项目地址: https://gitcode.com/GitHub_Trending/co/core
你家里有多少设备连上了网,却在你断网的那一刻集体失联?Home Assistant 是一个开源的家庭自动化平台,它把智能家居中枢搬回你自己家——状态、日志、自动化全部跑在你的设备上,数据不出家门,断网时灯照样能按规则亮灭。它替你解决的核心问题是:不想把家的控制权交给厂商的云服务器,也不想为每一款设备单独装一个 App。
为什么要把智能家居中枢搬回本地 🏠
先算一笔云方案的账:传统品牌 App 依赖厂商服务器,断网即变砖,厂商停服则设备彻底失效,你的用电习惯、开门时间等数据还留在别人的数据库里。Home Assistant 的仓库描述只有一句话,却道尽了全部立场——"Local control and privacy first"(本地控制与隐私优先)。
| 对比项 | 云端方案 | Home Assistant 本地方案 |
|---|---|---|
| 断网表现 | 设备不可用 | 已加载的自动化继续执行 |
| 数据归属 | 厂商服务器 | 你自己的设备 |
| 设备停服 | 永久失效 | 与厂商云无关,协议层直连 |
| 新增设备 | 等厂商上架 App | 在 UI 里搜到对应集成即装即用 |
它的架构是模块化的:每一类设备都是一个独立目录里的独立集成,新增支持就像插一个插件,互不干扰。这就是为什么它的集成数量能一路长到一千五百多个。
核心能力拆解:自动化引擎与能源看板 🧠
当条件满足时执行动作的自动化引擎
自动化的灵魂是"触发器 → 条件 → 动作"这条规则链:比如"门口传感器触发 + 时间在 22:00 之后 → 打开玄关灯并把摄像头切到录制模式"。引擎本体在 homeassistant/components/automation/,里面还内置了blueprints蓝图目录——社区把现成的规则方案打包成模板,你导入后填几个参数就能跑,不用从零写逻辑。
配套组件同样齐全:scene/(一次点亮一组设备并设定各自状态)、script/(可复用的多步动作脚本)、zone/(地理围栏,成员进出区域都能触发)。
本地渲染的仪表盘与能源看板
这是 Home Assistant 最直观的价值。下面的仪表盘截图来自仓库自带的 demo 集成,左侧是灯光开关与温度曲线,中间是"今日能源分配"卡片——太阳能产出、电网取电、家用负荷一目了然,右边还有整栋房子的 2D 平面地图,标注着各房间温度和摄像头位置。所有这些都由本地渲染,不调用任何外部服务:
能源统计的底层逻辑在 homeassistant/components/energy/,它把太阳能板、电表、电池储能的功率数据汇总成流向图,帮你回答"今晚的空调电是不是光伏白天发的"这类问题。
语音与生态桥接
你不必放弃现有习惯。HomeKit Bridge(homekit/)把你的设备暴露给 Apple 生态,Alexa 与 Google Assistant 集成则接入主流语音助手;局域网里的新设备还能被 zeroconf/ 自动发现,省掉手工填 IP 的步骤。
1519 个设备集成:生态广度决定上限 🧩
打开 homeassistant/components/,你会数到1519个目录,每个对应一个设备品牌或通信协议。官方截图里展示的只是冰山一角:
几个典型入口,按你家的设备类型对号入座:
- 💡灯光:hue/(飞利浦 Hue)、tradfri/(宜家 TRÅDFRI)、shelly/
- 📡无线协议网关:zha/(Zigbee)、mqtt/(MQTT 消息协议,本质是设备间互相喊话的轻量通道,ESPHome 自制设备多走这条路)、knx/(楼宇总线)
- 🔌能源与计量:tesla_wall_connector/、solarlog/、utility_meter/(虚拟电表,把任意功率传感器变成用电统计)
- 📷安防:frontier/ 这类单品牌集成之外,esphome/ 让你用几百块的单片机自制带摄像头的安防节点
覆盖度还体现在品牌目录 brands/:每个品牌一张卡片声明它与哪些集成的关系,厂商改名或分家时生态也能保持指向正确。
快速上手:从镜像到源码的两条路 🚀
装官方镜像,半小时跑起来(推荐新手)
准备一台树莓派 4/5 或家里闲置的小主机(仓库 machine/ 目录列出了官方适配的机型清单,包括树莓派 5、ODROID-N2 等),刷入 Home Assistant OS 镜像即可。之后所有事都在浏览器里完成:UI 中搜索设备品牌 → 填入账号或网络信息 → 设备出现在仪表盘。不用写一行代码。
克隆源码运行(适合想读代码、做开发的你)
如果你想在源码层理解它,仓库地址是 https://gitcode.com/GitHub_Trending/co/core 。clone 下来后按 requirements.txt 装好依赖即可本地运行。仓库还自带了 Dockerfile 提供容器化构建方案,以及script/setup、script/server这类开发脚本。
版本节奏很规律:按"年份.月份"命名,每月发一个新版本。当前 homeassistant/const.py 中定义的版本是2026.10。想理解代码,从这几个入口读起效率最高:
- homeassistant/core.py:事件总线与状态管理,整个系统的循环心脏
- homeassistant/bootstrap.py:开机引导流程,配置怎么被加载、集成怎么被拉起都在这
- homeassistant/config_entries.py:所有集成的统一配置流程(UI 里填表单那一步的底层)
- homeassistant/helpers/:109 个工具模块,开发新集成的地基
适用人群与局限:先想清楚再动手 ⚠️
适合:设备品牌多、App 装了一堆互相不通的人;对数据隐私敏感、想让数据留在本地的人;喜欢折腾、愿意用一台树莓派换整个家控制权的人。
不适合:追求"插电即用零配置"的用户。HA 的灵活性是以一定学习成本换来的——集成配置项、模板语法、自动化调试都需要上手时间;它也没有厂商级的官方客服,问题主要靠社区文档和论坛解决。此外个别深度依赖厂商云的服务(如某些纯云端设备)仍需保留网络访问,"纯离线"是针对本地协议设备而言。
质量上它可以放心:tests/ 目录下有上万个测试文件,script/hassfest/ 是集成元数据的官方校验工具链,pylint/plugins/ 里还专门为这个项目写了一批定制检查规则——官方对代码规范的执着,侧面反映在它的稳定性和集成兼容性上。
下一步:把一台树莓派或旧笔记本装上 Home Assistant,先启用 demo 集成把仪表盘玩一遍,然后接入你手边第一台真实设备——一盏 Hue 灯泡或一个 MQTT 传感器就够,跑通第一条自动化,剩下的只是复制粘贴。
【免费下载链接】core:house_with_garden: Open source home automation that puts local control and privacy first.项目地址: https://gitcode.com/GitHub_Trending/co/core
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考