全3526文字
PR

 さて、突然だが、みなさんはいわゆるApple信者だろうか。もしそうなら、iPhone、iPad、Mac、AppleTV、Apple Watchなど、あらゆるガジェットをApple製品で取りそろえ、さまざまなAppleサービスを利用していることだろう。筆者はそこまでではないが、それなりにApple製品やAppleサービスに囲まれた生活をしており、その便利さを実感している。

 しかし、あらゆるものをApple製品やAppleサービスで固めたとしても、HomeKitによる家のスマート化に関しては、少なくとも日本国内でははうまくエコシステムが作れていないことを実感しているのではないだろうか。

 近年は、さまざまなデバイスがスマートスピーカー対応をうたっている。しかし、Amazon AlexaとGoogle Homeをサポートしながらも、Apple HomeKitをサポートしていない製品が非常に多いと感じるのは筆者だけではないだろう。

 今回は、そのようなHomeKitの普及を手助けするオープンソースのブリッジ「Homebridge」を紹介しよう。

HomeKitのプロトコル仕様が一般公開

 HomeKitの通信プロトコルはHomeKit Accessory Protocol(HAP)と呼ばれ、当初はHomeKitアクセサリーを製造するデバイスメーカーに開示されていた。しかし、非商用に限って、その通信プロトコル仕様が一般にもPDFで公開された。

HomeKit Accessory Protocol仕様(非商用バージョン)
HomeKit Accessory Protocol仕様(非商用バージョン)
[画像のクリックで拡大表示]

 この仕様の一般公開によって、これまでHomeKitをサポートしていないデバイスをiPhoneから操作できるようブリッジソフトウエアを開発することも可能になるわけだが、この仕様書は259ページにも及び、全体を把握するのは容易ではない。

 しかし、そのようなブリッジソフトウエアを自作する必要はない。さまざまなオープンソースソフトウエアがHomeKitのブリッジ機能をサポートするようになったが、その中でも有名なのはHomebridgeだろう。

Homebridgeの概要

 Homebridgeは、HomeKitをサポートしていないデバイスをHomeKitからアクセスできるようにするブリッジ、つまり、ゲートウェイソフトウエアだ。Homebridgeはnode.jsで作られており、Raspberry Pi OSなどのLinux系OS、macOS、Windowsなどで動作する。

 特筆すべきは、デバイスのサポートはプラグインという形でモジュール化されており、誰でも自由にプラグインを開発できる点だ。

 Homebridgeのプラグインは、nodeモジュール開発者や利用者にはおなじみのnpmに公開することで、Homebridgeから利用可能になる。npmのWebサイトの検索窓に「keywords:homebridge-plugin」というキーワードで検索すると、現在登録されているHomebridgeプラグインの数が分かる。2021年8月現在、筆者が調べたところ、3000弱のプラグインが存在する。

npmでHomebridgeプラグインを検索
npmでHomebridgeプラグインを検索
[画像のクリックで拡大表示]

 実際に見つかるプラグインは欧米でしか販売されていないデバイスのプラグインがほとんどだが、中には日本でも販売されているデバイスのプラグインも少なからず存在する。