通過本篇教程,你將在 Home Assistant 中接入小米智能家居設(shè)備,并在安裝配置 Home Bridge 插件后,實現(xiàn) HomeKit 功能,即在 iOS 家庭 App 中控制這些設(shè)備。
智能家居是一個系統(tǒng)化的工程,設(shè)備之間的通信就是基礎(chǔ)建設(shè)。消費級智能家居硬件設(shè)備的爆發(fā),使得我們能夠輕松的搭建個人智能家居系統(tǒng),而平臺與產(chǎn)品的多樣性也帶來了多種的通信方式,諸如 Zigbee、藍牙、WiFi、LAN。
小米生態(tài)鏈企業(yè)綠米聯(lián)創(chuàng)生產(chǎn)的米家智能家庭組合使用的就是網(wǎng)關(guān)+子設(shè)備的模式,網(wǎng)關(guān)通過 WiFi 連入家庭網(wǎng)絡(luò),子設(shè)備通過 Zigbee 與網(wǎng)關(guān)連接。這可能是目前最適入手的智能家居模式了,體積小、功耗低、無需布線、不干擾 WiFi 設(shè)備,這也是我選擇小米平臺的一個主要原因。
小米旗下生態(tài)鏈企業(yè)眾多,不同的產(chǎn)品也需要不同的連接方式。一般采用 Zigbee 技術(shù)的設(shè)備需要網(wǎng)關(guān)支持,在 Home Assistant 中只需要接入網(wǎng)關(guān),就可以控制網(wǎng)關(guān)下的所有設(shè)備,而其他獨立入網(wǎng)的設(shè)備,如米家掃地機器人等,需要單獨接入。0.50 之后版本的 Home Assistant 提供的原生組件,支持了部分小米平臺的設(shè)備。
博主 cxlwill 獨立整理了小米生態(tài)鏈設(shè)備在 Home Assistant 的支持列表(中英雙語),表格使用 Google SpreadSheet 編輯,國內(nèi)用戶請通過 有道云筆記 訪問。
一、小米設(shè)備接入 Home Assistant
小米多功能網(wǎng)關(guān)
小米設(shè)備眾多,我僅選擇官方原生支持接入的作為初級教程內(nèi)容,PS:第一代小米多功能網(wǎng)關(guān)無法接入。
我們需要準(zhǔn)備小米多功能網(wǎng)關(guān)的 mac
地址和局域網(wǎng)通信協(xié)議密碼 key
。
在米家 App 中打開小米多功能網(wǎng)關(guān),按圖示獲得相關(guān)信息。
▲獲取 mac
& key
▲獲取 mac
& key
iOS 與 Android 顯示或有不同。
在 configuration.yaml
文件中添加如下代碼:
xiaomi:
gateways:
- mac: 你的網(wǎng)關(guān)mac,不含冒號
key: 你的局域網(wǎng)通信協(xié)議key(注意空格與縮進)
多個網(wǎng)關(guān),格式如下:
xiaomi:
gateways:
- mac: xxxxxxxxxxxx
key: xxxxxxxxxxxxxxxx
- mac: xxxxxxxxxxxx
key: xxxxxxxxxxxxxxxx
重啟 Home Assistant 服務(wù)后即可識別相關(guān)設(shè)備。
小米路由器
在 configuration.yaml
文件中添加如下代碼:
device_tracker:
- platform: xiaomi
host: 路由器 IP
password: 路由器 密碼
Yeelight
Home Assistant 支持 Yeelight 以下型號產(chǎn)品。
- 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,系統(tǒng)會自動添加相關(guān)燈具。
light:
- platform: yeelight
devices:
192.168.1.25: #改為你的 Yeelight 相應(yīng)IP地址。
name: Living Room
transition: 1000
use_music_mode: True #(音樂隨動模式,默認(rèn)關(guān)閉)
save_on_change: False #(記憶設(shè)置,默認(rèn)開啟)
192.168.1.13: #多個 Yeelight 接入。
name: Front Door
二、Home Bridge 插件
Home Bridge 是前蘋果員工的作品,基于 NodeJS,模擬 iOS HomeKit API。有如其名,作為“橋”來連接 iOS 設(shè)備,使得本不支持 HomeKit 的設(shè)備能夠接入。
在 Hass.io 中安裝第三方插件 Home Bridge
- 打開側(cè)邊欄 Hass.io,點擊進入插件商店
添加插件地址:https://github.com/hassio-addons/addon-homebridge 后保存。(換行后可添加多個地址)
在頁面底部找到新的 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 側(cè)邊欄添加 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 插件。
整體而言,除了網(wǎng)絡(luò)的問題之外,Hass.io 的安裝還是很方便的,如果你曾經(jīng)折騰過 Home Bridge 的話,Hass.io 使你不用費心搭建環(huán)境、設(shè)置啟動、手動調(diào)試,一切都在 Hass.io 頁面中就可以完成了。
如果你有其他的 Home Bridge 插件需要安裝,按以下格式在 Options 內(nèi)添加。
{ "debug": false, "plugins": [ "homebridge-dummy --registry=https://registry.npm.taobao.org", "homebridge-mysmartlock --registry=https://registry.npm.taobao.org" ] }
三、設(shè)置 iOS 設(shè)備中的“家庭”App
此節(jié) Android 用戶可略過。
有了家庭 App,你就可以輕松安全地掌控各種 HomeKit 配件。比如通過 iPhone 讓 Siri 幫你關(guān)燈,或者從 iPad 上看看門口是誰。家庭 App 能讓你連接的各種設(shè)備,更高效、智能地為你工作。
家庭 App 會按照房間將配件分組,讓你只需輕點一下,就可輕松控制家中任何角落的裝置。你甚至可以對 Siri 說“關(guān)掉臥室的燈”或是“打開樓上的空調(diào)”。而通過 3D Touch,按住一個圖標(biāo),就能執(zhí)行調(diào)暗燈光或是調(diào)節(jié)恒溫器之類更復(fù)雜的任務(wù)。
家庭 App 能讓你設(shè)置多種場景,從而通過一個指令讓多個配件聯(lián)合工作。比如,你可以創(chuàng)建一個名為“我出門了”的場景,便可關(guān)閉燈光,鎖好房門,以及調(diào)低恒溫器的溫度。
在家庭 App 中添加 “橋”
Home Assistant 結(jié)合 Home Bridge 插件,使得原本不支持 HomeKit 的設(shè)備也能夠接入 iOS 的家庭 App,Home Bridge 插件啟動后,打開家庭 App 進行以下操作:
手動輸入 PIN 碼,就是在配置文件中任意寫入的那個,你就可以通過這個“橋”連接到 Home Assistant 內(nèi)的設(shè)備了。然后按照官方設(shè)置教程進行進一步命名設(shè)備。
自動化和遠程訪問 HomeKit 配件
你可以將 iPad 或 Apple TV(第 4 代)設(shè)置為家居中樞,以便在 iOS 設(shè)備上實現(xiàn)對 HomeKit 配件的自動化和進行遠程控制。設(shè)為家居中樞的設(shè)備必須留在家中、連接到家中 Wi-Fi 網(wǎng)絡(luò)且處于開機狀態(tài)。
將 iPad 設(shè)置為家居中樞
在“設(shè)置”>“iCloud” 中打開“iCloud 鑰匙串”和“家庭”,前往“設(shè)置”>“家庭”并打開“將此 iPad 用作家庭中樞”
將 Apple TV 設(shè)置為家居中樞
在 iOS 設(shè)備或 Mac 上,為您的 Apple ID 設(shè)置雙重認(rèn)證。然后,前往 iCloud 并確保“iCloud 鑰匙串”已開啟。在 Apple TV 上,前往“設(shè)置”>“帳戶”并確保已登錄到 iCloud,且使用的 Apple ID 與 iOS 設(shè)備上的相同。登錄到 iCloud 后,Apple TV 會自動被設(shè)置為家居中樞。要檢查家居中樞的狀態(tài),請前往“設(shè)置”>“帳戶”>“iCloud”,然后在“HomeKit”下查看家居中樞是否已連接。
四、下節(jié)預(yù)告
完成設(shè)備的接入,智能家居系統(tǒng)開始有點像樣了。我想你們肯定還存在很多問題,“我的設(shè)備怎么在 Home Assistant 里重新命名?”“如何分組?”“有些設(shè)備我不想加入 HomeKit 里。”“我想要更炫酷的界面!”“這不就是個遙控器嘛,我不需要。”諸如此類。下節(jié)教程將對 Home Assistant 進行進一步配置,實現(xiàn)個性化布局,同時對 Home Assistant 的自動化(Automations)做入門講解。
- Home Assistant 進階設(shè)置
- Home Assistant 自動化