找回密码
 立即注册
查看: 8|回复: 0

[原创] 既能看电视,也能做服务器—在 Android RK3566 盒子上部署 Home Assistant

[复制链接]

2

主题

0

回帖

15

积分

初级渣柚V1

积分
15
QQ
hurdle 发表于 昨天 16:33 | 显示全部楼层 |阅读模式 IP:–福建–福州 联通
本帖最后由 hurdle 于 2026-8-5 16:35 编辑

既能看电视,也能做服务器————在 Android RK3566 盒子上部署 Home Assistant
最近搞到一台 RK3566 盒子,性能配置不错,硬件配置如下:
●主控:瑞芯微 RK3566
●运存:8GB LPDDR4X
●存储:32GB eMMC
●网口:千兆有线网口
●拓展接口:USB3.0+USB2.0、SATA 硬盘直插位(可直接加装 2.5 寸 SSD / 机械盘)、SPDIF 光纤音频、HDMI 视频输出
●无线:双频 WiFi + 蓝牙,标配红外蓝牙二合一飞鼠遥控器
●原厂系统:预装安卓 11 外贸原生系统(root),
改造目标
本次改造目标是在保留 Android 系统和原有电视功能的前提下,让同一台设备同时承担家庭智能核心的职责。
设备需要并行承担两类工作:
  • Android 继续作为主系统正常启动,保留电视桌面、遥控器、HDMI 输出、音视频播放和原有 Android 应用;
  • Entware 与 Home Assistant 作为后台服务运行,负责智能设备接入、状态管理、自动化和家庭服务集成。
完整验收还应满足以下条件:
  • Android 可以正常开机,电视界面和遥控操作不受影响;
  • HDMI、声音、视频播放和原有电视应用保持可用;
  • Home Assistant 的 8123 端口、配置和集成可以在重启后恢复;
  • Home Assistant 启动或故障不会阻塞 Android 开机,也不会导致电视功能退出;
  • 长期运行时,CPU、内存、存储和网络占用不会持续影响电视使用。
这套方案不只是让 Home Assistant 临时运行起来。它还需要解决数据持久化、Python 运行环境隔离、非 root 运行、开机自启、网络就绪时序和组件升级回滚等问题。
难点:
Android 不是标准 Linux 发行版。它没有常规包管理器,使用 Bionic C 库,也不会主动执行 Entware 的服务脚本。因此,常见的 Linux 安装教程不能直接照搬。我们这次取巧使用 Entware 来作为 Linux 环境。
系列目录
本系列按实际依赖关系拆成四篇:
  • 在 Android RK3566 上持久化安装 Entware
  • 在 Entware 中部署 Home Assistant Core
  • 使用 Android init 实现 Entware 与 Home Assistant 开机自启
  • 为 Home Assistant 部署 Xiaomi Home 官方集成
部署架构
Windows 11 PowerShell
        │ ADB
        ▼
Android 11 / RK356x / root
        ├── Android 电视功能(主系统)
        │       ├── 电视桌面、遥控器和 Android 应用
        │       └── HDMI、音频和视频播放
        └── Entware / Home Assistant(后台服务)
                ├── /data/entware
                ├── /opt -> /data/entware
                ├── /opt/homeassistant/venv
                ├── /opt/etc/init.d/S99homeassistant
                └── /system/etc/init/entware.rc
                            │
                            ▼
                     Home Assistant :8123
                            └── Xiaomi Home
                            └── Tuya
                            └── ……
核心设计如下:
  • 不替换 Android 固件、电视桌面或媒体栈,Entware 仅作为补充用户空间运行。
  • Entware 实体文件放在 /data/entware,避免占用空间紧张的根分区。
  • /opt 使用符号链接指向持久化目录,兼容 Entware 的标准目录结构。
  • Home Assistant 安装在独立 Python 虚拟环境中,避免污染 Entware 的全局 Python。
  • S99homeassistant 负责服务启停、PID 管理和非 root 身份切换。
  • Android init 在系统完成启动后拉起常驻监督脚本,避免 Home Assistant 进入 Android 的关键开机路径。
  • Xiaomi Home 作为独立自定义集成部署,可单独升级和回滚。
  • Tuya 接入廉价的万能遥控器,实现旧设备(空调、风扇)智能控制
实测版本快照
下表记录的是 2026 年 7 月完成部署时的版本组合。它是一份可复现快照,不代表后续仍应安装相同旧版本。
项目
实测值

设备RK356x 盒子,aarch64
系统Android 11,root ADB
Entware2025.05
Python3.13.9
Home Assistant Core2026.2.3
Xiaomi Homev0.4.7
升级任一组件前,应重新核对版本要求。尤其要确认 Home Assistant 与 Python、Xiaomi Home 与 Home Assistant 之间的兼容关系。
适用范围
这套方案适用于满足以下条件的设备:
  • 已取得 root ADB 权限;
  • /data 可写,并有足够空间保存 Entware 和 Home Assistant 数据;
  • /opt 符号链接和 Android init 配置可以跨普通重启保留;
  • CPU 为 aarch64,内核 ABI 与 Entware aarch64-k3.10 软件源兼容;
  • 允许修改 /system/etc/init,并能为文件设置正确的 SELinux 标签;
  • 能接受 OTA、刷机或恢复出厂可能破坏系统层配置。
没有 root 权限,或 /system 无法持久修改时,本文的开机自启方案不成立。普通重启会保留 /data,恢复出厂则会清空它。
阅读与安全说明
文章中的命令默认在 Windows PowerShell 中执行。运行前需要替换两个变量:
  • $Serial:目标设备的 ADB 序列号,例如 192.168.110.247:65533;
  • $DeviceIp:Home Assistant 对局域网提供服务的设备地址。
文章保留了标准安装步骤,也保留了本次设备遇到的特定故障。设备特定修复不能机械复制到其他固件。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|矿渣社区 ( 黔ICP备2024020525号-1 )

GMT+8, 2026-8-6 05:32 , Processed in 0.074852 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表