スポンサーリンク

SwitchBotシリーズをHomebridge対応させる方法【ハブ要らず】

HomeKit
この記事は約10分で読めます。
スポンサーリンク

最近Switchbotカーテンというカーテン自動開閉装置を我が家に導入したのだが、やっぱりAppleの「ホーム」で動かしたいのがアップル信者というものだ。

8/21〜8/27はSwitchbot公式サイトにて夏のセール開催!
以下のバナーから確認ください!

おたくりんご
おたくりんご

SwitchBot公式サイトでは定期的にセールをやっていてAmazonより安いこともあるから要チェックだよ。

ということで早速対応させてみた。

前提条件としてSwitchBotアプリをインストールし、アプリ上からは動かせるようになっていること。

また、例によってHomebridgeの構築が終わっているものとして説明している。
まだ何もしていない人は以下のページのHomebridgeのインストールまで終わらせよう。

この記事では…
  • SwitchBotシリーズの商品をHomeKit対応できるようになる
  • ボット、カーテンを詳しく解説
おたくりんご
おたくりんご

ちなみにSwitchbot Hub 2を購入すればMatter対応によりHomebridgeを使わずともホームに対応できるよ。ただし今のところ全てのSwitchbot製品が対応しているわけではない(順次対応予定)ので注意。

スポンサーリンク

Switchbot プラグインの導入

主要プラグインとして、
・Homebridge Switchbot
・Homebridge Switchbot Ble
がある。

個人的にはHomebridge Switchbotをオススメする。

ちなみに以前紹介していた、Homebridge Switchbot Bleの設定方法もメモとして残しておく。

インストール

Web画面のHomebridge「プラグイン」ページより、検索ボックス内に「Switchbot」と入力し検索。

Homebridge Switchbot」をインストールしよう。

設定 (Homebridge Switchbot)

インストールが完了すると以下の設定画面が表示される。

TokenとSecretを入力する必要がある。

トークン&クライアントシークレット入力

まずはSwitchBot Account Infoを開いて、トークンを入力しよう。

トークンはSwitchBotアプリから

プロフィール→設定→アプリバージョンの欄を10回タップすると開発者向けオプションが表示される。

開発者向けオプション内にトークンとクライアントシークレットがあるのでそれをSwitchBot Account InfoのToken欄とSecret欄に入力しよう。

SwitchBot (ボット)の追加

次にSwitchBot Device Settingsを開く。

主要な設定部分は以下の通り。
特に記載のない場合はデフォルトでOK。

Device Name任意の名前
Device IDSwitchBotアプリから調べる
Device TypeBot
Connection TypeBLE : SwitchBotハブを使わない場合はこちらを選択
(ラズパイ等にBluetoothが搭載されていること)
OpenAPI : ハブを使う場合
BLE/OpenAPI : どちらも使用
ModePress : 押すと作動後スイッチがすぐにオフになる。
Switch : 押すと作動後スイッチはオンのまま。
What Type of
Device do you want to display in the
Home App?
ホームアプリ上での見え方の種類。
基本的には「Switch」で良い。
Allow Changes to Be Pushedチェックを入れるとボットの状態が既にプッシュ状態でも
再度プッシュするようコマンドを送信できる。

ボットの設定は以上だ。

SwitchBot カーテンの追加

次にカーテンの設定。

Device Name任意の名前
Device IDSwitchBotアプリから調べる
Device TypeCurtain
Connection TypeBLE : SwitchBotハブを使わない場合はこちらを選択
(ラズパイ等にBluetoothが搭載されていること)
OpenAPI : ハブを使う場合
BLE/OpenAPI : どちらも使用
Set Minimum Open Stateカーテン全開状態の閾値
この例では10%以下で全開状態になる。
Set Maximum Close Stateカーテン全閉状態の閾値
この例では90%以上で全閉状態になる。
Curtain’s Opening Mode
および
Curtain’s Closing Mode
カーテンを開け閉めする時の動作モード設定
Performance Mode : 力強いモード。通常はこちら。
Silent Mode : 静音モード。
Curtain Update Rateカーテン動作中の進行状況更新間隔(秒数)

その他のSwitchBot製品の追加

私が製品を買えば随時追加していくが、基本的にはDevice Typeを変更して必要情報を入力すれば使えるようになるはずだ。

ちなみに複数のSwitchBot製品を追加するときは、「Add New SwitchBot Device」タブをクリックする。

このプラグイン(Homebridge SwitchBot)では、現在のところ以下のSwitchBot製品が対応しているようだ。
Bluetooth欄に○がある場合は、BLEでハブなし接続可能。
×の場合はハブ経由で接続可能。

製品Bluetooth
加湿器
温湿度計
温湿度計プラス
モーションセンサー
開閉センサー
カーテン
電球×
テープライト×
コンセント (HomeKit対応済)×
ボット

