HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

2024-09-10 12:35:15 36点赞 273收藏 14评论

写在前面

本文主要记录通过容器部署 homeassistant 的过程,方便翻查

目前家里的智能设备 90% 都是米家生态,但是有几个大件不是,比如:

  • 客厅空调风管机是美的的

  • 房间空调挂机是华凌的

  • 阳台洗烘套装是海尔的

在某些场景下,米家就是无法覆盖全,有点难受。举一个场景例子:

  • 在空调打开时检查房间是否关窗,如果没有则触发语音提醒关窗

虽然空调可以用米家空调伴侣来控制,但是无论是一代还是二代,都无法在极客版操作。

至于洗烘套装更是无解,这个时候还是绕不过使用 homeassistant 来做跨平台联动。

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

部署安装

之前我的 homeassistant 是部署在 Nas 上的,近期装了软路由稳定下来,也把 Nas 上的 homeassistant 转移过来,压榨一下软路由的资源。

部署准备

之前安装的软路由,ssd 还剩下 230G 大小的空闲分区,外挂到 docker 做持久化存储使用。

这里就参考了 unRaid 的做法,创建一个目录用于 homeassistant 容器的配置文件等持久化存储:

mkdir -p /opt/appdata/homeassistant

该目录用于映射到 homeassistant 容器保存 config 配置文件

启动容器

这里我是在 openwrt 上通过 docker 进行安装,首先进入 Docker -> 容器 -> 添加

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

然后选择命令行解析 CLI,输入 docker 启动指令:

docker run -d --name=homeassistant -e TZ=Asia/Shanghai -v /opt/appdata/homeassistant:/config --restart always lscr.io/linuxserver/homeassistant:latest

点击提交后会自动解析参数并填充内容

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

接下来只需要调整网络部分的配置参数即可

  1. 选择自定义的网桥实现与主路由器下的设备同子网互通

  2. 输入固定 IP 分配

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

这里使用的是 linuxserver 的镜像,与之前 nas 上跑的一致,方便迁移,配置完成后启动,会先拉取镜像

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

但是直接访问容易超时,最后还是命令配置代理进行 docker pull,完事再回到页面配置启动

export ALL_PROXY='socks5://127.0.0.1:1080' docker pull lscr.io/linuxserver/homeassistant

创建完不会启动容器,需要手动勾选容器后点击启动

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

启动之后就可以看到分配的 IP 以及监听端口

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

在浏览器中输入 10.0.0.51:8123 就可以访问到 homeassistant 了

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

配置使用

安装 HACS 集成

HACS 全名 Home Assistant Community Store,也就是 HA 的社区商店,提供给开发者自行发布 HA 的插件,并给用户提供快速安装第三方插件的能力。

从 github HACS 官方仓库的发布页面下载代码包(自行搜索 github hacs)

解压后放入 /mnt/user/appdata/homeassistant/custom_components 目录下:

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

再重启 homeassistant 即可按照添加集成:

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

需要先确认一些信息,全部打勾即可

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

接下来需要进行 github 的认证:

  • 点击页面上的 URL 跳转到 github 后输入页面上的 8 位数字即可

  • 该操作会允许 HACS 获取到我们在 github 上的公共数据

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

完成 github 认证后,就进入 HACS 的最后一步了,点击完成即可

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

安装完成后,在 HASS 主页侧边栏就已经有 HACS 的入口了

安装 Miot 集成

目前家里智能家居设备绝大部分都是小米的,需要通过这个集成将米家智能设备导入到 homeassistant

进入 HACS 并依次点击集成 -> 浏览并下载存储库(页面右下角)

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

找到 Xiaomi Miot Auto 并点击开始下载,选择版本并提示下载保存路径,点击下载即可

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

下载完成后,依次点击 配置-设备与服务-添加集成,在选择品牌输入 xiaomi 进行过滤,选择刚才下载的 Xiaomi Miot Auto

之后会进入 Xiaomi 集成的配置页面:

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

之后需要登录小米账号

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

这里有几个配置选择:

  1. 建议选择账号集成,可以减少一些配置成本,直接获取 米家APP 上添加好的设备

  2. 设备连接模式选择自动模式,自动将用户筛选的设备中符合条件的型号使用本地连接(并实时更新最新支持本地的设备列表)

  3. 通过型号/家庭/WiFi筛选设备,这个可以先不勾选,后续简单进行排除或者指定筛选即可

