ラズパイ

SwitchBot(スイッチボット)をHomeKit対応させる方法【Homebridge】

SwitchBotのHomeKit化に関して、最新記事「SwitchBotカーテン・スイッチ・温湿度計をHomeKit対応させる方法」がおすすめです!

どうも、CHASUKEです。

SwitchBotと言えば、物理的な壁スイッチなどのスマート化できる便利なアイテムですが、現状、HomeKitには正式対応していません

しかし、ある方法を使えば、SwitchBotを「HomeKit」に対応させることが可能です。

今回はその方法を紹介していきます。

CHASUKE
Appleユーザーならホームで一元管理したいですよね!!

 

SwitchBotには、Bluetoothを使ったAPIが公開されてます。以前、このAPI経由でSwitchBotを操作する「Pythonスクリプト」を紹介しました。

SwitchBot(スイッチボット)をラズパイ経由で遠隔操作する方法

 

上記APIを元に作られている、Homebridgeプラグイン「homebridge-switchbotを使うことで、SwitchBotをHomeKitに対応させることが可能です。今回は、ラズパイにHomebridgeをインストールし、このプラグインを使う方法を紹介していきます。

プラグイン作成者@nkym37様に感謝。

既にHomebridgeがインストール済みの場合、「SwitchBotプラグインをインストール」からお読みください

Homebridgeとは?

Homebridge(ホームブリッジ)とは、ホームネット上でHomeKitAPIをエミュレート実行できるNode.jsサーバーのこと

このHomebridgeを使ってサーバを自宅に作れば、あたかもSwitchBotがHomeKitに対応したかのようにできます。

今回は、ラズベリーパイ (通称ラズパイ)をサーバにして、Appleのホームアプリで操作します!

CHASUKE
言いたいのは、ラズパイ使って実現するよーって事

必要なもの

Apple端末(ホームアプリ)

今回の目的は、SwitchBotのHomeKit化。

当たり前ですが、ホームアプリが使えるApple端末が必要です。

CHASUKE
僕は、iPhone XSを使っていきます

 

ラズベリーパイ一式

ラズパイ本体の他にも、SDカードや電源ケーブルなど付属品が必要となるので、これから用意するならスターターキットがおすすめ。

最新はラズベリーパイ4です。これからラズパイを使い倒すなら、最新モデルがオススメです。

created by Rinker
LABISTS
¥12,800 (2021/06/20 13:49:52時点 Amazon調べ-詳細)

ラズパイ4は技適取得済み(2019/9/29)です

しかし、旧モデルより大幅スペックUPに伴い、セットで1万円オーバーです。もし、Homebridgeを試すだけなら、旧モデルのラズパイ3B+で十分です。ラズパイZEROでもイケると思います。

created by Rinker
ABOX
¥10,800 (2021/06/20 13:49:53時点 Amazon調べ-詳細)

 

今回は、ラズベリーパイ3B+に「Raspberry Stretch with desktop」をインストールしたものを使いました。

CHASUKE
最新OS「Raspbian Buster with desktop」でもOKかと!

 

SwitchBot

今回の主役ですね。

通常、外出先から遠隔操作するにはSwitchBot Hubが必要になりますが、ラズパイが代わりになってくれます。

created by Rinker
スイッチボット(SwitchBot)
¥3,980 (2021/06/20 13:49:54時点 Amazon調べ-詳細)

▼2個セットとかお得。

CHASUKE
何気に数えたら4台ありました。便利!

必要ライブラリのインストール作業

さて、ここからラズパイの設定。

ラズパイのターミナルを開いて、必要ライブラリを初期設定済みのラズベリーパイにインストールしていきます。

少し前にセットアップしたので、バージョンが古いかもしれません。

CHASUKE
無理して合わせずに、最新資産で設定しましょう!

 

事前準備

設定していく前に、パッケージの最新化をしておきましょう。

 コマンド
$ 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.11.3
$ npm -v
5.6.0

 

gatttoolをインストール

ラズパイのBluetooth通信を使うために必要になります。

とは言っても、ラズパイは標準インストールされているため、確認だけしておきましょ。

▼こんな風に出ればOK。

 コマンド
$ gatttool
Usage:
gatttool [OPTION...]

 

