ESP32でSwitchBotのデータを受信/可視化する方法(起案編)

Uncategorized

今回は市販されているSwitchBot 温湿度計のデータをESP32で受信、見れるようにしていこうと思います。アプリだけでなく、PCとか色々なデバイスでも見られたら結構便利じゃないでしょうか。
それでは書いていきましょう!

今回のメインデバイスです↓↓

まずは目次

みんな温度管理ってどうしてるの?

最近では様々な温度計が発売されている。
スマホとBluetoothで接続して温度を収集するものや、Wi-Fiに接続して自宅や外出先からも温度管理ができるものなど、とにかく色々な製品がある。

私の場合にはSwitchBot 温湿度計を使っていて、自宅内の各部屋、外気温などを把握している。
少しだけこの製品の魅力についても書いておこう。
まず、サイズが手頃でちょうどいい。大きすぎず、それでいて液晶も見やすいサイズ。
また、スマートスピーカーとの連携がしやすい。
駆動は単4電池。バッテリー内蔵じゃないから電池が無くなったら交換すればいいだけだし、最近問題になっているバッテリー問題についても色々考えなくて良い。

そんな感じで結構気に入っている製品なんだけど、ちょっと物足りない部分もある。
それがデータの管理について。

もっと簡単にデータを蓄積できる方法は無いの?

この温度計は内部に測定した温度情報を記録しておくことができる。
データ記録の期間は約30日分。amaozonのページでは36日分と書いてあったけど、そのあたりは誤差範囲だろう。
つまり、約1ヶ月分しか記録することができない。そこで基本的にはスマホやSwitchBotハブを使用して外部機器と連携する。センサで温度収集と送信をして、それをスマホやクラウドなどの外部で保存する形となっている。

スマホの場合にはandroid / iOSのどちらもアプリがある。
手法はどちらも一緒。専用のアプリを起動してBluetoothで接続。基本的には1対1で受信する感じ?
受信中はアプリを開いた状態にしておく必要があるので面倒でその間スマホが使えなくなってしまう。
ハブ製品を購入すればこの”面倒”な問題は解決するけれど、そこそこ出費がある。

もっと手軽にデータを収集して蓄積しておく方法は無いだろうか?
そう考えて調べてみると、あったあった。良い方法が見つけることができた。
自分が考えることって調べればだいたい出てくる。まぁ、同じ人間だから既に先駆者はいるよなと考えつつ、書かれている記事を幾つか参考にさせてもらった。

無線マイコンをハブにしてIoT化する

実際にどのように実現するのか。理屈は単純。
Bluetooth搭載のマイコンで温度計のデータを受信する。
その内容をSDカードとかクラウドに保管していけば良い。

よく使うESP32というマイコンはBluetoothとWi-Fiのどちらも兼ね備えている。
であれば、これでデータを受信、その流れでクラウドに送信して保管していけば、どこからでも見ることができて良いじゃないか。当初の色々なデバイスで見ることができるという目的も達成できそうだし。

データを扱うからExcelに書き込むような感じで扱えれば便利だと思う。
であれば、Googleのスプレッドシートが今回は良さそう。Google製なら安全面もいいかな。

最終的にはスマホやPCなどで確認すると思う。
色々なデバイスで見ることを想定するとブラウザベースで可視化しておくのが良さそう。
ということはWebサイトのような形で、htmlで書かれている必要がある。

スプレッドシートならGASを使ってこれらを実現することができるはず。

とまあ、こんな感じで温度計からのデータ受信、その記録と可視化を実現できそうな構想が組み立て上がったので、実際に作っていこうと思う。

次回、下準備編

ざざざーと書いてみたけれど、現時点で確信はない。多分できそうだなーくらい。
そこで少し検証というか確認をしてみる必要がある。


その話しについては次の記事としておこう。

コメント

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