これまでRaspberry Pi 3BでHomebridgeを動かしていましたが、Mac miniを買ったのでこちらに移行します。
MacにHomebridgeをインストール
(参考)
- HomeBridgeホームページ https://homebridge.io
- インストールガイド(macOS)https://github.com/homebridge/homebridge/wiki/Install-Homebridge-on-macOS
node.jsをインストール
node.jsをpkgインストーラーでインストールします。
インストールしたらターミナルでnodeとnpmが入っているか確認する
node -v
npm -v
Homebridgeをインストールする
sudo npm install -g --unsafe-perm homebridge homebridge-config-ui-x
起動時にバックグラウンド項目として実行するためのhb-serviceをインストール
sudo hb-service install
Homebridgeを設定する
インストールが終わったら、ブラウザでローカルIP:8581
にアクセスして確認する
アカウントを作成するとダッシュボードが見られるようになります。
とりあえず、ダッシュボードに表示されているApple Homeへの追加用QRコードを読み込んで、Homebridgeをブリッジとしてをホームに追加します。
なぜか追加しようとすると「すでにホームに追加されています」になってしまいました。
GitHub Issueで解決策を探したところ、同じ報告がありました。https://github.com/homebridge/homebridge/issues/1724
HomebridgeのWebUIのJSON Configから、config.jsonでのusernameの最後の桁を適当に変えてみます。
Homebridgeを再起動して、もう一度Apple Homeに追加してみます。
正常に追加できました。
Homebridge-Switchbotプラグインをインストールする
Switchbot系デバイスをApple Homeで扱えるようにするHomebridge-Switchbotプラグインを追加します。
「プラグイン」タブからSwitchbotと検索して、Switchbot公式のものを選びます。
とりあえずlatestをダウンロードします。
npmのキャッシュディレクトリの所有権がrootになっていると、プラグインインストール時にこのエラーが出るらしいです。
所有権をユーザーに変更します。
sudo chown -R $(whoami):$(id -gn) "/Users/turutaru/.npm"
もう一度プラグインをインストールすると、うまくいきました。
表示される指示に従い設定を続けます。
スマホのSwitchbotアプリから、右下のプロフィール→基本設定に進んで、アプリバージョンを10回連打します。
ここでアプリバージョンを10回連打すると開発者向けオプションのメニューが増えます。
その中に開発者向けトークンとクライアントシークレットが表示されています。
両方コピーして、homebridge-switchbotの設定ページに貼り付けます。
はずですが、このバージョンではバグでその設定画面が表示されませんでしたが、こちらもIssueで報告されていました。
Issueに書かれている通り、最新版またはBeta版でもバグは完全には修正されていないようなのでバージョンをv4.2.0に戻します。(Homebridgeのプラグインページで簡単にバージョンを切り替えられるようになっています)
v4.2.0では正しく入力欄が表示されました。
トークンとシークレットを入力してプラグインのchildを再起動すると、Switchbot側で登録したデバイスが既にアクセサリに表示されていました。ここで直接操作することもできます。
ただし、HomebridgeのブリッジをApple Homeに追加しただけではSwitchbot系デバイスはApple Homeに表示されません。
homebridge-switchbotの子設定からSwitchbot用のブリッジをQRコードで追加します。
これでApple HomeでSwitchbot系デバイスの操作ができるようになりました。
が、なぜかHub mini赤外線操作のリビング照明だけはHomeBridge側には表示されているもののApple Homeには表示されていません。(同じ赤外線操作の48X8900K(テレビ)は表示されている)
ダッシュボードのHomebridgeログを確認すると、
[2/1/2025, 11:08:32 AM] Please add [リビング照明 E182] manually in Home app. Setup Code: AAA-BB-CCC
手動で登録する必要があるようなので、指示に従ってApple Homeアプリでコードを入力してデバイスを追加します。
Apple Homeアプリのデバイスの追加をしようとしたところ、候補として出てきました。
これでMac miniにHomebridgeを導入し、常時Apple HomeアプリにSwitchbotデバイスを中継できるようになりました。
時間ができたらWake on Lanでパソコンの電源操作を行うHomebridge-WoLを試してみます。
コメント