AppleのHome Kitを使って家電を管理していきたいと思います。
Home KitやGoogle Assistantなどのスマートホームに対応した製品は多いですが、値段が高かったり入手性が悪かったりと取り巻く状況はあまり良い物とは言えません。
スマートホームを構築する
Homebridgeというスマートホームサーバーを使ってiOSのHomeアプリなどから操作できるようにします。
Homebridgeで一元管理出来るよう目指します。
Homebridgeを管理
Homebridgeはサーバーなので稼働させるコンピュータが必要です。
Linuxベースのコンピュータであれば動作します。
- 余っているコンピュータ
- シングルボードコンピュータ(Raspberry Pi)
上記であればインストールできます。
Raspberry PiにインストールしたRaspberry Pi OS上で直接Homebridgeをインストールしてもいいのですが、
管理しやすくするためにDockerでHomebridgeを動かすようにします。
以下のRaspberry Piであれば動作します。
- Raspberry Pi 1
- Raspberry Pi Zero
- Raspberry Pi 2
- Raspberry Pi 3
- Raspberry Pi 4
Homebridge on Dockerの構築
Raspberry Pi OS をインストール
インストールの準備
まず、Raspberry Piを使う以外のコンピュータが必要です。
Windows、Mac、Ubuntuが動くコンピュータがあれば、以下の設定が可能です。
Raspberry Pi 公式サイトからRaspberry Pi Imagerをダウンロードします。
そしてインストールまで済ませます。
Raspberry Piを操作しやすくするためにこの後の設定していきます。
また、WindowsでRaspberry Pi Imagerをインストールした時の説明でしていきます。
SSH 有効化
Raspberry Pi Imagerを開いたら、
Ctrl + Shift + Xで設定メニューを出します。
Enable SSHにチェックをいれます。
Use password authenticaionを選択して、パスワードを入力します。
このパスワードはSSH接続する時に使用するので忘れないようにしてください。
Wi-Fi の有効化
次にConfigure wifiにチェックをいれます。
こちらはお使いのWi-Fi機器のSSID、パスワードをいれてください。
下のSaveを押して設定を有効化します。
OSの書き込み
CHOOSE OSを選択します。
Raspberry Pi OS(other)を選択して、
Raspberry Pi OS LiteかRaspberry Pi OS Fullのどちらかを選択します。
今回はRaspberry Pi Zeroで設定しますので、Liteを選ぶことにします。
Raspberry Pi 3以降であればFullで良いと思います。
CHOOSE STORAGEを選択します。
使用するmicro SDカードがコンピュータに認識されていれば表示されると思いますので、
それを選択します。
さいごにWRITEを選択して、書き込みが終わるまでしばらく待ちます。
ログイン
OSを書き込んだmicro SDをRaspberry Piに刺して、
電源に接続し、 SSH でログインします。
ssh pi@raspberrypi.local
Dockerをインストール
Raspberry Pi上で次のコマンドを実行し、Dockerをインストールします。
これはしばらくかかりますので、ゆっくり待ちます。
curl -fssl https://get.docker.com -o get-docker.sh
chmod u+x get-docker.sh
sudo ./get-docker.sh
sudo apt-get -y install docker-compose
Homebridgeをインストール
Raspberry Pi上で次のコマンドを実行し、Homebridgeをインストールします。
これまた、しばらくかかります。
docker run --net=host --name=homebridge -v $(pwd)/homebridge:/homebridge oznu/homebridge:ubuntu
Raspberry Pi Zeroの場合
docker run --net=host --name=homebridge -v $(pwd)/homebridge:/homebridge oznu/homebridge:latest
(オプション)クイックインストール
コンテナ名、OSにこだわりがなければ、Dockerインストールせずとも
こちらで自動で全てインストールすることができます。
(やっていることは上とほぼ同じですが、OSはUbuntuでなくAlpine Linuxです。)
curl https://raw.githubusercontent.com/oznu/docker-homebridge/master/raspbian-installer.sh?v=2021-02-06 -o get-homebridge.sh
chmod u+x get-homebridge.sh
./get-homebridge.sh
Homebridgeの起動
次のコマンドでHomebridgeを起動させます。
(オプションの場合は不要)
docker-compose up -d
Homebridgeの管理画面
しばらく待つとHomebridgeが立ち上がってくるはずなので、
http://<ip of raspberry pi>:<8080 or 8581> にアクセスしてHomebridgeの管理画面にアクセスします。初期のユーザー情報は以下です。
- username: admin
- password: admin
上部の「プラグイン」からは、Homebridgeプラグインの検索とインストール管理ができます。「コンフィグ」からは直接config.json の編集ができます。GUIなのでかなり楽に管理ができます。