HomebridgeはオープンソースのHomeKit用ブリッジです。HomeKitに対応していない機器をHomeKitで動作させるサーバーです。古いバージョンをこちら
でも紹介しましたが、現在のバージョンを動かす方法をメモしておきます。
Homebridgeを動かすことで、HomeKitに対応していない機器のサポートが可能になり、さらにはプログラミングからHomeKitにアクセスすることが容易になります。
Homebridgeのホームページはこちらです。
ここにあるように、Raspberry Pi, 各種Linux, macOS, Windows, Docker (Linuxベースの簡易な仮想マシン環境?)でも動きます。 それぞれのインストール方法も書かれています。インストールは簡単です。
以下では、Raspberry Piでの一番簡単なインストール方法を説明します。
Homebridgeとプラグインなどを動かしてみると全体で400MBくらいのメモリを使用するようです。 Raspberry Piも525MB以上のメモリを搭載したモデルが良いと思います。 代位1世代のRaspberry Piは256MBだったので無理かもしれません。 今なら、Raspberry Pi 4かRaspberry Pi zero wが良いと思います。 以下ではzeroで試します。
まずは、Raspberry pi zero wとmicro SDカードを用意します。 次に、Raspberry Pi OSのページからSDカード用のインストーラプログラムPi Imagerをダウンロードします。 macOS用、Windows用、Linux用などあるので、適したものをダウンロードします。
https://www.raspberrypi.com/software/
このRaspberry Pi Imagerを動かします。
Storageのボタンで、使用するSDカードを選択します。 通常は、Choose OSのボタンで、Raspberry Pi OSをインストールするのですが、ここで、
の順番で選択を進めると、Raspberry Pi OSがインストールされて、同時にHomebridgeもインストールされます。 Homebridgeの動作に必要な最新のNode.jsもインストールされます。
SDカードでシステムを動かすのは無理があるのか、安価なSDカードを使うと割と頻繁に動かなくなります。 ファイルシステムにエラーが出て、起動しなくなります。 サーバーとして2-3ヶ月くらい使ったところで、起動しなくなるSDカードが2-3枚ありました。 大手メーカーの少し高めのカードを使った方が良いとおもいます。
さらには、「産業用」「業務用」などの名前のついたSDカードもあります。 そういう製品を選ぶと少しは安心です。 容量は8GBもあれば十分です。
https://www.amazon.co.jp/gp/product/B07YPJZX67/
https://www.amazon.co.jp/dp/B085GB4SQG/
用意ができたらSDをRaspberry Piに取り付けて起動します。 この時、画面に接続していると以下のようなメッセージが出ています。
この状態で、Raspbery PiはWiFi基地局として動いているので、スマホやパソコンなどから接続します。
ここで見えている Homebridge WiFi SetupというSSIDに接続します。パスワードは無しです。するとWiFi設定ダイアログが現れます。
#ref(): File not found: "step2.png" at page "How2Homebridge"
ここで、使用するWiFiとパスワードを入力します。Raspberry PiのWiFiは高速な5GHzに対応してます。でもアンテナは小さくて性能が良くないので、場合によっては電波が届きやすい2.4GHz WiFiで接続した方が良いかもしれません。
するとWiFiに接続し直してくれて、そのDHCPからアドレスを取り寄せて設定してくれます。 画面をモニターしていれば取得したアドレスを知ることができます。 が、画面をモニターしていなくてもこの先に進めます。
ブラウザを開いて、http://homebridge.local に接続します。
これがHomebridgeの操作インタフェースのページです。アカウント名admin, パスワードadminでログインできます。
このページからいろいろな設定ができます。 QRコードをiPhoneで読み込めば、ホーム.appにHomebridgeを追加できます。 またHomebridge関係のプログラムを再起動したり、さらにはRaspberry Piを再起動したりシャットダウンすることもできます。 電源を切る前には、シャットダウンしておきましょう。