树莓派 + Home Assistant + HomeKit 从零开始打造个人智能家居系统(4):连接小米设备与HomeKit

树莓派 + Home Assistant + HomeKit

通过本篇教程,你将在 Home Assistant 中接入小米智能家居设备,并在安装配置 Home Bridge 插件后,实现 HomeKit 功能,即在 iOS 家庭 App 中控制这些设备。

智能家居是一个系统化的工程,设备之间的通信就是基础建设。消费级智能家居硬件设备的爆发,使得我们能够轻松的搭建个人智能家居系统,而平台与产品的多样性也带来了多种的通信方式,诸如 Zigbee、蓝牙、WiFi、LAN。

小米生态链企业绿米联创生产的米家智能家庭组合使用的就是网关+子设备的模式,网关通过 WiFi 连入家庭网络,子设备通过 Zigbee 与网关连接。这可能是目前最适入手的智能家居模式了,体积小、功耗低、无需布线、不干扰 WiFi 设备,这也是我选择小米平台的一个主要原因。

小米旗下生态链企业众多,不同的产品也需要不同的连接方式。一般采用 Zigbee 技术的设备需要网关支持,在 Home Assistant 中只需要接入网关,就可以控制网关下的所有设备,而其他独立入网的设备,如米家扫地机器人等,需要单独接入。0.50 之后版本的 Home Assistant 提供的原生组件,支持了部分小米平台的设备。

Home Assistant 小米组件

博主 cxlwill 独立整理了小米生态链设备在 Home Assistant 的支持列表(中英双语),表格使用 Google SpreadSheet 编辑,国内用户请通过 有道云笔记 访问。

一、小米设备接入 Home Assistant

小米多功能网关

小米设备众多,我仅选择官方原生支持接入的作为初级教程内容,PS:第一代小米多功能网关无法接入。

我们需要准备小米多功能网关的 mac 地址和局域网通信协议密码 key

在米家 App 中打开小米多功能网关,按图示获得相关信息。

获取 mac & key

▲获取 mac & key

获取 mac & key

▲获取 mac & key

iOS 与 Android 显示或有不同。

configuration.yaml 文件中添加如下代码:

xiaomi:
  gateways:
      - mac: 你的网关mac,不含冒号
        key: 你的局域网通信协议key(注意空格与缩进)

多个网关,格式如下:

xiaomi:
  gateways:
    - mac: xxxxxxxxxxxx
      key: xxxxxxxxxxxxxxxx
    - mac: xxxxxxxxxxxx
      key: xxxxxxxxxxxxxxxx

重启 Home Assistant 服务后即可识别相关设备。

小米路由器

configuration.yaml 文件中添加如下代码:

device_tracker:
  - platform: xiaomi
    host: 路由器 IP
    password: 路由器 密码

Yeelight

Home Assistant 支持 Yeelight 以下型号产品。

  • YLDP01YL: LED Bulb (White)
  • YLDP02YL: LED Bulb (Color)
  • YLDP03YL: LED Bulb (Color) - E26
  • YLDD02YL: Lightstrip (Color)

首先你需要 Yeelight App 中打开“极客模式”,在 configuration.yaml 文件中按以下模板添加代码:

如果你在 configuration.yaml 中开启了 discovery: 功能,那么在开启极客模式后,重启 Home Assistant,系统会自动添加相关灯具。

light:
  - platform: yeelight
    devices:
      192.168.1.25: #改为你的 Yeelight 相应IP地址。
        name: Living Room
        transition: 1000
        use_music_mode: True #(音乐随动模式,默认关闭)
        save_on_change: False #(记忆设置,默认开启)
      192.168.1.13: #多个 Yeelight 接入。
        name: Front Door

二、Home Bridge 插件

Home Bridge 是前苹果员工的作品,基于 NodeJS,模拟 iOS HomeKit API。有如其名,作为“桥”来连接 iOS 设备,使得本不支持 HomeKit 的设备能够接入。

在 Hass.io 中安装第三方插件 Home Bridge

  • 打开侧边栏 Hass.io,点击进入插件商店
安装 Home Bridge 插件

添加插件地址:https://github.com/hassio-addons/addon-homebridge 后保存。(换行后可添加多个地址)

安装 Home Bridge 插件

在页面底部找到新的 Home Bridge 插件,进入安装。

安装 Home Bridge 插件
安装 Home Bridge 插件

配置 Home Bridge 插件

打开 \\HASSIO\config\homebridge\config.json 文件,按以下模板修改:

