見出し画像

Switchbot不具合時の対策


Switchbot不具合発生・・・?

先に結論から書く。
以下のSNSをポストしたが、結果的には若干状況が違っていた。

SNSを検索する限り確かに不具合は発生していたが、トリガーログを確認したところ、我が家では特に異常はなくトリガーも設定どおり動作していた事が判明した。

本noteを記載しながら情報を整理している途中に気づいたが、せっかくなので不具合時の対策として方向性を切り替え記載することにした。ごめんなさい。

いつ起きたか

2023年10月23日。
SNSで確認したところ、数日前から不具合が発生している様にも見えたが、我が家では違和感を感じたのが10月22日、トリガー動作不良を確認したのが10月23日だった。(前述の通りトリガー動作不良は勘違い)

完全に言い訳だが、22日に最近は全く起きていないトリガーエラー(内部エラー)が発生していたことも潜在的に影響し、トリガー不良発生と安易に結びつけてしまった。

なにが起きたか

  1. トリガー(Switchbotのオートメーション)が動作しない
    我が家ではこちらが発生。
    〇℃になったらエアコンを〇℃で動作、の様なトリガーがかからなかった。(前述の通りトリガー動作不良は勘違い)

  2. 勝手にトリガーがかかる
    SNSの投稿ではこちらが多い様に感じた。具体的にはライトが勝手にON/OFFになるなど。

なぜ起きたか

これはSwitchbotからの公式発表がないので不明だが、経験的に大規模セール(今回の場合は秋のセール)などで購入者増加→セットアップやトリガー登録によるサーバ負荷増大→トラブル発生、が予想される。

以下は温度管理の指標にしているケージ内温度。
23時30分頃から温度が下降し続けている事がわかる。

我が家のトリガー設定上、25.5℃以下には相当な事がない限りならないため、季節を加味したこの温度(25.1℃)は異常値に近い事がわかる。

ちなみに26℃を下回るとメインエアコンは暖房26.5℃で動作をはじめ、25.5℃になると暖房27℃に切り替わる。

さらに25℃に達するとサブエアコンが暖房27℃で動作を始める。

これは当日のトリガー内訳。
0時33分に25.5℃のトリガーの後、大きく時間が空いているのがわかる。

・・・と、ここまで書いて気づいた。
次のトリガー動作は25℃なので、トリガーがかからないのは正常なのだ。

ここまでの内容で「Switchbot不具合」というタイトルで書き始めた本記事はその意味を全く失ってしまったが、当時は完全に不具合だと思い込んでいたので、前述の通り「Switchbot不具合発生時の対策」にタイトルを改めたうえで実際に行った対策を記載していく事にした。

具体的な対策

まずは設置状況など前提となる条件を記載する。

  • 温度/湿度のトリガーはルーミー60内に設置してあるSwitchbot温度湿度計

  • 基本はメインエアコン(ダイキン)で温度制御

  • サーキュレーターON/OFFで想定温度内に収まるように補助

  • 一定温度を超えると小型ファンが稼働、ルーミー60内から強制排気

  • 一定温度範囲を超えるとサブエアコンで補助

上記の様に日常的に稼働しているのはメインエアコン+サーキュレーターで、イレギュラー時に小型ファンやサブエアコンが稼働し、温度を正常範囲に戻すという動き。

ここからはSwitchbotに何かしらの不具合が発生し、トリガーが使用できないという状況を想定して記載する。

SwitchbotサーバやAWSが正常に稼働していないという前提で、以下を確実に担保する必要がある。

  • 確実な温度湿度を把握する
    サーバが正常稼働していない場合、タイムラグや不正値の可能性がある。この前提が正しくないと、その後の判断もすべて間違いになる。

  • 確実な装置稼働状況を把握する
    アプリ上でONになっていても実際にはONになっていない場合がある。上記と同様にここの前提が間違っていると、その後の判断もすべて間違いになる。

  • 完全別系統の制御系を準備する
    SwitchbotやNature RemoはAWSで稼働する事が知られているため、AWSとは完全に別ラインの制御系(ダイキンやHomeKit、Sensibo)を準備する必要がある。

上記を踏まえて具体的な対策を考えていく。

  1. その温度は正確か
    Switchbotサーバに不具合が発生すると仮定した場合、Switchbot温度湿度計の値が正確かの確証がない。(ローカルの温度表示とアプリでの温度表示が不一致など)

    通常は3つのケージの周りには6個のSwitchbot温度湿度計を設置し、どれかに不具合があったとしても総合的に温度を判断できるようにしているが、Switchbot自体が信用できないとなると話が変わる。

    我が家ではQingpingの空気質モニターを設置し、Switchbotと別ラインの温度確認ができる様にしている。

    また、ATOM CAM2でケージ内のSwitchbot温度計を直接確認できるようにもしている。

  2. Wi-Fiに対応したエアコンを使用する
    温度が分かったとしても、外部からエアコンを動作できないのでは意味がない。

    我が家ではダイキンのWi-Fi対応モデルを使用する事でこの問題をクリアしている。

    ATOM CAM2でルーミー内のSwitchbot温度計を確認しながらダイキンエアコンの温度をマニュアル操作することになる。

  3. HomeKitを使用する
    エアコンをHomeKit化することで、Switchbotサーバに依存せずにエアコンを管理できるようになる。

    現時点ではまだ粗削りだが、ON/OFF制御と温度指定、運転モード切替くらいなら使用できる。

    Matter化にはいくつかの選択肢があるが、代表的なものだとNature Remo NanoやSensiboがあげられる。

    先日Matter1.2がリリースされたので、より便利なる事を期待したい。

  4. サブエアコンの確認
    想定温度範囲を逸脱するとサブエアコンが稼働する。
    普段は稼働状況をSwitchbot開閉センサーでモニターしている。

    Switchbot開閉センサーが「開」になると、それはエアコンのフラップが開いた=稼働した、という事になり、逆に「閉」になると、エアコンのフラップが閉じた=停止した、という事になる。

    しかしSwitchbot不具合発生の場合は前提が変わる。

    異常事態なので状況を正しく把握する事がとても重要になるが、サブエアコンは古いモデルなのでWi-Fi対応していない。

    Nature Remo NanoやSensiboで電源を入れたとしても、ONになった情報は他のデバイスに共有されない。すなわち、SwitchbotでONにしても、HomeKit(Nature Remo NanoやSensibo)からは依然OFFのままに見えている。

    こうなると実際にエアコンがついているかどうかに確証が持てなくなるため、エアコンの吹き出し口をATOM CAM2で映す事によって稼働状況を確認している。(+前述の開閉センサー)

  5. サーキュレーターの確認
    サブエアコンと同じく、サーキュレーターもWi-Fiに対応していない。
    そのため、動作状況を確認するためにATOM CAM2からの映像で確認をしている。

    11月14日発売予定のSwitchbotサーキュレーターであれば、インターネット経由での管理が可能になる。

まとめ

大きなステップとしては以下。

  1. 正確な温度を把握し、

  2. 正確なエアコン稼働状況把握、

  3. 複数の制御系で温度管理を行う

上記をSwitchbotに頼らない環境で構築する必要がある。
また、個人的には機器の確実な動作確認はアナログが最強(カメラによる直接視認)だと思う。


サポートありがとうございます。すなねずみ達の為に使わせて頂きます。