#author("2021-10-15T10:42:02+09:00","ocha","ocha")
#author("2022-05-20T23:28:38+09:00","siio","siio")
[[How2HomekitRaspi]]

** はじめに [#qb11023a]

HomebridgeはオープンソースのHomeKit用ブリッジ(変換サーバ?)です。古いバージョンをこちら
HomebridgeはオープンソースのHomeKit用ブリッジです。HomeKitに対応していない機器をHomeKitで動作させるサーバーです。古いバージョンをこちら

[[How2HomekitRaspi]]

でも紹介しましたが、現在のバージョンを動かす方法をメモしておきます。

Homebridgeを動かすことで、HomeKitに対応していない機器のサポートが可能になり、さらにはプログラミングからHomeKitにアクセスすることが容易になります。

** Homebridgeが動く機器 [#pf5415d4]

Homebridgeのホームページはこちらです。

[[https://homebridge.io]]

ここにあるように、Raspberry Pi, 各種Linux, macOS, Windows, Docker (Linuxベースの簡易な仮想マシン環境?)でも動きます。
それぞれのインストール方法も書かれています。インストールは簡単です。

以下では、Raspberry Piでの一番簡単なインストール方法を説明します。

***インストール用SDカードを作る [#vaebc1df]

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を動かします。

https://assets.raspberrypi.com/static/md-bfd602be71b2c1099b91877aed3b41f0.png

Storageのボタンで、使用するSDカードを選択します。
通常は、Choose OSのボタンで、Raspberry Pi OSをインストールするのですが、ここで、

+ Other specific purpose OS
+ Homebridge

の順番で選択を進めると、Raspberry Pi OSがインストールされて、同時にHomebridgeもインストールされます。
Homebridgeの動作に必要な最新のNode.jsもインストールされます。

#ref(imager_homebridge.png);

**WiFiの設定をする [#x6de0e22]

このSDカードをRaspberry Pi zero wに差し込めば、すぐに起動します。
でもWiFiの設定ができていないので、
通常は、Raspberry Pi zero wにディスプレイやキーボードを挿して、この後の設定を行います。
** micro SD cardの選び方 [#t1786a4d]

Raspberry Pi zero wに挿す前に、SDカードの上でWiFiの設定もしておけば、この先の作業がネット経由で可能です。
ディスプレイやキーボードの用意が不要です。
ちなみにこのテクニックは、通常のRaspberry Pi OSでも使えます。
SDカードでシステムを動かすのは無理があるのか、安価なSDカードを使うと割と頻繁に動かなくなります。
ファイルシステムにエラーが出て、起動しなくなります。
サーバーとして2-3ヶ月くらい使ったところで、起動しなくなるSDカードが2-3枚ありました。
大手メーカーの少し高めのカードを使った方が良いとおもいます。

Raspberry Pi Imagerが作成したSDカードをmacOSやWindowsに挿すと、FATのボリュームがマウントされます。
macOSならば、/Volumes/bootというドライブがマウントされます。この中にsshというサイズゼロのファイルを作っておきます。
また、wpa_supplicant.confというテキストファイルを作成して、WiFiの設定をしておきます。
一連の作業をシェルコマンドで実行すると:
さらには、「産業用」「業務用」などの名前のついたSDカードもあります。
そういう製品を選ぶと少しは安心です。
容量は8GBもあれば十分です。

 % cd /Volumes/boot
 % touch ssh
 % vi wpa_supplicant.conf
https://www.amazon.co.jp/gp/product/B07YPJZX67/

そしてwpa_supplicant.confに以下の内容を書き込みます。
https://www.amazon.co.jp/dp/B085GB4SQG/

 country=JP
 ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
 update_config=1
 network={
     ssid="<SSID>"
     psk="<パスワード>"
 }

詳しくはこちらを参照してください。
**SDから起動する [#c7bd05a0]

https://qiita.com/mascii/items/0d1a280ac58ed8f6f999
用意ができたらSDをRaspberry Piに取り付けて起動します。
この時、画面に接続していると以下のようなメッセージが出ています。

#ref(pizeroboot2.png);

*** Raspberry piにssh接続する [#l2a9a390]
** WiFi設定する [#l97c2e3e]

WiFiの設定が終わったら、SDカードを取り出して、Raspberry Pi zero wに装着して、Raspberry Piを起動します。
この設定で、Raspberry pi zero wはDHCPサーバからアドレスをもらって起動します。
どのアドレスをもらったかは、研究室のルータ(これがDHCPを担当してます)に接続して調べてください。
後々に必要ならばRaspberry Pi OSの設定で固定アドレスにします。
Raspberry Pi OSのデフォルトでは、piというユーザが設定されています。初期パスワードはraspberryです。
この状態で、Raspbery PiはWiFi基地局として動いているので、スマホやパソコンなどから接続します。

 ssh pi@192.168.108.xxx
#ref(step1.png);

として接続します。(アドレスは単なる例なので実際に合わせてください)
これで各種設定ができるようになります。
ここで見えている Homebridge WiFi SetupというSSIDに接続します。パスワードは無しです。するとWiFi設定ダイアログが現れます。

*** Raspberry piのHomebridgeに接続する [#l80bb978]
#ref(step2.png);

特に何も設定しなくても、Raspberry Piの電源を入れただけの状態で、Homebridgeが起動しているはずです。パソコンのwebブラウザから、
ここで、使用するWiFiとパスワードを入力します。Raspberry PiのWiFiは高速な5GHzに対応してます。でもアンテナは小さくて性能が良くないので、場合によっては電波が届きやすい2.4GHz WiFiで接続した方が良いかもしれません。

 http://192.168.108.xxx:8581/
#ref(step3.png);

に接続します。Homebridgeが見えているはずです。
設定直後のアカウントとパスワードはどちらもadminです。
セットアップのためにWiFi接続するにしても、可能ならば有線LANで接続したほうが、安定して良いとおもいます。

#ref(homebridge_web.jpg);

ログインした後で現れるQRコードを使ってiOSやmacOSのホーム.appからこのHomebridgeを登録できます。
またこの後のメニューで、Homebridge関係のプログラムを再起動したり、さらにはRaspberry Piを再起動したりシャットダウンすることもできます。
** Homebridge設定ページを開く [#b7f6ce66]

するとWiFiに接続し直してくれて、そのDHCPからアドレスを取り寄せて設定してくれます。
画面をモニターしていれば取得したアドレスを知ることができます。
が、画面をモニターしていなくてもこの先に進めます。

#ref(step4.png);

ブラウザを開いて、http://homebridge.local に接続します。

#ref(step5.png);

これがHomebridgeの操作インタフェースのページです。アカウント名admin, パスワードadminでログインできます。

#ref(step6.png);

このページからいろいろな設定ができます。
QRコードをiPhoneで読み込めば、ホーム.appにHomebridgeを追加できます。
またHomebridge関係のプログラムを再起動したり、さらにはRaspberry Piを再起動したりシャットダウンすることもできます。
電源を切る前には、シャットダウンしておきましょう。


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS