見出し画像

Switchbot温度湿度計 不具合続報


結論

長いので結論から記載する。

2024年1月6日 4時近辺においてSwitchbotの温度グラフが正確に記録されていなかった可能性が極めて高い。

気づくことが非常に困難な現象であるため、不正確な温度情報をもとにトリガーなどを設定してしまうと危険。

これは完全に個人的な予想だが、温度湿度計がHUBを介して温度記録をする場合、取得データは(ローカルに記録された後にサーバに転送されるのではなく)直接サーバに記録されるため、何かしらの理由によりサーバとの通信が滞ると温度湿度計の表示と記録データ(グラフ)に不整合が生じるのではないかと考えている。

ただ、こんな不安定な記録方法を採用するとは思えず、別の理由があるのだと信じたい。

メーカーには原因の究明と修正をお願いしたい。

はじめに

先日「本来想定していた温度領域を逸脱する問題」が発生し原因を探っていたが、もう少し掘り下げた続報を本noteに記載する。

詳細はリンクを参照してほしいが、上記noteを記載した時点で「本来想定していた温度領域を逸脱する問題」の原因は下記3点を想定していた。

  1. エアコンが壊れた

  2. Switchbot HUBが壊れた/エラーが発生している

  3. 温度湿度計が壊れた

今回は上記「以外」の可能性を示唆する状況が発生したので記載をしていこうと思う。

前提

2023年12月26日に温度湿度計を新調し、その時点で考えうる可能性をすべてつぶしたと考えていた。

同時に「選択肢にあげるには可能性が低すぎるために記載しなかった事」についても確認できるように準備を進めていた。

その可能性は以下2点。

  1. (やっぱり)Switchbot HUB2が故障している

  2. Switchbot サーバー側の障害

Switchbot HUB2の故障について

前回のnoteでSwitchbot HUB2の故障は除外したが、やっぱり壊れていたというオチも完全にゼロとは言い切れないので、Amazonで新品の手配をしていた。

リモコンのコピー、トリガーの修正、問題なく稼働するかの試運転など若干手間がかかるので少し落ち着いてから検証を考えていたが、今回時間が取れたのでSwitchbot HUB2を新しいものに入れ替えた。

これによりSwitchbot HUB2が故障した事による不具合は除外できたと思った矢先に下記症状が発生した。

温度湿度計の表示とアプリの表示が異なる

発生した状況を要約すると、実際の温度湿度計の表示と、Switchbotアプリにおける温度湿度グラフ表示に差異が生じているというもの。

かなり意味不明な状況だったため、複数の切り口から再確認する事にした。

状況確認

我が家では多数のトリガーを設定しているが、その一つとして26℃にもトリガーを設定している。(26℃を超えるとエアコンの温度設定を変更)

Switchbotアプリ上(グラフ)でみると、我が家のトリガーの閾値である26.0℃を超えたのは4時14分だった。(Fig.1)

しかし、実際のトリガーのログを確認すると4時1分にトリガーがかかっている事が確認された。(Fig.2)

すなわち、温度湿度計のグラフと実際の表示温度が異なるという状況。

Switchbotアプリ(グラフ)における温度変化

Fig.1 トリガーの閾値である26.0℃を超えたのは4時14分となっている

実際のトリガー

Switchbotアプリから実際のトリガー履歴を確認できるが、それによるとトリガーは4時1分にかかっていた(Fig.2)。

Fig.2 実際にトリガーがかかっているのは4時1分

状況整理

これらのデータは、トリガーが発動する26℃に到達したタイミングにズレが生じていることを示している。

  1. アプリ(グラフ)上で26℃に到達:4時14分

  2. トリガー履歴上で26℃に到達:4時1分

グラフの形状から見るにどちらかが間違っている事は明白だが、これだけではSwitchbotアプリのグラフが不正確なのかトリガーが不正確なのか判断ができない。

そのため、状況を確定させる為に以下を確認した。

  • 温度湿度計スペック

  • 「その時点での」温度(アプリ)

  • 「その時点での」温度(実際の温度湿度計表示)

Switchbot 温度湿度計 スペックシート確認

