安装与使用 Home Assistant on OpenWrt 教程
项目介绍
Home Assistant on OpenWrt 是一个便捷的工具集合,旨在让你能够通过一条命令在运行OpenWrt固件(版本23.05及以上)的设备上部署最新版的Home Assistant (2024.3.x系列)。该项目特别优化了组件清单,仅包括最小必需的组件列表,以适应资源有限的环境。然而,它保留了MQTT、ESPHome和ZHA这些广泛用于智能家居解决方案的组件,确保了兼容性和实用性。
快速启动指南
前提条件
确保你的设备满足以下要求:
- 至少256MB存储空间
- 至少256MB RAM
- 已安装OpenWrt 23.05.0或更新版本
安装步骤
执行以下命令下载并自动安装Home Assistant:
wget https://raw.githubusercontent.com/openlumi/homeassistant_on_openwrt/23.05/ha_install.sh -O - | sh
脚本执行完毕并显示"Done"后,Home Assistant即被成功安装。服务将会自动启动,或你可以选择重启设备。完成所有组件加载后,可以通过默认的8123端口访问Web界面。初始安装的组件限于MQTT和ZHA;添加额外组件时,如果遇到依赖项问题,重启动Home Assistant可能解决。
ZHA在小米网关上的使用
该组件使用内部UART与ZigBee芯片通信。芯片必须刷入适当的固件才能与Home Assistant通信。推荐固件版本为v3.23。
在ZHA配置中使用 /dev/ttymxc1 端口,该端口连接到zigbee芯片。
在添加新设备之前必须擦除持久数据管理器(PDM),否则设备添加会失败。
在控制台中使用以下命令擦除PDM:
jntool erase_pdm
Zigbee端口不能被任何程序锁定,如ZHA或zigbee2mqtt。
注意:通过UI添加新组件后,可能需要重启Home Assistant以使其看到新安装的要求。例如,ZHA安装paho-mqtt,除非重启HA,否则不允许配置它。
启用其他组件和安装自定义组件
你可能希望向HA安装添加更多组件。在这种情况下,你必须从PyPI下载tar.gz文件,然后解压内容并将所需的组件复制到 /usr/lib/python3.11/site-packages/homeassistant/components。如果组件使用前端向导,你可能还需要取消注释 /usr/lib/python3.11/site-packages/homeassistant/generated/config_flows.py 中的相应行。
或者你可以在 /etc/homeassistant 中创建 custom_components 目录并将组件复制到那里。
尝试使用 pip3 手动安装 manifest.json 中的要求,以检查它是否安装且不需要预编译的C库。否则,你必须交叉编译python3依赖项并将其安装为 ipk 包。
如果依赖项已经通过opkg或pip3安装,你可能希望修复 manifest.json 中的严格依赖项为较弱版本或完全删除版本。
应用案例和最佳实践
应用案例:将OpenWrt路由器上的网络状态实时同步到Home Assistant中。例如,利用其集成的能力监控每个无线网络连接的设备数、WAN流量统计以及系统负载等。对于那些希望从路由器层面获得更深入智能家居数据的用户而言,这是非常实用的功能。通过配置Home Assistant中的自定义传感器和利用MQTT,可以轻易实现这些数据的采集和历史记录。
最佳实践建议定期检查Home Assistant及其依赖的更新,并在添加新组件前评估其对系统资源的影响。此外,定期备份配置是保持系统稳定性的关键操作。
典型生态项目
在Home Assistant的OpenWrt应用场景中,可以结合ESPHome轻松管理基于ESP微控制器的家庭自动化设备,或者利用MQTT作为消息总线,让家庭中的不同智能设备相互通信。另外,集成Glances监控插件可以扩展监控功能,不仅限于上述提到的指标,还能获取系统更加详细的状态信息,进一步丰富你的智能家居生态系统。
通过这样的配置,OpenWrt不仅是网络的守护者,也成为了智能家居控制中心的关键一环,实现了路由器与智能家居系统的深度整合。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0152- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112
