この記事は、ハンズラボ Advent Calendar 2020 1日目の記事です
はじめに
ハンズラボのPOSチームでテックリードをしている @zizi4n5 です
最近、自宅のスマートホーム化にハマっているのですが、Raspberry Pi Zero W で安く簡単に Homebridge 環境構築できて感動したので記事にしてみました。
基本的には、Homebridgeが公開している Homebridge Raspberry Pi Image の手順をベースに、補足を交えながらの説明となります。
Homebridgeとは?
Homebridgeとは、Apple HomeKitに対応していないデバイスをHomeKit対応アクセサリとして操作可能にするBridgeアプリケーションです。
OSSで開発されており、いろいろなデバイス向けのplugin開発も活発に行われています。
私の環境ではHomebridgeを利用して、Nature Reomo、SwitchBot、BoseのスピーカーなどをHomeKit対応アクセサリとして操作可能にしています。
本記事はRaspberry Pi Zero Wでの環境構築をしていきますが、macOS/Linux/Windows等のOSでも動作します。
詳細については、公式のREADME.mdを参照してみてください。
また、pluginのRuntimeはNode.jsなので、pluginをJavaScript/TypeScriptで独自に実装することも可能です。
公式が用意しているpluginテンプレート Homebridge Platform Plugin Template が参考になるので、興味がある方はぜひ読んでみてください。1
購入が必要なもの(約1,980円)
まず最初に、いくつか必要なものを購入しておく必要があります。
部品名 | 値段 | 備考 |
---|---|---|
Raspberry Pi Zero W2 | 1,320円 | 私が購入した時は、スイッチサイエンスさんが1番安かったです。 https://www.switch-science.com/catalog/3200/ |
microSDカード | 400円前後 | 私は16GBを利用しています。 今のところ特に容量問題などもありません。 |
電源コード | 300円前後 | 5V/USB Micro-Bコネクタ または GPIOコネクタ 私は家にあるものを利用しました。 |
あとは、スマートフォン、Terminalを利用できるPC/Macがあれば、特に問題ありません。
Raspberry Pi Zero W自体はモニタやキーボードと直接接続することなく、全ての設定を行うことが可能です。3
OSイメージのダウンロード
Raspberry Piを動作させるためのOSイメージとして、最新の Homebridge Raspberry Pi Image(Homebridge-Raspbian-v0.0.0.zip)4 を以下からダウンロードします。
microSDカードへの書き込み
Homebridge Raspberry Pi Image(Homebridge-Raspbian-v0.0.0.zip) をmicroSDカードへ書き込みます。
公式の手順では、Etcherの利用が簡単でオススメとありました。
ネットワークのセットアップ
公式サイトではEthernetとWi-Fi両方の説明が記載されていますが、Raspberry Pi Zero W/WHの場合はLAN端子ありません。
このため、今回はWi-Fiとして手順を進めていきます。
- SDカードをRaspberry Piに挿入
- Raspberry Piの電源をオン
- 1,2分後に、スマートフォンでWi-Fiネットワークをスキャンする
- Homebridge WiFi Setup という名前のWi-Fiに接続する
- CAPTIVE PORTALが開くまでしばらく待ち、利用環境にあるWi-Fiを設定する
なお、Wi-Fiの設定が正常に終了しなかった場合、Homebridge WiFi Setupが再表示されるので再試行してください。
Homebridgeの初期設定
ここまでの設定が正しく行われていれば、http://homebridge.local にアクセスすることで Homebridgeの管理画面にアクセスすることができます。(Windowsの場合は名前解決できない場合があるみたいです。5)
このため、初期パスワード(必要であればユーザも)を変更しておきましょう。
- http://homebridge.local にアクセスする
- デフォルトのuser/passwordであるadmin/adminでログインする
- 管理画面右上の**[設定]-[ユーザーアカウント]から、デフォルトのuser/passwordであるadmin**/adminを変更する
SSH接続の初期設定
pluginモジュールの追加インストールなどで必要となるSSHですが、デフォルトで有効になっています。
このため、初期パスワードを変更しておきましょう。
- デフォルトのuser/passwordであるpi/raspberryでSSH接続する
- passwdコマンドでデフォルトpasswordであるraspberryを変更する6
$ssh pi@homebridge.local
$passwd
ホームアプリとの連携
Homebridge管理画面に表示されているQRコードを、iOS端末のホームアプリでスキャンしてください。
登録が正常に行われると、ホームアプリの**[ホーム設定]-[ハブ & ブリッジ]**にHomebridgeが追加されます。
最後に
以上でHomebridge環境の構築は完了です。
あとは、Homebridge管理画面から保有しているデバイスのpluginをインストール・設定することで、HomeKit対応アクセサリとして操作可能になります!
私自身は、Nature RemoやSwitchBot、BoseのスピーカーなどをHomebridge経由で操作していますが、オススメのデバイス、pluginなどあれば是非コメントで教えてください!
参考情報
-
私もOSSとしてSwitchBot用のplugin Homebridge SwitchBot を開発しているので、こちらもよかったら参考にしてみてください。 ↩
-
自分が購入したタイミングではWの在庫がなくWH(ピンヘッダ付き)を購入しました。ただ、ピンヘッダを利用する予定がない場合はRaspberry Pi Zero Wの方が値段も500円ほど安いのでオススメです。 ↩
-
自分はそんなに簡単だと知らずに有線のHDMIケーブル(タイプAオス - ミニタイプCオス)を購入したのですが、無駄になってしまいました。。。 ↩
-
2020/11/30時点での最新版は、Raspbian-Homebridge-v1.0.15.zipでした。 ↩
-
http://homebridge.local
でアクセスできない場合は、ルータの管理画面もしくは、スマートフォンでHomebridge管理画面にアクセスするなどして、Raspberry Piに割り当てられたIPアドレスを見つけて、http://<ip address>
でアクセスしてみてください。 ↩ -
新たなユーザを追加した際に権限周りでいくつか問題が起きたため、パスワードのみ変更としました。 ↩