特にハブなしにこだわる必要がなければ、ハブも購入した方が便利が良いかもしれない。

SwitchbotのDevice IDの調べ方

Switchbotアプリを起動後、調べたいデバイスを選択。(今回はカーテンを選択した。)
右上の設定ボタンから「デバイス情報」を選択でMACアドレス(Device ID)が表示される。

設定 (Homebridge Switchbot Ble)

Homebridge SwitchBotで基本的に事足りるので問題ない方はこの項目は読み飛ばして良い。

インストールが完了すると以下の設定画面が表示される。

インストール後にもう一度この画面を出すには、プラグインページの「Homebridge Switchbot ble」欄の「設定」から表示させる。
設定名設定する値
NameSwitchBotPlatform (そのままでOK)
TypeCurtain
Name好きな名前
MAC AddressSwitchbotアプリケーションから調べて入力
Scan DurationSwitchbotデバイスの探索時間 (入力はミリ秒)
未入力時は1000ms。
上手く反応せずSwitchbotカーテンをラズパイ側が見つけられないことがある時は長めに設定する。
Reverse Dirカーテンの進行方向を逆にする。(開状態と閉状態を逆にする)
普通はSwitchbotアプリから再校正を行う必要があるが、これをチェックすることで再校正の必要なく逆転させることができる。
Actual running Timeカーテンの動作時間 (入力はミリ秒)
未入力時は2000ms。
Open close thresholdカーテンの全開、全閉状態の閾値。
よく校正後のズレ等でSwitchbotアプリ上で97%等中途半端な状態で全閉扱いになることがあるが、そのような場合でもホームアプリ上では閉鎖済みとして表示することができる。
この例では「5」を入力すると、95%以上は全閉、5%以下は全開と表示されるようになる。
※ホームアプリで全閉状態は0%だが、Switchbotアプリでは100%という定義なので注意。

複数機器を登録する場合はADD TO DEVICESボタンを押せば2台目の入力項目が表示される。

この「Homebridge Switchbot Ble」プラグインはカーテンの他に、ボット(ボタンを押す装置)、温湿度計がサポートされている模様。

コンフィグ上

コンフィグ上ではこんな感じになった。(私の場合)
上記の設定画面で入力して保存すれば、このコンフィグは自動で作成される。

        {
            "devices": [
                {
                    "type": "curtain",
                    "name": "MyRoomSwitchBotCurtain",
                    "bleMac": "MACアドレス",
                    "moveTime": 3000,
                    "openCloseThreshold": 10
                }
            ],
            "name": "SwitchBotPlatform",
            "platform": "SwitchBotPlatform"
        }

Homebridge再起動

編集を終えたら右上の電源ボタンでHomebridgeの再起動を行おう。

ホーム画面

再起動して無事プラグインが読み込まれるとアクセサリが表示される。

あとはホームアプリ上から名前やアイコン、部屋の変更を行えばOKだ。

ちなみに「Homebridge Switchbot」プラグインの場合、SwitchBotカーテンの光センサーから照度も取得できるので便利。

おたくりんご
おたくりんご

光センサーの精度は正直かなり微妙だから使い物になるかはわからないけど…。

導入利点

このプラグインを導入することで得られる利点は3つ。

外出先から操作可能

本来外出先から操作するにはSwitchbotハブという機器が別に必要なのだがそれが要らない。
ただし、Apple製のホームハブ(HomePodやApple TV等)が必要なのは変わりないので注意。

外からいきなり操作できることによって防犯対策にも多少なるかも?

HomeKit(Homebridge)対応機器から得られる情報でオートメーションを組める

一番の重要利点。

電気をつけたら自動でカーテンを閉めたり、日の出時刻になったらカーテンを開けたり、照度センサー情報を使って開閉したりと結構無限大なオートメーションを組むことができる。

私はとりあえず日の出、日の入で連動させ、ついでに部屋のシーリングライトをオンにした時はカーテンを閉めるオートメーションを追加した。

照度情報もあるので、曇りや雨の日も時刻に左右されることなく開け閉めが可能となる。

家の状況を一括で見られる

ホームアプリ上で家がどのような状態かをカーテンの状態含め、まとめて確認できる。
見栄えが良い。

BLE接続が確立できないエラーが出た場合

・Node.jsを最新バージョンにする。

・下記コマンドをターミナルから実行して再起動してみる。

sudo npm install -g node-switchbot

終わりに

Switchbotカーテンは何度も開け閉めしていると数値ズレが起きてくるので、校正ズレ対策としてプラグイン設定の閾値の値が重要になる。

その他期待通りに動作しない場合は設定の数値を見直してみると良いかもしれない。

コメント

タイトルとURLをコピーしました