什麼是 HomeKit?

HomeKit,不是一個硬體,也不是一個裝置,它是蘋果在 2014 WWDC 發表的一種平台規範和開發工具框架,主要是用來連結及控制智慧家庭裝置,讓使用者可以透過 iPhone、iPad 或 Apple Watch 來 呼叫 Siri 遙控家中的不同的裝置。米家,

簡單來說 HomeKit 不是給消費者用的,是給製造商及開發者用的。

上面這段看不懂也沒關係,反正你只要知道:

  • 買 Apple 傳輸線買有 MFi(Made For iPhone)圖示,才可以有保障。

專門給 iPhone 使用的配件的圖示

  • 買智慧家電就要有 HomeKit 圖示,才可以用 Siri 控制。

Apple HomeKit 適用的智慧配件圖示

HomeKit 可以幹麻?「家庭」app 又可以幹麻?

iOS 10 推出了「家庭」app,相信大家一定都不陌生,因為在剛推出的時候,十個人有九個人想把它刪掉…因為用不到嘛!那個時候蘋果迷社團裡幾乎每週都會有人上來問這個問題,可以說是週經文之最!

iOS 的「家庭」app

但是如果你有支援 HomeKit 的智慧配件,「家庭」app 可就相當好用了!

任何的 HomeKit 配件都可以加入「家庭」app 裡,依你的想法打造屬於你的智慧家庭,例如天亮了自動開窗簾、上班去門自動上鎖、下班回家自動開冷氣、洗澡前叫 Siri 幫你播音樂、睡覺後自動關燈…等,以往科幻片才會出現的場景,現在就可能發生在你家裡,想想是不是讓人超級興奮阿?!

科技始終來自於 人性 金錢

HomeKit 因為有蘋果自家的認證,在 iOS 上連進「家庭」app 都不用,可以直接從畫面由下往上拉出控製中心裡看到和控制所有的裝置,而且每個裝置都可以直接操作,當然比其他任何第三方的 App 都更容易上手。

蘋果官網介紹「家庭」app 的圖片

我的家,由我指揮!!可是…

曾經有動念想買 HomeKit 智慧家電的人一定都知道,有支援 HomeKit 的產品實在是超貴,沒在騙的,大家可以參考一下燈具的價格…

Apple Store 所販售支援 HomeKit 的配件

是不是很可怕?

我也想指揮我的家啊!!但價位真的有點高啊!!

當然,如果不在意價格,只想要讓生活更簡單,那絕對是選擇 HomeKit 沒錯;但如果你只是剛準備踏入智慧家電這個圈圈,那其實有便宜許多的入門版可以選擇,就是「米家」。

便宜的智慧家庭裝置好選擇:米家

米家是小米推出了一段時間的智慧家庭系統,最大的優勢就是「便宜」!

mijia 也就是米家

而且除了便宜之外,品質也不差,因為已經推出一段時間了,所以在 iOS 上的「米家」app 也還算滿穩定的。

以同樣的智慧家電來說,米家的售價硬是比他牌的便宜了二分之一,甚至三分之一,看看在蘋果迷社團推薦度最高的「小行行動電源」,還有前陣子超夯的「小米掃地機器人」就知道,CP 值相當的高。

米家出品的小米機器人

如果你已經擁有幾個米家的智慧家庭裝置,可以開始照下面的步驟試著把你的裝置加入「家庭」app,讓你的生活更智慧;如果你還沒有任何智慧家庭裝置,又不想花太多錢,那就先把這篇文章存起來,等買了米家之後再回來細看吧!

開始前準備

如果你不缺錢,請直接左轉去蘋果官網買有支援 HomeKit 的智慧型裝置,那才是真正的長久之道。

但是如果你想要省錢,那就別想省麻煩。

這次的教學是使用綠米開放的 API 來手動接到 HomeKit 上,所有的內容都可以在 GitHub 上找到,但還是有幾個必備的東西你要先準備好:

1. 你要有一台 Mac

什麼款式的 Mac 都行,只要有就好

你的 Mac 就是做為米家裝置與 HomeKit 的橋接器,所以最好是準備一台放在家中不要關機的 Mac,這樣才可以 24 小時都透過 iPhone 來控制智慧家電。

當然你也可以使用樹莓派或是 Windows 來取代 Mac,但不是這篇文章的重點,就請有興趣的蘋果迷自行去 Google 了。

2. 你要有米家的智能家居產品

至少要有一件米家智能家居產品