そもそも温度湿度計のスペック的に無茶な正確度を要求していないかを確認するため、改めてスペックシートを確認した。

スペック上、温度精度は±0.2℃であることが確認された。

Fig.3 Switchbot温度湿度計スペックシート

スペック上の温度精度は±0.2℃なので、以下の時間帯においてスペック値以上の温度変化(=誤差ではない変化)が起きているのは精度限界による誤差ではない。

2024/1/6 4時2分→4時3分:0.3℃上昇
2024/1/6 4時6分→4時7分:0.3℃上昇
2024/1/6 4時13分→4時14分:0.5℃上昇

「その時点での」温度(アプリ)

以下は2024年1月6日 4時0分時点でのSwitchbotアプリのスクリーンショット。

Switchbotアプリでは、測定された温度が数分遅れてアプリ(グラフ)に記録される仕様になっているため、上段にリアルタイムの温度を表示した場合は上段と下段では同じ時刻を表示できない。

上段:温度湿度計のリアルタイム表示(4時0分時点でのデータ)
下段:グラフに記録された温度(3時57分時点のデータ)

Fig.4 Switchbotアプリのスクリーンショット

以下はSwitchbotアプリ(グラフ)上での2024年1月6日 4時0分の温度。25.1℃と記録されている。

Fig.5 2024年1月6日 4時0分の温度

この時点でアプリ内での温度記録(Fig.4 上段)とグラフ表示(Fig.5)に不整合が生じているのがわかる。

すなわち、2024年1月6日4時0分時点において以下2つの異なる情報が混在する事になる。

アプリ(リアルタイム):25.9℃(Fig.4 上段)
アプリ(グラフ):25.1℃(Fig.5)

ただ、この情報からだけではどちらが正しい数値かの判断はできない。

「その時点での」温度(実際の温度湿度計表示)

我が家はSynology surveillance stationを使ってATOM CAM2からの映像を24時間365日録画している。(詳細は以下を参照)

今回の該当箇所を探してみたところ、トリガー閾値である26.0℃を超えたのは2024年4時1分である事が確認された。

左図:2024年4時0分 25.9℃
右図:2024年4時1分 26.0℃

Fig.6 Synology surveillance stationによるATOM CAM2からの映像

上記から、実際にトリガー発動温度である26.0℃に到達したのは2024年4時1分であり、これはSwitchbotアプリのグラフ表示が不正確な事を強く示唆する。

サポートに連絡

この時点でサーバ側の問題を疑っていた為サポートに連絡を行ったが、サーバ不具合などは報告されていないとの事だった。

サポート担当からの情報によると、温度湿度計のファームウェア(v2.8)によっては温度表示の遅延が発生する可能性が報告されているとの事なので最新のファームウェアをプッシュしてもらう事をお願いした。(2024年1月8日時点でまだプッシュされていない)

しかし、個人的にはこの可能性は低いと考えている。

以下の画像からもわかる通り、部屋には2つの温度湿度計をいれており、これら温度湿度計のファームウェアは異なる。

左:ファームウェアv2.8
右:ファームウェアv2.9

Fig.7 Switchbot温度湿度計を2つ並べて設置してある

更に右側の温度湿度計(v2.9)における2024年1月6日 4時0分時点での温度は25.1℃となっており、トリガーである26.0℃を超えたのは同4時13分である事がわかる。

すなわち、ファームウェアによって挙動が変わらない事を支持すると共に、異なる2つの温度湿度計で同じ挙動を示していることがわかる。

これはHUB2を含むインターネット側に原因がある事を強く示唆する。

Fig8 右側温度湿度計(v2.9)

まとめ

ここまでのデータより以下が推察される。

  • 温度湿度計の物理的な表示に問題は見られない

  • 何かしらの理由でSwitchbotアプリのグラフが正確に表示されず、実際の温度表示とアプリへの記録に不整合が生じた

  • 温度の不整合があるのはSwitchbotアプリのグラフのみ

  • トリガーは正常に働いている(上記を支持)

  • この症状は温度湿度計のファームウェアに依存しない(v2.8とv2.9で同じ挙動)

  • ローカル側ではなく、サーバもしくはインターネット側の問題と考えられる


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