Hi 米娜桑,通過我艱苦不懈的追蹤發現,綠米智能家庭產品現在也是可以部分支持Homekit啦~
起因是我發現了這個:
https://github.com/snOOrz/homebridge-aqara
然後我又跳轉到了這
https://github.com/nfarina/homebridge
那麼,我就有了這個
也有了這個:
炫耀完畢,用廣角鏡特有畸變效果證明並非PS。
但是,畢竟米娜桑肯定不願意按照鏈接跳過去慢慢看,那麼,本着跳鏈接不如複製粘貼的原則,又有了下面的流水賬。記住,不要思考,按照步驟複製粘貼就好啦~~~歡迎撒花~~~~
首先,爲了支持homekit,以下設備是必須的:
1.智能家庭網關設備,以及支持Homekit的智能家庭硬件:
Aqara牆壁開關(單路,雙路)、小米智能插座(Zigbee版)、小米人體傳感器、小米門窗傳感器、小米溫溼度傳感器。
2.搭載Linux系統的開發板
3.升級到iOS10的蘋果手機
當然,爲了方便米娜桑更簡便的進行操作,我提供了下列購買清單,避免大家踩坑~
基本配置列表:
1.iOS手機一部,系統升級到iOS10以上。
2.Android手機一部(用於獲取網關信息)
3.樹莓派開發板一臺
4.路由器一部
5.Micro SD存儲卡一張以及讀卡器
6.網線一根
7.USB供電線一根。推薦使用小米插線板供電。
8.USB外接鼠標鍵盤
9.具有HDMI轉接線的外接顯示器
10.小米多功能網關
11.任意或多個支持homekit的子設備:Aqara牆壁開關(單路,雙路)、小米智能插座(Zigbee版)、人體傳感器、門窗傳感器、溫溼度傳感器。
注意:iPhone5C雖然可以升級到iOS10,但是並不支持蘋果的“雙重認證”機制。這些設備只能實現homekit的本地控制,無法通過appTV實現遠程控制。
爲了實現小米智能家庭設備的homekit控制,先來梳理一下基本流程:
一.獲取網關基本信息
獲取網關的MAC地址作爲網關名稱,以及獲取網關的局域網通訊協議密碼。
二.配置樹莓派環境
配置樹莓派開發環境,並將第一步獲取的網關MAC地址與局域網通訊協議密碼配置到樹莓派環境中。
三.實現homekit控制
將樹莓派作爲橋接器添加到iOS的homekit中實現本地控制,如果有appleTV的話,可以進行遠程控制的配置。
注意:在進行操作之前,請保證所有設備在同一個路由器下。
一、獲取網關基本信息
由於目前iOS手機無法獲取小米多功能網關信息,需要藉助Android手機來獲取小米多功能網關的信息。參考下面的步驟進行操作:
1.點擊屏幕右上角
2.點擊關於
3.狂按屏幕下方,開啓開發者模式
4.點擊局域網通訊協議
5.打開局域網通訊協議,並記住密碼。本案例中是1234567890123456
6.點擊網關信息
7.記錄mac地址。本案例中對應的就是mac後面緊跟的64:09:80:2D:A3:CA
8.記下第五步記錄的密碼,和第七步記下的MAC地址,這兩個將會作爲網關名稱和密碼,在稍後的樹莓派中配置進config.json文件。現在,網關信息的獲取步驟就完成啦。
二、樹莓派的配置(有Linux或者macos環境的可直接跳過本段第4小步安裝Nodejs)
首先,先讓我們來準備好SD卡和讀卡器,並把他們一起插到電腦上(或者平板bulabula,開心就好,另外各位土豪大人不要嘲笑iphone5C,雖然確實因爲它導致我不能實現遠程控制233333)
讀卡器鎮樓,注意是小卡:
下載樹莓派系統,地址連接如下:
1.使用SDFormatter對存儲卡進行格式化。
軟件鏈接:https://www.sdcard.org/downloads/formatter_4/eula_windows/SDFormatterv4.zip
2.使用Win32 Disk Imager將raspbian系統寫入SD卡中。
軟件鏈接:http://cncspace.onlinedown.net/down/Win32DiskImager-0.9.5-binary.zip
然後就可以開機啦~~~
當然,開機之前需要把樹莓派連接成下圖這樣子,。從十二點鐘順時針方向依次是HDMI視頻線,5V供電線,micro SD卡,鼠標線,鍵盤線,網線
開機之後需要輸入樹莓派的賬號密碼,分別是“raspberry”和“pi”。進入桌面後可以點擊左上角從左往右數第三個黑色的顯示器圖標。點擊後打開終端進行操作。
(鏡頭有畸變的節奏還是神馬?求土豪贊助好鏡頭)
3.切換鏡像源:下一步就是給自己換個靠譜的鏡像源。在國內推薦切換到阿里雲的鏡像源。其他鏡像源可能缺少必要的程序。該步驟通過編輯sources.list文件來實現。
命令如下:
pi@raspberrypi:~$ sudo nano /etc/apt/sources.list
(不得不說紅米攝像頭測光確實不如奧利巴斯。。。再加上我的帕金森手)
注意:nano編輯器保存內容使用ctrl+o,退出編輯器使用ctrl+x。
用“#”字符註釋掉舊的鏡像源,添加下列鏡像源即可
deb http://mirrors.aliyun.com/raspbian/raspbian/ jessie main non-free contrib
deb-src http://mirrors.aliyun.com/raspbian/raspbian/ jessie main non-free contrib
如下圖,稍微治好了我的帕金森手。
在修改完鏡像源,保存退出之後
輸入以下命令:
pi@raspberrypi:~$ sudo apt-get update
使鏡像源生效
(本步驟可解決NODEJS安裝下載過程中速度過慢導致的安裝失敗,以及homebridge的安裝報錯)
4.安裝Nodejs:
github上的安裝指導鏈接可能會打不開,參考nodejs官方網站使用下列命令即可:
nodejs官網:https://nodejs.org/en/download/package-manager/
當然了,再好的跳轉鏈接也不如直接無腦複製粘貼下列指令。。。。
參考命令如下:
pi@raspberrypi:~$ curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
pi@raspberrypi:~$ sudo apt-get install -y nodejs
pi@raspberrypi:~$ sudo apt-get install -y build-essential
5.安裝avahi:
命令如下:
pi@raspberrypi:~$ sudo apt-get install libavahi-compat-libdnssd-dev
如果安裝失敗,基本是因爲鏡像源問題,更換阿里鏡像源即可。所以老實回到第三步。。。。
安裝homebridge:
可以參考github上的步驟逐步操作即可。
https://github.com/nfarina/homebridge
當然了,還是老話,跳鏈接永遠不如無腦複製粘貼。。。直接輸入下列命令即可:
pi@raspberrypi:~$ sudo npm install -g --unsafe-perm homebridge
6.安裝homebridge-aqara:
還是使用npm進行安裝:輸入下列命令即可
pi@raspberrypi:~$ sudo npm install -g homebridge-aqara
7.配置config.json:
此時需要將網關的MAC以及密碼配置到config.json中。注意,MAC地址需要小寫,並且config.json需要放置在~/.hombridge目錄下。
a.返回主目錄:
pi@respberrypi:~ $ cd ~
b.創建.homebridge文件夾
pi@respberrypi:~ $ mkdir .homebridge
c.編輯config.json文件
pi@respberrypi:~ $ nano .homebridge/config.json
Config.json內容示例如下,隨便改一改綠色部分就好啦,然後加粗部分就是第一大步驟中獲得的MAC地址和局域網通訊協議密碼,不知道米娜桑還記得不:
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
#username隨意填寫
"port": 51826,
"pin": "031-45-154"
},
"platforms": [
{
"platform": "AqaraPlatform",
"sid": ["6409802da3ca"],
#這裏是你的網關MAC地址
"password": ["1234567890123456"]
#這裏是你的網關局域網密碼
}]
}
注意:寫入配置文件後 把“#”和其後面的備註刪掉
注意:寫入配置文件後 把“#”和其後面的備註刪掉
注意:寫入配置文件後 把“#”和其後面的備註刪掉
注意:寫入配置文件後 把“#”和其後面的備註刪掉
8.運行程序:
在終端直接輸入homebridge即可運行。
pi@respberrypi:~ $ homebridge
那麼,小米智能家庭這裏的環境基本就搞定了,通過這一步GET到了加入homekit所需要的PIN碼。
如果在啓動homebridge過程中出現紅字報錯,可能是第7步配置文件格式不對,檢查語法。
三、實現homekit控制
爲了體現米娜桑的聰明才智,該部分強烈建議參考蘋果官網,該跳轉還是要跳轉一下的23333
https://support.apple.com/zh-cn/HT204893
附加的一些小提示:
1.如果需要對橋接的網關進行增刪改,除了需要編輯config.json文件以外,還應該刪除config.json文件旁邊的persist文件。編輯config.json時,需要修改bridge裏面的username以及pin。隨便改一個沒使用過的就好了~
刪除persist文件使用命令:
pi@respberrypi:~ $ rm -rf .homebridge/persist
2.homebridge和homebridge-aqara的安裝目錄在nodejs中的node_modules目錄下,如果使用本文檔中的安裝方式,該目錄爲/usr/lib/node_modules/homebridge與/usr/lib/node_modules/homebridge-aqara
3.如果想在終端打印程序運行信息,可以將/usr/lib/node_modules/homebridge-aqara下的js文件中的註釋取消,同時將”log.debug”函數修改爲標準的”console.log”.
4.請保證樹莓派開發板與iOS設備處於同一個網絡。
5.樹莓派開發板背面引腳是裸露的,請避免和金屬鼠標墊、金屬手機殼等物品直接接觸。
6.配置完成之後強烈建議把HDMI拔了,不然好燙。。。