这里没有做任何排除,所以是米家账号中的全部设备都导入到 HASS

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

实际发现有部分通过米家第一代空调伴侣 zigbee 连接的温湿度传感器区域信息读取失败,需要手动设置

安装 Midea AC LAN 集成

在 HACS 中搜索 midea 找到 Midea AC LAN 并下载

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

重启 HASS 后,就可以通过添加集成来将美的空调加入 homeassistant 了

该集成不具备为空调配置联网的能力,但又需要通过局域网来发现空调,因此需要先通过美的美居先添加好设备

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

我的 3 台挂机是华凌的,所以之前是已经通过微信的华凌智联进行控制联网

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

空调联网之后,就可以通过该集成来接入 homeassistant 了

美的这个集成需要单独添加设备,并且一次只能添加一个

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

通过 配置-设备与服务-添加集成,搜索 midea 即可看到

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

点击后添加设备,这选择 Auto 即可,会自动发现局域网内已经联网的美的设备(如果没有请先按照美的美居APP联网)

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

可以看到三台华凌空调已经搜索到了,依次点击添加集成。至于具体是哪个房间的空调,可以通过如下方式:

  1. 按照之前添加的时候对应的 IP 来确定

  2. 添加之后手动触发一些操作确定空调关联关系

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

最终添加完成如下

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

联动测试

HA 实现自动化

回归到文章最初的一个场景:

  • 空调伴侣不支持米家极客版

  • 但我想在空调打开的时候,检查房间窗户未关时通过小爱提醒关窗

这个场景在米家设备与美的设备都导入 homeassistant 之后就很简单了,通过 HA 配置自动化即可。

但是如果还想在极客版上做自动化判断,要怎么实现呢?

HA-极客桥

与米家-极客桥的原理差不多,也就是找一个拥有状态记录的设备同时能在极客版与 HA 中获取

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

这里我选择的是米家的智能开关指示灯作为桥:

  • 当 HA 获取到书房的华凌空调启动时,开启智能开关的指示灯

  • 当 HA 获取到书房空调关闭时,同步关闭智能开关的指示灯

那么在米家极客版就可以实现对应的操作了

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

写在后面

Home Assistant 确实是一个非常强大的智能家居管控系统,但不得不说上手门槛确实有点高

一开始是因为米家而接触智能家居,也是从米家 APP 以及极客版开始入坑。

所以大部分的智能化都是在极客版上完成了,但是后面发现,很多东西还是绕不开 HA。

想对一些自动化场景触发微信通知,这个在米家生态里面就很难实现,但是 HA 就非常容易

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

对接微信企业版的应用,就可以在微信上接收通知了

HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

不过目前对 HA 还处于摸索阶段,后续也会分享一些我在 HA 上的折腾记录,可以多多点赞关注支持一下HomeAssistant 入坑记——容器部署 HA 打通米家与其他智能家居

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
14评论

  • 精彩
  • 最新
  • 感谢分享,收藏备用。
    话说各平台的互通真是问题

    校验提示文案

    提交
    难顶,目前想到的就是ha,还有易来的网关

    校验提示文案

    提交
    易来的网关价格有些不如意

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 用智能开关或者插座的指示灯来当桥,很棒的想法!

    校验提示文案

    提交
    [期待] 之前有了解过米极桥,原理上是一样的

    校验提示文案

    提交
    收起所有回复
  • 小爱同学能跨平台控制空调调整温度么?

    校验提示文案

    提交
    不通过空调伴侣也可以,就是会比较僵硬,需要固定指令

    校验提示文案

    提交
    收起所有回复
  • 海尔的洗衣机搞不定,token要抓包 太麻烦

    校验提示文案

    提交
    之前不用的,后面海尔智家的认证改了 [皱眉]

    校验提示文案

    提交
    收起所有回复
  • 能用家里路由器部署吗

    校验提示文案

    提交
  • HA部署为啥这么麻烦 [皱眉] 像openlist一样直接单文件多方便

    校验提示文案

    提交
  • 感谢分享。

    校验提示文案

    提交
    感谢支持打赏 [脸红]

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
273
扫一下,分享更方便,购买更轻松