這系列的教學專門是給米家的產品用的,所以你請至少有一件,如果沒有或只有其它品牌的產品,請直接右轉不送。

3. 你最好有一台 iPad、Apple TV 或 HomePod 放在家裡(非必要)

tv 三代或四代都可以

Apple 家庭的新成員 HomePod 也可以

如果你想要「遠端控制」、「自動化操作」這些配件,那就請準備一台 iPad 或 Apple TV(現在還多了 HomePod),並連上家中的 Wi-Fi 網路,並且保持開機的狀態。

如果你的是 Apple TV 3 代,那就只能「遠端控制」,無法設定自動化操作與使用者權限。詳情請自行參閱蘋果官網說明

開始安裝 米家 HomeBridge

雖然以下操作會使用到 macOS 的終端機,但並不會很複雜。

最麻煩的其實是開始前的做功課及完成後的反覆測試,不過我已經幫各位當白老鼠了,所以別擔心,我會盡量把內容簡單化並把步驟寫清楚,現在,就讓我們開始吧!

⌘ Step 1. 安裝 Xcode

請去 Mac 的 App Store 下載並安裝 Xcode(點我下載

在 App Store 搜尋並安裝完成 Xcode

⌘ Step 2. 安裝 Node.js

下載並安裝 Node.js(點我下載

下載並安全完成後再進行下一步驟

⌘ Step 3. 安裝 HomeBridge

請開啟「應用程式」>「工具程式」>「終端機」,依系統分別輸入:

  • macOS 10.12 Siera 及更早的系統
sudo npm -g install homebridge

  • macOS 10.13 High Sierra
sudo npm -g install homebridge --unsafe-perm

等待 HomeBridge 安裝

HomeBridge 安裝完成

⌘ Step 4. 建立 config 檔

接下來要創建一個 HomeBridge 用的設置檔,請直接複製以下指令並直接在「終端機」貼上:

cd /Users/用户名/.homebridge/
vi config.json

※ 請特別注意 “用戶名” 要改為你電腦的使用者名稱!

再將以下語法直接複製貼在「終端機」上:

{
    "bridge": {
        "name": "HomeBridge",
        "username": "B8:27:EB:EE:AF:1B",
        "port": 54642,
        "pin": "031-45-154"
    }
}

貼上後,請接著輸入以下指令:

:wq

⌘ Step 4. 快速版本

如果你的 config.json 檔一直做不出來,那就點選下面的連結下載檔案。

點我下載 config.json

再依序進入 Finder >「前往」>「前往檔案夾」。

輸入以下路徑:

~/.homebridge/

接著把剛下載好的 config.json 丟進去即可。

⌘ Step 5. 執行 HomeBridge

在「應用程式」>「工具程式」>「終端機」中輸入

homebridge

執行完就可以看到一個灰色框框裡面包著 8 個數字,以下圖為例是:031-45-154。

※ 想要停止 Homebridge 可以直接關掉終端機,或者是按 ctrl + c。

看到有 8 個數字的灰色框就表示成功橋接完成

⌘ Step 6. 加入「家庭」app

拿出你的 iPhone 打開「家庭」app,點擊【加入配件】,接著拿鏡頭去掃描「終端機」的 QR-Code,接著就會出現「未認證的配件」,因為這是我們自己設定的,所以當然沒有通過認證,選擇【強制加入】即可。

配對完成後就可以看到 HomeBridge 成為你的配件了。

恭喜你完成了米家變身 HomeKit 的第一步哦!!

後記

Homebridge 是米家變身 HomeKit 的核心,所以不管你的米家配件是什麼,都還是得先把 Homebridge 安裝好,這一步相當的重要,因此我才會把這篇獨立出來。

終端機執行 homebridge 指令後,就不能關閉,要一直開著,這樣才可以持續使用哦~

接下來我會陸續介紹如何把其他的米家配件加入 Homebridge 裡:

有了 Mac,米家可以更智慧 系列文

如果你對這系列的文章有興趣,請記得去 APPLE FANS 蘋果迷粉絲頁按讚並設為搶先看,我寫完新的文章都會第一時間發表在粉絲團。

你成功了嗎?

成功的話,請記得幫 APPLEFANS 蘋果迷分享此篇教學文章,您的分享才會是我們繼續創作的動力,謝謝各位~

如果想得到更多 Mac 達人教學,請追蹤蘋果迷粉絲團以掌握最新訊息,也歡迎加入蘋果迷社團分享自己的心得和疑難雜症哦~

關於作者

十多年前用了 Mac 後驚為天人,從此再也離不開蘋果,立誓要將捨棄 Windows 進入 Mac 後的美好傳遞給所有人,讓簡單純粹重回大家的生活。

116 篇迴響

  1. 对啊,我是改的这个用户名。还是一样的。有什么方法可以解决吗?我装了xcode后需要设置什么吗?

    • 照理說是不用,那你就自己把文件加進去吧!
      先下載 config 範例:https://www.dropbox.com/s/42bku5ubqc89pd4/config.json?dl=0
      然後再進入第二篇教的路衡:Finder >「前往」>「前往檔案夾」
      接著輸入:~/.homebridge/
      然後在那邊丟進 config.json 檔,詳情請看第二篇。

  2. 我应该知道哪里出问题了。。在按照步骤安装到第四步的时候,终端上面显示是安装完成了,但是我电脑里面根本没有.homeridge这个文件夹。。

  3. 感謝詳細教學!
    請問我所有步驟照做也有出現QR code跟八位碼
    但在家庭app掃描QRcode找不到配件是什麼問題呢?
    麻煩幫我解答,萬分感謝!

  4. 现在发现几个问题请您帮忙解答下吧:1.我的空气净化机网络和电脑的是同一个,但是在搜索的空调伴侣时候搜不到我的净化机。2安装网关后一切正常,我在网上看到安装空调伴侣的,安装空调伴侣后网关所有的东西全部失灵了。3空调伴侣也是个网关,这个网关的安装的命令是什么?谢谢

  5. 請問一下
    假設我有一個homepod
    那麼我可以直接將其設定為homebridge嗎?
    還是我一定得要使用樹莓派或者mac才行呢?

  6. 我用ipad做中枢已经开启了,但是我的设备一直都是不可用的。除了在ipad上打开以外需要设置什么吗?

  7. 你好,请问一下我有iPad做中枢,但是电脑关掉后ipad也没信号了,要怎么操作才能让iPad作为中枢??

  8. 还想请教下您,我吧一个网关下的设备重新添加到另外一个网关上去怎么更新,之前绑定的配件还在,已经失效,比如门窗感应、温湿度感应之类的还是显示原来的数据,新添加的又没显示出来。请问要怎么操作。

    • 最快的方法就是從「家庭」App 裡把 homebridge 那個項目移除,再重新加入。

      如果無法重新加入的話,就去 ~/.homebridge/ 裡把兩個資料夾都移掉再重新去終端機 run 一次 homebridge。

      • 你说第一种方法试过了。重新添加后没用,我去试一下吧文件夹删掉,看有没有用。之前只删了一个。

  9. 移除後重裝還是卡在第4步驟
    Tsaide-MacBook-Pro:~ harry$ sudo npm -g install homebridge –unsafe-perm
    /usr/local/bin/homebridge -> /usr/local/lib/node_modules/homebridge/bin/homebridge

    > curve25519-n@1.4.0 install /usr/local/lib/node_modules/homebridge/node_modules/curve25519-n
    > node-gyp rebuild

    CXX(target) Release/obj.target/curve/node_curve.o
    SOLINK_MODULE(target) Release/curve.node
    clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated]

    > ed25519-hap@0.0.5 install /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap
    > node-gyp rebuild

    CC(target) Release/obj.target/ed25519/src/ed25519/keypair.o
    CC(target) Release/obj.target/ed25519/src/ed25519/sign.o
    CC(target) Release/obj.target/ed25519/src/ed25519/open.o
    CC(target) Release/obj.target/ed25519/src/ed25519/crypto_verify_32.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_double_scalarmult.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_frombytes.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_scalarmult_base.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_precomp_0.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p2_0.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p2_dbl.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_0.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_dbl.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_to_p2.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_to_cached.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_tobytes.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_madd.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_add.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_msub.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_sub.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p1p1_to_p3.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_p1p1_to_p2.o
    CC(target) Release/obj.target/ed25519/src/ed25519/ge_tobytes.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_0.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_1.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_cmov.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_copy.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_neg.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_add.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_sub.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_mul.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_sq.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_sq2.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_invert.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_tobytes.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_isnegative.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_isnonzero.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_frombytes.o
    CC(target) Release/obj.target/ed25519/src/ed25519/fe_pow22523.o
    CC(target) Release/obj.target/ed25519/src/ed25519/sc_reduce.o
    CC(target) Release/obj.target/ed25519/src/ed25519/sc_muladd.o
    CXX(target) Release/obj.target/ed25519/src/ed25519.o
    SOLINK_MODULE(target) Release/ed25519.node
    clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated]
    /usr/local/lib
    └─┬ homebridge@0.4.44
    ├─┬ chalk@1.1.3
    │ ├── ansi-styles@2.2.1
    │ ├── escape-string-regexp@1.0.5
    │ ├─┬ has-ansi@2.0.0
    │ │ └── ansi-regex@2.1.1
    │ ├── strip-ansi@3.0.1
    │ └── supports-color@2.0.0
    ├─┬ commander@2.8.1
    │ └── graceful-readlink@1.0.1
    ├─┬ hap-nodejs@0.4.47
    │ ├─┬ bonjour-hap@3.5.1
    │ │ ├── array-flatten@2.1.1
    │ │ ├── deep-equal@1.0.1
    │ │ ├── dns-equal@1.0.0
    │ │ ├─┬ dns-txt@2.0.2
    │ │ │ └── buffer-indexof@1.1.1
    │ │ ├─┬ multicast-dns@6.2.3
    │ │ │ ├─┬ dns-packet@1.3.1
    │ │ │ │ └── safe-buffer@5.1.2
    │ │ │ └── thunky@1.0.2
    │ │ └── multicast-dns-service-types@1.1.0
    │ ├── buffer-shims@1.0.0
    │ ├─┬ curve25519-n@1.4.0
    │ │ ├── bindings@1.3.0
    │ │ └── nan@2.10.0
    │ ├─┬ debug@2.6.9
    │ │ └── ms@2.0.0
    │ ├── decimal.js@7.5.1
    │ ├── ed25519-hap@0.0.5
    │ ├── fast-srp-hap@1.0.1
    │ ├── ip@1.1.5
    │ └─┬ node-persist@0.0.11
    │ └─┬ mkdirp@0.5.1
    │ └── minimist@0.0.8
    ├─┬ node-persist@0.0.8
    │ ├── mkdirp@0.3.5
    │ └── q@1.1.2
    ├── qrcode-terminal@0.11.0
    └── semver@5.0.3

    Tsaide-MacBook-Pro:~ harry$ cd /Users/harry/.homebridge/
    -bash: cd: /Users/harry/.homebridge/: No such file or directory
    Tsaide-MacBook-Pro:~ harry$

      • 他會自己分兩行
        我一貼上他就會變成以下情況
        Tsaide-MacBook-Pro:~ harry$ cd /Users/harry/.homebridge/
        -bash: cd: /Users/harry/.homebridge/: No such file or directory
        Tsaide-MacBook-Pro:~ harry$ vi config.json

          • 你試試這樣:

            安裝homebridge後
            先直接在terminal run一下Homebridge
            你應該看到 No plugins found. See the README for information on installing plugins.
            然後直接去finder 前往 ~/.homebridge
            應該可以去到那個folder 的
            我的Mac 也是10.13.5

            我現在算是安裝了homebridge 加了去 家居,但 加入 小米空氣清新機 一直說沒有找到plugin, 查看一下,根本沒有產生那個node_modules 的folder…

            還在嘗試

          • 我的 Mac 也是 10.13.5,安裝沒問題,上個星期幫網友遠端安裝也沒問題。
            你直接做一個 config.json 檔丟到到 ~/.homebridge/ 資料夾裡應該會快一點。

  10. 感謝分享!! 照你的方法,把homebridge、多功能網關(其中Zigbee聯: 壁插、溫濕度感知器*2)、基礎版智能開關都設定進去了!!
    請問,是不是只要無線網路斷線,那麼homebridge就會自動斷離?!因為我的無線基地台是設定每晚半夜關閉!!但是我的MAC是接有線的,我MAC也都沒有關機!!上文說到apple TV是非必要,可是我看到我的Homebridge中顯示Apple TV已中斷連線,表示早上無線網路又打通後,Apple TV不會自動連線,而且我的homebridge所有元件也都顯示無法使用!!

    • 所有的米家裝置都是連 WiFi 的,WiFi 一斷,當然不可能可以運作啊~米家的 App 也無法在沒 WiFi 的情況下使用,何況是 HomeBridge。
      你的 Mac 沒關只是確保 HomeBridge 的連線沒斷,但只要米家裝置一斷線,有 HomeBridge 也沒用。

      Apple TV、iPad、HomePod 是控制中樞是讓你出門之後還是可以透過 4G 連回家控制智能家電,如果你只想在家的時候控制,那就不必要準備。

      早上 WiFi 開了 Apple TV 不會自動連線,那你就要手動去連一下摟~

  11. 我wifi是設定凌晨1:00~5:00關閉,而我早上7:00起床手機看所有Homebridge元件都可動作,是因為我人還在家,連在家裡的wifi!!也就是說不透過Apple TV!! 但是當我離家後,手機是使用4G網路,連回Apple 家庭,卻沒有apple TV橋接進Homebridge,所以所有元件呈現無法使用!! 這樣理解對嗎?
    可是米家的程式,因為所有東西都是在家裡連上家裡的wifi,所以當我離家時,不管是4G網路或者是公司不同網的wifi,都可以連線控制家裡的智能元件!!

    • 是的。
      米家的程式跟「家庭」不同,如果你想透過「家庭」app 來控制,那就要有一台中樞,可以是 Apple TV 4代、iPad 或是 HomePod 任一種。

      你的 Apple TV 是幾代的?

  12. 哈哈!!我設定好homebridge後,不知道其實apple TV就被loop進去了!!我的是第三代apple TV!!因為我看教導中是要apple TV 4,但又備註非必要,所以想說試試看囉!!沒想到設定好之後發現homebridge中已經有我的apple TV 3了!!

    另外,想請教你,我有買小米藍芽溫濕度感知器!!但是都得要手機在家裡藍芽連現該元件才能讀溫濕度。可是米家app又說有藍芽無線網關這種東西,如果藍芽無線網關連線,那麼在戶外也可以藉由wifi連線藍芽無線網關,再讀取藍芽溫濕度感知器,不知道是否可以藉由homebrige做到藍芽無線網關的功能?

  13. Last login: Wed Aug 29 21:56:06 on ttys000
    gaojinfade-iMac:~ gaojinfa$ sudo npm -g install homebridge –unsafe-perm
    Password:
    /usr/local/bin/homebridge -> /usr/local/lib/node_modules/homebridge/bin/homebridge
    /usr/local/lib
    └── homebridge@0.4.44
    變成這子了!一直重下載都沒用

  14. Last login: Wed Aug 29 22:09:13 on ttys000
    gaojinfade-iMac:~ gaojinfa$ sudo npm -g install homebridge –unsafe-perm
    Password:
    /usr/local/bin/homebridge -> /usr/local/lib/node_modules/homebridge/bin/homebridge

    > curve25519-n@1.4.0 install /usr/local/lib/node_modules/homebridge/node_modules/curve25519-n
    > node-gyp rebuild

    You have not agreed to the Xcode license agreements, please run ‘xcodebuild -license’ (for user-level acceptance) or ‘sudo xcodebuild -license’ (for system-wide acceptance) from within a Terminal window to review and agree to the Xcode license agreements.

    You have not agreed to the Xcode license agreements. You must agree to both license agreements below in order to use Xcode.

    Hit the Enter key to view the license agreements at ‘/Applications/Xcode.app/Contents/Resources/English.lproj/License.rtf’

  15. 原本做完了!也跟手機連了!結果要增加設備時在 homebridge資料夾沒有 config.json檔~後來想說重新再做一次!就把 homebridge裡有兩個檔案夾刪除!然後再重第3 步開始下載!就一直變這樣子˙Last login: Wed Aug 29 21:56:06 on ttys000
    gaojinfade-iMac:~ gaojinfa$ sudo npm -g install homebridge –unsafe-perm
    Password:
    /usr/local/bin/homebridge -> /usr/local/lib/node_modules/homebridge/bin/homebridge
    /usr/local/lib
    └── homebridge@0.4.44

  16. Step 4做完後!Step 5不是要啟ˇ動homebridge!那不是要先關掉終端機再開終端機執行homebridge
    然後我去檔案夾還是看不到 config.json
    不知道為何?一直卡在這無法凸破

  17. → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/Debug/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/out/Release/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/Release/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/default/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/compiled/6.11.2/darwin/x64/ed25519.node
    at bindings (/usr/local/lib/node_modules/homebridge/node_modules/bindings/bindings.js:93:9)
    at Object. (/usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/index.js:1:99)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object. (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:8:15)
    gaojinfade-iMac:~ gaojinfa$

    • 現在homebridge都開不了!

      Last login: Thu Aug 30 19:24:05 on ttys000
      gaojinfade-iMac:~ gaojinfa$ homebridge
      /usr/local/lib/node_modules/homebridge/node_modules/bindings/bindings.js:96
      throw err
      ^

      Error: Could not locate the bindings file. Tried:
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/Debug/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/Release/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/out/Debug/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/Debug/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/out/Release/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/Release/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/default/ed25519.node
      → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/compiled/6.11.2/darwin/x64/ed25519.node
      at bindings (/usr/local/lib/node_modules/homebridge/node_modules/bindings/bindings.js:93:9)
      at Object. (/usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/index.js:1:99)
      at Module._compile (module.js:570:32)
      at Object.Module._extensions..js (module.js:579:10)
      at Module.load (module.js:487:32)
      at tryModuleLoad (module.js:446:12)
      at Function.Module._load (module.js:438:3)
      at Module.require (module.js:497:17)
      at require (internal/module.js:20:19)
      at Object. (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:8:15)
      gaojinfade-iMac:~ gaojinfa$

  18. 現在homebridge都開不了!

    Last login: Thu Aug 30 19:24:05 on ttys000
    gaojinfade-iMac:~ gaojinfa$ homebridge
    /usr/local/lib/node_modules/homebridge/node_modules/bindings/bindings.js:96
    throw err
    ^

    Error: Could not locate the bindings file. Tried:
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/Debug/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/Release/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/out/Debug/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/Debug/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/out/Release/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/Release/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/build/default/ed25519.node
    → /usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/compiled/6.11.2/darwin/x64/ed25519.node
    at bindings (/usr/local/lib/node_modules/homebridge/node_modules/bindings/bindings.js:93:9)
    at Object. (/usr/local/lib/node_modules/homebridge/node_modules/ed25519-hap/index.js:1:99)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Object. (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:8:15)
    gaojinfade-iMac:~ gaojinfa$

  19. Step 4. 建立 config 檔一直建立不起來!不知是哪有問題? Last login: Sat Sep 1 21:54:44 on ttys000
    gaojinfade-iMac:~ gaojinfa$ homebridge
    [2018-9-1 22:00:06] There was a problem reading your config.json file.
    [2018-9-1 22:00:06] Please try pasting your config.json file here to validate it: http://jsonlint.com
    [2018-9-1 22:00:06]
    /usr/local/lib/node_modules/homebridge/lib/server.js:213
    throw err;
    ^

    SyntaxError: Unexpected end of JSON input
    at Object.parse (native)
    at Server._loadConfig (/usr/local/lib/node_modules/homebridge/lib/server.js:207:19)
    at new Server (/usr/local/lib/node_modules/homebridge/lib/server.js:56:38)
    at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:28:16)
    at Object. (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    gaojinfade-iMac:~ gaojinfa$

    • Last login: Sat Sep 1 21:59:46 on ttys000
      gaojinfade-iMac:~ gaojinfa$ cd /Users/gaojinfa/.homebridge/vi config.json
      -bash: cd: /Users/gaojinfa/.homebridge/vi: No such file or directory
      gaojinfade-iMac:~ gaojinfa$
      gaojinfade-iMac:~ gaojinfa$

  20. 請問我把家庭app理的homebridge刪了!mac也重下載!但home app要再加入homebridge的QRcood時,手機卻顯示此配件以加入!所以無法再加入!但手機app裡並沒有homebridge!說請重制配件!要去哪重制?

    • 寫這樣,你沒有 yeelight,所以 yeelight 那段要刪掉。
      {
      “bridge”: {
      “name”: “HomeBridge”,
      “username”: “B8:27:EB:EE:AF:1B”,
      “port”: 54642,
      “pin”: “031-45-154”
      }
      },
      {
      “bridge”: {
      “name”: “HomeBridge”,
      “username”: “B8:27:EB:EE:AF:1B”,
      “port”: 54642,
      “pin”: “031-45-154”
      },
      “platforms”: [
      {
      “platform”: “MiAqaraPlatform”,
      “gateways”: {
      “7811dcfd68f6”: “COC22887E2D24E3D”
      }
      }]
      },

  21. 以刪了,電腦端沒問題了因爲之前連手機app homebridge橋接也刪!打開手機app掃描QRcood時,顯示此配件以加入!!但手機app裡沒有啊!說要重制配件?去哪重制配件?

  22. 電腦跟手機都重新開機!ㄧ樣掃QRcood時ㄧ樣顯示此配件以加入其他家庭!如過要加入此家庭請重制此配件!還是全部移除在重新下載?

    • Step 4 就是加 config.json 檔進去,你已經自己加了,就不用做了阿~
      你的 homebridge 在電腦上不是已經執行成功出現 QRcode 了嗎?你要不要抖內我,我直接遠端幫你做?不然我完全搞不懂你卡在哪邊。

  23. 說未找到這檔案 (not found)
    我用你給我修改的文件複製直接貼上config.json
    {
    “bridge”: {
    “name”: “HomeBridge”,
    “username”: “B8:27:EB:EE:AF:1B”,
    “port”: 54642,
    “pin”: “031-45-154”
    }
    },
    {
    “bridge”: {
    “name”: “HomeBridge”,
    “username”: “B8:27:EB:EE:AF:1B”,
    “port”: 54642,
    “pin”: “031-45-154”
    },
    “platforms”: [
    {
    “platform”: “MiAqaraPlatform”,
    “gateways”: {
    “7811dcfd68f6”: “COC22887E2D24E3D”
    }
    }]
    },
    Last login: Sun Sep 2 21:46:58 on ttys000
    gaojinfade-iMac:~ gaojinfa$ homebridge
    [2018-9-2 21:51:02] config.json (/Users/gaojinfa/.homebridge/config.json) not found.
    [2018-9-2 21:51:02] Loaded plugin: homebridge-mi-aqara
    [2018-9-2 21:51:02] Registering platform ‘homebridge-mi-aqara.MiAqaraPlatform’
    [2018-9-2 21:51:02] —
    Load homebridge-mi-aqara.MiAqaraPlatform
    Setup Payload:
    X-HM://0023ISYWY13DD
    Scan this code with your HomeKit app on your iOS device to pair with Homebridge:

  24. 我把homebridge刪除重灌!現在手機掃QRcood,已經能加入了!小米關網也寫進了!啟動homebridge!但看不到所有跟關網有關的配件!但顯示(not found)coding json!但這個檔案我是從你留言版上有個下載範本哪下載來的!然後放進homebridge 的檔案夾裡,我發現我一直卡在這位置!因爲我照著第四步一直無法成功!所以才去你放在另一個地方下載來放入的!但執行homebridge 就說找不到coding json!

  25. 無線開關/3,門窗感應器/1,人體感應器/1,86型單按鍵單火版開關/3,86型雙鍵按鈕單火版/1,魔方控制器/1,溫濕度感應器/1!我確時把你供應下載的config.json,丟進homebridge的檔案夾裡!原本它homebridge下載完 只有兩個檔案夾(accessories)跟(persist)然後在把你提供下載區的config.json檔下載,拖進homebridge 的檔案夾中,之後再看homebridge 檔案夾裏就看到3個檔案!你不是有幫我刪除我傳給你看config.json檔裡的yeelight,然後我直接複製貼上去config.json檔裡!但執行homebridge 就出現上一篇not found,但是homebridge 確有執行!手機也顯示線上中!唯獨看不見任何佩件!我確定mac跟密碼正確!也再三確認了!就不知道怎麼會這麼子!

  26. Hi,您好,按照教程做了,也顺利启动了HomeBridge,出现了二维码及8位代码,但是在iPad添加配件的时候,一直显示正在添加,转很久然后现在无法添加此配件。是什么原因请教?

      • failed to load BLE module!这个是什么?

        JosendeMac:.homebridge josenjin$ homebridge
        [2018-11-3 21:35:03] Loaded config.json with 0 accessories and 0 platforms.
        [2018-11-3 21:35:03] —
        failed to load BLE module!
        [2018-11-3 21:35:03] Loaded plugin: homebridge-yeelight
        [2018-11-3 21:35:03] Registering platform ‘homebridge-yeelight.yeelight’
        [2018-11-3 21:35:03] —
        Load homebridge-yeelight.yeelight
        [2018-11-3 21:35:03] [homebridge-yeelight.yeelight] YeePlatform Init
        Setup Payload:
        X-HM://0023HO0P3MACE
        Scan this code with your HomeKit app on your iOS device to pair with Homebridge:

        Or enter this cod

          • {
            “bridge”: {
            “name”: “HomeBridge”,
            “username”: “B8:27:EB:EE:AF:1B”,
            “port”: 54642,
            “pin”: “012-34-567”
            },

            “platforms”: [
            {
            “platform” : “yeelight”,
            “name” : “yeelight”
            }
            ]
            }

          • JosendeMac:.homebridge josenjin$ homebridge
            [2018-11-3 23:58:53] Loaded config.json with 0 accessories and 1 platforms.
            [2018-11-3 23:58:53] —
            failed to load BLE module!
            [2018-11-3 23:58:53] Loaded plugin: homebridge-yeelight
            [2018-11-3 23:58:53] Registering platform ‘homebridge-yeelight.yeelight’
            [2018-11-3 23:58:53] —
            [2018-11-3 23:58:53] Loading 1 platforms…
            [2018-11-3 23:58:53] [yeelight] Initializing yeelight platform…
            [2018-11-3 23:58:53] [yeelight] YeePlatform Init
            Setup Payload:
            X-HM://0023HO0P3MACE
            Scan this code with your HomeKit app on your iOS device to pair

          • r enter this code with your HomeKit app on your iOS device to pair with Homebridge:

            ┌────────────┐
            │ 012-34-567 │
            └────────────┘

            [2018-11-3 23:58:53] [yeelight] DidFinishLaunching
            [2018-11-3 23:58:53] [yeelight] no ble cap, skip ble device discovery
            [2018-11-3 23:58:53] Homebridge is running on port 54642.
            [2018-11-3 23:58:53] [yeelight] add to multicast group
            [2018-11-3 23:58:53] [yeelight] listen on 0.0.0.0
            [2018-11-3 23:58:53] [yeelight] no did or loc found!

  27. 换了三部设备,都能自动显示设备名,就是在添加时失败,我用的是Win10 vmware虚拟机的Mac10.14搭建的homebridge。是不是虚拟机的原因?但是iPad家庭都显示设备了。

  28. EA1478
    5/24/2017

    By typing ‘agree’ you are agreeing to the terms of the software license agreements. Type ‘print’ to print them or anything else to cancel, [agree, print, cancel]

    You can view the license agreements in Xcode’s About Box, or at /Applications/Xcode.app/Contents/Resources/English.lproj/License.rtf

    gyp ERR! build error
    gyp ERR! stack Error: `make` failed with exit code: 69
    gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
    gyp ERR! stack at emitTwo (events.js:126:13)
    gyp ERR! stack at ChildProcess.emit (events.js:214:7)
    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
    gyp ERR! System Darwin 17.7.0
    gyp ERR! command “/usr/local/bin/node” “/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js” “rebuild”
    gyp ERR! cwd /usr/local/lib/node_modules/homebridge/node_modules/curve25519-n
    gyp ERR! node -v v8.12.0
    gyp ERR! node-gyp -v v3.8.0
    gyp ERR! not ok
    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! curve25519-n@1.4.0 install: `node-gyp rebuild`
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the curve25519-n@1.4.0 install script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

    npm ERR! A complete log of this run can be found in:
    npm ERR! /Users/happyting/.npm/_logs/2018-11-05T19_11_33_130Z-debug.log
    happytingde-iMac:~ happyting$

    請問喔一直無法完成 Step 3. 安裝 HomeBridge
    該怎麼辦 ,我的版本macOS 10.13 High Sierra 10.13.6

  29. 大神,看看这个设置是否正确?一直不能在家庭中成功添加配件。

    config.json :

    {
    “bridge”: {
    “name”: “HomeBridge”,
    “username”: “B8:27:EB:EE:AF:1B”,
    “port”: 54642,
    “pin”: “012-34-567”
    },

    “platforms”: [
    {
    “platform” : “yeelight”,
    “name” : “yeelight”
    }
    ]
    }
    启动画面:
    JosendeMac:.homebridge josenjin$ homebridge
    [2018-11-3 23:58:53] Loaded config.json with 0 accessories and 1 platforms.
    [2018-11-3 23:58:53] —
    failed to load BLE module!
    [2018-11-3 23:58:53] Loaded plugin: homebridge-yeelight
    [2018-11-3 23:58:53] Registering platform ‘homebridge-yeelight.yeelight’
    [2018-11-3 23:58:53] —
    [2018-11-3 23:58:53] Loading 1 platforms…
    [2018-11-3 23:58:53] [yeelight] Initializing yeelight platform…
    [2018-11-3 23:58:53] [yeelight] YeePlatform Init
    Setup Payload:
    X-HM://0023HO0P3MACE
    Scan this code with your HomeKit app on your iOS device to pair

發表評論