作为一名数码爱好者,家里很多电器买的都是智能产品,这块的产品选择米家最经济实惠,但是自己使用的电脑和手机都是苹果的。最近买了个HomePod Mini,想通过Siri来控制家里的电器。

在之前有找过怎么在iOS家庭中控制米家生态设备,找到了很火的 Home Assistant 就简单了解过 ,这次动手来实现他。

HomeAssistant支持各种设备,条件好的用树莓派,家里有旧电脑也可以实现,对设备性能要求不高。我家里有个台常年不关机的MacBookPro,所以就在Mac上安装了HomeAssistant服务。

这里不说教程网上一大堆(可以参考这个教程来将米家设备接入到 HomeAssistant:https://zhuanlan.zhihu.com/p/392587917),主要来说在过程中遇到的问题。

⭐️ 完整的流程步骤

  1. 配置环境安装Python
  2. 安装Home Assistant并启动
  3. 安装集成(integration):HACS
  4. 通过HACS安装集成:XiaoMi Miot Auto
  5. 在XiaoMi Miot Auto中登录米家账号并选择需要接入的设备(这里会把米家App中的设备列表同步过来)
  6. 在Home Assistant中加入HomeKit同步到苹果家庭App中

环境问题 - Python

启动HomeAssistant

启动命令
→ hass

第一次启动会安装很多的依赖资源,并且看教程其中会遇到各种问题,我这边只遇到了一个问题,就是由于权限问题无法自动安装依赖,报错后需要手动去安装。安装依赖注意一个问题,就是部分依赖是指定版本的。

# 示例错误信息
Unable to install package getmac==0.8.2: ERROR: Could not install packages due to OSError:...

# getmac==0.8.2 就是指定版本,新开终端执行
→ pip3 install getmac==0.8.2

# getmac>=0.8.2需要大于这个版本,可以去GitHub搜这个包的版本列表选个指定版本的最后的fix版本或当前版本
→ pip3 install getmac==0.8.2
→ pip3 install getmac==0.8.8

安装HACS

这个就是类似第三方应用商店,安装注意以下问题:

# 文本编辑器打开 ~/.homeassistant/configuration.yaml,上面是其他的配置,在最下面添加新行输入

hacs:
  token: ghp_123123……

进程守护及开机自启

# 安装自启
→ hass --script macos install

# 卸载自启
→ hass --script macos uninstall

如果安装自启的时候遇到以下问题,就先执行一下卸载自启再执行安装自启即可

Load failed: 5: input/output error
Try running `launchctl bootstrap` as root for richer errors

连接HomeAssistant和家庭App

在配置文件~/.homeassistant/configuration.yaml 最下面新行输入

hacs:
  token: ghp_123123……

homekit:

添加好配置,重启Home Assistant后,在HomeAssistant的通知里面会有HomeKit的连接二维码,使用家庭App扫码添加即可。

HomeAssistant可以控制设备,但家庭中设备显示未响应

在网上找了很多问题原因后,基本上问题原因都是指向路由器问题,例如:https://bbs.hassbian.com/thread-1561-1-1.html 我家里的路由器是华为AX3Pro,经过一番查找后发现路由器有个设置叫WiFi5备用网络(提升网络兼容性的),打开后问题立马解决了。