どうも、CHASUKEです。
API公開されているスマートロック「SESAME mini」をAppleホームアプリから操作できるようにしました。ラズパイにHomebridgeプラグインを入れて実現しました。
▼こんな感じでAppleホームアプリで使えます。
ということで、今回はこちらの実現方法・出来ることを紹介します。
SESAMEやSESAME miniを使っている方で、AppleホームアプリやSiriから家電操作したい人は、ぜひ参考にしてみてください。
CHASUKE
iPhoneユーザには相性抜群なんだよねー
それでは、やっていきましょう!!
▼セサミ miniは一般販売されました。初代セサミとお間違いなく!
Homebridgeとは?
Homebridge(ホームブリッジ)とは、iOS HomeKitAPIをエミュレートし、ホームネット上で実行できるNode.jsサーバーのこと
SESAMEは、スマホやAIスピーカーから操作できる便利なスマートロック。
しかしながら、Apple HomeKitには非対応のため、Apple標準スマートホームアプリには追加できない。そこで活躍するのが『Homebridge』です。
ラズパイ(自前PC)にHomebridge用のサーバーを立ち上げることで、あたかもHomeKit対応したかのように振る舞える優れものです。
必要なもの
iOS端末(ホームアプリ)
今回の目的は、Appleホームアプリで利用するためなので、当たり前だけど、iOS11以降がインストールされた端末が必要です。
CHASUKE
僕はiPhoneXSを使って設定していきます♪
RaspberryPi(ラズパイ)一式
僕の動作環境ではRaspberryPi 3Bに最新OS「Raspbian Stretch with desktop」をインストールして設定しました。
これからラズパイを購入するなら、本体の他にSDカードや電源ケーブルなどの付属品が全て揃ったスターターキットがおすすめ。処理性能が向上した最新モデル「RaspberryPi 3B+」を選びましょう。
検証していませんが、低価格なRaspberryPi Zeroでも実現できると思います。
https://chasuke.com/wp/pizerostarterkit/
SESAMEとWiFiモジュール
今回の方法では、日本仕様の小型・軽量モデル「SESAME mini」でも、元祖「SESAME」のスマートロックのどちらもHomeKit対応できます。
また、ネットワーク経由なのでSESAMEにペアリングされている専用WiFiモジュールも合わせて必要になります。
必要ライブラリのインストール作業
ラズパイを初期設定(WiFi設定など)を実施した後、ターミナルからコマンドを入力し、必要なライブラリをインストールしていきます!!
CHASUKE
僕はMacBookで作業してます。Windowsの人は適宜読みかえ願います。
事前準備
設定していく前に、パッケージの最新化をしておきましょう。
$ sudo apt-get update
$ sudo apt-get upgrade
Node.jsのインストール
Homebridgeは、Node.jsで動くので必要となります。偶数が安定バージョンらしいので、8系をインストールした。
$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
$ sudo apt install -y nodejs
実施後は、バージョン確認コマンドでインストールされているか確認する。
$ nodejs -v
v8.15.0
$ npm -v
6.7.0
CHASUKE
これと全く同じになる必要はないです
Homebridgeのインストール
下記コマンドにてHomebridgeをインストールします。
$ sudo npm install -g --unsafe-perm homebridge
CHASUKE
これが親玉。これにプラグインを追加していく形になるよ
正常にインストールできたら、下記コマンドでサーバを起動させ、QRコードやHomeKit設定コードがターミナル上に表示されることを確認しましょう。
$ homebridge
これが表示できていれば、成功です。以降設定が続くので、とりあえず「cntrol + c」でサーバ停止しておきましょう。
Homebridgeプラグインをインストール
親玉にプラグインを追加する形で、SESAMEスマートロックを追加します!
SESAMEスマートロックを利用するためのHomebridgeプラグインは「homebridge-sesame」を利用しています。
▼プラグインの取得コマンドはこちら。
$ sudo npm install -g homebridge-sesame
CHASUKE
施錠状況やバッテリーの通知、開閉操作ができるよ
SESAME以外にも、多くのHomebridgeプラグインが揃ってるので探してみると面白い。優秀な開発者様が公開してくれてますね。
僕の場合、環境センサーNetatmoやAwair、スマートリモコンNature Remoなどを追加してます。この辺りはお好みで。
$ sudo npm install -g homebridge-netatmo
$ sudo npm install -g homebridge-nature-remo-aircon
設定ファイルを編集
必要なライブラリのインストールが全て完了すると、ディレクトリ「/home/pi/.homebridge」が作成されているはず。
上記配下にあるに設定ファイル「config.json」を編集することで、SESAMEのHomeKit対応は完了です。
CHASUKE
あともう少しじゃー
config.jsonの編集
▼「homebridge-sesame」を動かすための設定はこんな感じです。
{
"bridge": {
"name": "Homebridge",
"username": "XX:XX:XX:XX:XX:XX",
"port": 51826,
"pin": "031-45-154"
},
"description": "xxxxxxx",
"platforms": [{
"platform": "Sesame",
"token": "APIキーを入力"
}]
}
設定ファイル内には「APIキー」が必要になります。これは認証に使うための情報です。
▲APIキー取得方法は公式ブログが参考になります。
CHASUKE
簡単にAPIキーが取得できるけど、管理は厳重に!
Appleホームアプリに登録する
最後の仕上げです。
設定したHomebridgeサーバを再度起動させます。設定ファイルが読み込まれ、エラーが表示されずに、QRコードやHomeKit設定コードが表示されれば、成功です。
▼Appleホームアプリからアクセサリを追加。
表示されているQRコードをカメラで読み込ませればOKです。
▼設定ファイルに記載した分のアクセサリが順番に追加できます。ちなみに、ブラックというのは我が家のSESAME miniちゃんの名前です。
CHASUKE
SESAMEの他にも22アクセサリを追加完了!
ホームアプリからSESAMEを使ってみる
コントロールセンターから手軽に操作
設定時に「よく使う項目に含める」にチェックするとコントロールセンターから手軽に操作できます。
▼こんな感じに使えます。
ボタンタップすると開閉操作ができます。
ボタンを押してから約5秒くらいで反応し始めます。WiFi経由なので少し遅め。
▼ボタンを長押しし、詳細表示すると、バッテリー残量がチェックできます。
▼実際に操作している動画がこちら。
SESAMEと同じネットワークのWiFiオンと外出時を想定したWiFiオフのそれぞれ試してます。(※Appleホームハブを利用すればWiFiオフ時も操作できます。詳しくは下の章で)
上の動画でボタンを押してからの反応速度は、WiFi接続時は約5秒、WiFi切断時は約8秒でした。何度か試しましたが同じくらい。
Appleホームアプリを起動してからの読み込み(※アップデート中と表示)した後に操作可能となる。動画のように早いときもあれば、時間がかかることもある。
特に外出先から時間を空けて起動すると遅い(1〜2分かかる)。これは他のプラグインの影響もあって僕だけなのかもしれない..
CHASUKE
この辺りは環境にもよるので参考程度で。読み込みに時間がかかるけど動作に問題はないよん♪
Apple Watchからホームアプリを操作
Apple Watchだとこんな感じにスイッチ表示されます。
ポチッとして、開け閉めができます。
Siriからホームアプリを操作
CHASUKE
Hey Siri、ブラックを閉じて!
施錠はすんなり開く。反応速度は先ほどのボタン操作と同じ。
CHASUKE
Hey Siri、ブラックを開けて!
施錠はセキュリティを考慮し、パスコードの解除が必要です。パスコードの要求はAlexaやGoogleアシスタントと同じですね。
▼Apple Watchだとこんなイメージです。
CHASUKE
Siri呼び出しならApple Watchも便利ですね
▼状態やバッテリー残量もSiriに聞けます。
SESAMEのプラグインを使って、ロックの「開閉操作」「バッテリー残量チェック」「状態チェック」が使えますね。
ホームハブで外出先から操作可能
AppleホームはiPadやApple TVをホームハブとして、WiFiネットワークが届かない外出先からでも操作が可能です。(※上にあった動画のようにWiFiオフにしても操作可能)
▼こちらの記事でApple TVをホームハブに設定する方法を紹介しています。
https://chasuke.com/wp/appletv_hub/
CHASUKE
外出先から使いたい人はチェック!
最後に
SESAMEはApple HomeKitには非対応。けれどAPI公開されているため、Homebridge経由での操作が可能です。
Apple製品と相性ばっちりなので、是非お試しください。
▼最近では、Macでもホームアプリが使えますね。PC操作時もポチッと操作できます。
それではまた。