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

本文主要是介绍【智能家居】苹果Siri控制米家设备,在Linux上安装HomeAssistant桥接HomeKit与Xiaomi Miot Auto,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

介绍

记录米家接入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 -adocker 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配置中,最好直接使用默认的勾选的内容,自己选了之后,可能会有问题,导致配置不成功

这篇关于【智能家居】苹果Siri控制米家设备,在Linux上安装HomeAssistant桥接HomeKit与Xiaomi Miot Auto的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/535766

相关文章

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

Win安装MySQL8全过程

《Win安装MySQL8全过程》:本文主要介绍Win安装MySQL8全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Win安装mysql81、下载MySQL2、解压文件3、新建文件夹data,用于保存数据库数据文件4、在mysql根目录下新建文件my.ini

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

SpringBoot请求参数接收控制指南分享

《SpringBoot请求参数接收控制指南分享》:本文主要介绍SpringBoot请求参数接收控制指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring Boot 请求参数接收控制指南1. 概述2. 有注解时参数接收方式对比3. 无注解时接收参数默认位置

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.

Maven如何手动安装依赖到本地仓库

《Maven如何手动安装依赖到本地仓库》:本文主要介绍Maven如何手动安装依赖到本地仓库问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、下载依赖二、安装 JAR 文件到本地仓库三、验证安装四、在项目中使用该依赖1、注意事项2、额外提示总结一、下载依赖登

Spring Security+JWT如何实现前后端分离权限控制

《SpringSecurity+JWT如何实现前后端分离权限控制》本篇将手把手教你用SpringSecurity+JWT搭建一套完整的登录认证与权限控制体系,具有很好的参考价值,希望对大家... 目录Spring Security+JWT实现前后端分离权限控制实战一、为什么要用 JWT?二、JWT 基本结构

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at