【智能家居】苹果Siri控制米家设备,在Linux上安装HomeAssistant桥接HomeKit与Xiaomi Miot Auto

2023-12-25 11:07:01

介绍

记录米家接入HomeKit的过程与过程中遇到的问题

设备

? ? ? ? 米家设备(智能开关等各种智能家居)

????????局域网内的Linux服务器一台

实现效果

? ? ? ? 在家庭局域网内,ios的设备上(iphone,iPad,mac)无需配置“精准的快捷指令”,即可实现Siri语音控制

? ? ? ? 如需在公网访问,需要有桥接设备(Home Pod,Apple TV),老版本的iPad(新的不行,在设置里找不到家庭,网上说功能被砍。。。)

思路

? ? ? ? 1、在linux上安装HomeAssistant

? ? ? ? 2、通过小米账号把米家设备导进HomeAssistant

? ? ? ? 3、通过homeKit桥接到ios设备上

前置条件

? ? ? ? 1、家庭局域网在同一个网段,如果有多个路由器,选择桥接方式连接。确保所有设备的ip都在同一网段就行了,我的是192.168.0.*,一般路由器默认的都是192.168.1.*,后面配置网络里注意修改。

? ? ? ? 2、docker,安装命令如下(因为docker安装HomeAssistant是最简单的,已有docker则跳过)

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

## 查看安装版本
yum list docker-ce --showduplicates | sort -r
## 安装
yum install docker-ce-18.03.1.ce

## 安装后,查看版本
docker -v

## 启动docker
systemctl start docker
## 开机自启
systemctl enable docker

开始搭建

一、下载HomeAssistant的docker镜像,并启动

由于docker默认的网络是隔离的,一般通过端口映射暴露服务端口,这样docker安装的HomeAssistant与家庭设备之间的网络的不通的,这里通过自定义网卡并自定义ip来解决这个问题。

## 下载镜像
docker pull homeassistant/home-assistant

## 创建桥接网卡(通过ifconfig得到ens33)macnet是自定义名称,启动命令里用到
docker network create -d macvlan --subnet=192.168.0.0/24 --gateway=192.168.0.1 -o parent=ens33 macnet

## 启动 自定义ip,192.168.0.220
docker run -d --name="home-assistants" --network=macnet -v /usr/local/home:/config --ip=192.168.0.220 homeassistant/home-assistant:latest

二、安装HACS

HomeAssistant本身没有小米物联网继承插件(Xiaomi Miot Auto),HACS可以理解成应用商店,通过这个应用商店,可以下载到Xiaomi Miot Auto

GitHub下载地址如下,找到hacs.zip,点击下载
Releases · hacs/integration (github.com)

由于之前启动的时候指定了路径/usr/local/home:/config,所以将hacs.zip解压放到/usr/local/home/custom_components/hacs里面,没有目录就自己建,并重启HomeAssistant

docker ps -a

docker restart <CONTAINER ID>
三、安装Xiaomi Miot Auto

在HACS里搜索Xiaomi Miot Auto,并安装(点击右下角DOWNLOAD即可)

四、配置小米账号

配置-设备与集成-添加集成,搜索Xiaomi Miot Auto,通过账号继承,填写账号密码即可,成功后自动同步到设备

五、配置HomeKit桥接

配置-设备与集成-添加集成,搜索HomeKit Bridge,进行配置,配置后在通知里会有二维码,用ios设备扫码进行绑定(ios设备要连接在局域网中)

完成以上步骤后,可以在家里的局域网里面使用Siri来控制了
如果想在公网上访问,需要Home Pod或者Apple TV或者老板的iPad,把这些设备配置成家庭中枢,具体配置参考苹果官方文档

过程中遇到的问题

1、一开始使用VmWare安装,在官网下载的HomeAssistant,安装后,打开报错,后放弃改用docker

2、用docker安装后,用iPhone扫码,未检测到设备,原因是docker默认网络隔离,导致docker启动的HomeAssistant服务与米家设备不在同一局域网

3、在HomeKit配置中,最好直接使用默认的勾选的内容,自己选了之后,可能会有问题,导致配置不成功

文章来源:https://blog.csdn.net/zxcyxg123/article/details/135150803
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。