Homebridgeのインストール

Homebridgeをラズパイにインストールする。

 コマンド
$ sudo npm install -g --unsafe-perm homebridge

 

正常にインストールできたら、下記コマンドでサーバを起動させ、QRコードやHomeKit設定コードがターミナル上に表示されることを確認しましょう。

 コマンド
$ homebridge

 

これが表示されれば成功。

以降設定が続くので、とりあえず「cntrol + c」でサーバ停止しておきましょう。

 

SwitchBotプラグインをインストール

Homebridgeのプラグインを追加します。

冒頭にも書きましたが「homebridge-switchbot」を利用しています。

▼インストールコマンドはこちら。

 コマンド
$ sudo npm install -g homebridge-switchbot

 

こちらのプラグインで使えるのは、以下のようなプッシュ/プル操作のみ。ご注意ください。

設定ファイルを編集

ここまで完了すると、「/home/pi/.homebridge」が作成されているはず。

このディレクトリ配下に設定ファイル「config.json」を作成することで、SwitchBotのHomeKit対応は完了します。

 

config.jsonの編集

中身はこんな感じでイケると思います。

{
    "bridge": {
        "name": "Homebridge",
        "username": "XX:XX:XX:XX:XX:XX",
        "port": 51826,
        "pin": "031-45-154"
    },

    "description": "SwitchBot Control",

    "accessories": [
        {
            "accessory": "SwitchBot",
            "name": "Wall Switch",
            "macAddress": "xx:xx:xx:xx:xx:xx"
        }
    ]
}

 

macAddressの設定方法

設定ファイル内にある「macAddress」の項目は、SwitchBotアプリから確認できます。

▼対象のSwitchBotの設定ボタンを押す。

これで、MACアドレスを簡単に特定できます。

Appleホームアプリに登録する

最後の仕上げです。

これまで、設定してきたHomebridgeサーバを再度起動させます。設定ファイルが読み込まれ、エラーが表示されずに、QRコードやHomeKit設定コードが表示されれば、成功です。

▼ホームアプリを開いて、アクセサリ登録しましょう。

サーバを停止するとホームアプリから応答しなくなるので、常時起動しておく必要があります

ホームアプリからSwitchBotを操作してみた

こちらのが反応が早い気がしますねー。

SwitchBotの近くにサーバにしたラズパイを設置しておく必要があります。

Bluetoothが届く範囲でOKなので、隣の部屋でも大丈夫でした。

 

たまに失敗することも..

ホームアプリ側でスイッチの現在状態までわからない。なので、実際の状態とホームアプリでズレることがあります。

そうなると、こんな感じで「ビックリマーク」が出て失敗します。

この場合、何度かアイコンをポチポチしてると正常に戻ります。

 

ホームハブで外出先からも操作可能

通常は、外出先からSwitchBotを操作するためには、SwitchBot Hubが必要です。

けれど、今回のHomebridgeを使えば、ラズパイがハブの代わりになります。

▼ただし、Apple TVなどのホームハブが必要となります。

AppleTVをホームハブとしてHomekitデバイスを外出先から操作する方法

続きを見る

最後に

SwitchBotをAppleのホームアプリから操作できるようにしました。

たまに出る「ビックリマーク」が厄介なものの、比較的反応も良く便利に使えています

Appleユーザ × SwitchBotユーザさんには、オススメですね。

▼今回のSwitchBot以外にも、Homebridgeネタを書いてますので是非チェックしてみてください。

それではまた。

created by Rinker
スイッチボット(SwitchBot)
¥3,980 (2021/06/21 05:19:57時点 Amazon調べ-詳細)

Amazonでお得に買い物

Amazon.co.jpで買い物するならギフト券を現金チャージするのがお得です。チャージごとに最大2.5%分のAmazonポイントがもらえます。また、5000円チャージで1000円分ポイント還元キャンペーンも実施中!!

詳しくはコチラ

  • この記事を書いた人

CHASUKE

某IT企業でエンジニアをしているCHASUKEです。 当ブログでは生活を便利にするガジェットやサービスなどライフスタイルに関わる様々な情報をお届けします。レビュー依頼も受け付けています。「お問い合わせ」より気軽にご相談ください。

© 2021 CHASUKE.com