{
  "bridge": {
    "name": "Home Assistant",
    "pin": "123-45-678", /*随意八位pin码*/
    "port": 51826,
    "username": "XX:XX:XX:XX:XX:XX" /*你的树莓派mac地址*/
  },
  "description": "Homebridge for Home Assistant",
  "platforms": [
    {
      "platform": "HomeAssistant",
      "name": "HomeAssistant",
      "host": "http://192.168.1.11:8123", /*你的 Home Assistant 地址*/
      "password": "raspberry", /*你的 Home Assistant 密码*/
      "supported_types": ["fan", "binary_sensor", "sensor", "garage_door", "input_boolean", "light", "lock", "media_player", "rollershutter", "scene", "switch"],
      "default_visibility": "visible",
      "logging": true
    },
    {/*homebridge-config-ui*/
      "platform": "config",
      "name": "Config",
      "port": 8124,
      "log": "/var/log/daemon.log",
      "restart": "sudo systemctl restart homebridge.service"
    }
  ]
}

并在 configuration.yaml 添加如下代码:

# 在 Hass.io 侧边栏添加 homebridge-config-ui 的入口
panel_iframe:
  homebridge:
    title: Homebridge
    icon: mdi:home-automation
    url: http://192.168.1.11:8124 #你的 Home Assistant IP 地址

重启 Home Assistant,并在 Hass.io 中开启 Home Bridge 插件。

Home Bridge 插件

整体而言,除了网络的问题之外,Hass.io 的安装还是很方便的,如果你曾经折腾过 Home Bridge 的话,Hass.io 使你不用费心搭建环境、设置启动、手动调试,一切都在 Hass.io 页面中就可以完成了。

如果你有其他的 Home Bridge 插件需要安装,按以下格式在 Options 内添加。

{
  "debug": false,
  "plugins": [
    "homebridge-dummy --registry=https://registry.npm.taobao.org",
    "homebridge-mysmartlock --registry=https://registry.npm.taobao.org"
  ]
}

三、设置 iOS 设备中的“家庭”App

此节 Android 用户可略过。

家庭 App
房间
场景

有了家庭 App,你就可以轻松安全地掌控各种 HomeKit 配件。比如通过 iPhone 让 Siri 帮你关灯,或者从 iPad 上看看门口是谁。家庭 App 能让你连接的各种设备,更高效、智能地为你工作。

家庭 App 会按照房间将配件分组,让你只需轻点一下,就可轻松控制家中任何角落的装置。你甚至可以对 Siri 说“关掉卧室的灯”或是“打开楼上的空调”。而通过 3D Touch,按住一个图标,就能执行调暗灯光或是调节恒温器之类更复杂的任务。

家庭 App 能让你设置多种场景,从而通过一个指令让多个配件联合工作。比如,你可以创建一个名为“我出门了”的场景,便可关闭灯光,锁好房门,以及调低恒温器的温度。

Apple 官方页面,以及设置教程

在家庭 App 中添加 “桥”

Home Assistant 结合 Home Bridge 插件,使得原本不支持 HomeKit 的设备也能够接入 iOS 的家庭 App,Home Bridge 插件启动后,打开家庭 App 进行以下操作:

接入家庭 App
接入家庭 App

手动输入 PIN 码,就是在配置文件中任意写入的那个,你就可以通过这个“桥”连接到 Home Assistant 内的设备了。然后按照官方设置教程进行进一步命名设备。

自动化和远程访问 HomeKit 配件

你可以将 iPad 或 Apple TV(第 4 代)设置为家居中枢,以便在 iOS 设备上实现对 HomeKit 配件的自动化和进行远程控制。设为家居中枢的设备必须留在家中、连接到家中 Wi-Fi 网络且处于开机状态。

自动化和远程访问 HomeKit 配件

将 iPad 设置为家居中枢

在“设置”>“iCloud” 中打开“iCloud 钥匙串”和“家庭”,前往“设置”>“家庭”并打开“将此 iPad 用作家庭中枢”

将 Apple TV 设置为家居中枢

在 iOS 设备或 Mac 上,为您的 Apple ID 设置双重认证。然后,前往 iCloud 并确保“iCloud 钥匙串”已开启。在 Apple TV 上,前往“设置”>“帐户”并确保已登录到 iCloud,且使用的 Apple ID 与 iOS 设备上的相同。登录到 iCloud 后,Apple TV 会自动被设置为家居中枢。要检查家居中枢的状态,请前往“设置”>“帐户”>“iCloud”,然后在“HomeKit”下查看家居中枢是否已连接。

四、下节预告

完成设备的接入,智能家居系统开始有点像样了。我想你们肯定还存在很多问题,“我的设备怎么在 Home Assistant 里重新命名?”“如何分组?”“有些设备我不想加入 HomeKit 里。”“我想要更炫酷的界面!”“这不就是个遥控器嘛,我不需要。”诸如此类。下节教程将对 Home Assistant 进行进一步配置,实现个性化布局,同时对 Home Assistant 的自动化(Automations)做入门讲解。

  • Home Assistant 进阶设置
  • Home Assistant 自动化
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,524评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,869评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,813评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,210评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,085评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,117评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,533评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,219评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,487评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,582评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,362评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,218评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,589评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,899评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,176评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,503评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,707评论 2 335

推荐阅读更多精彩内容