デジタルフォトフレームが欲しいと思った事があるのですが、
探してみると大半がスマホアプリ経由で画像登録する方式。
いちいち画像を送るのがめんどくさい。NASのデータを垂れ流したい。
結局要望に合う商品は見つからず、自作でこれを対応している様な記事は見かけたのですがITエンジニアでIoTといえばRaspberry Pi なんですよね。敷居が高い~~~ (結局GoogleNestHubを購入した話をするか賭けます?)
さて、前置きが長くなりましたが気軽にIoTに触れられたのでご紹介します。途中で問題が生じて成果はイマイチですが、その辺も苦労話としてお読みいただければと思います。
SwitchBotの簡単な紹介
簡単にIoT家電を導入できる商品を多数取り揃えている会社さんです。
電器屋さんで一番安い加湿器を購入した際に湿度計を買い忘れていたので、
ネットで探してみてたまたま目には止まり、温湿度計を購入してみました。しかも安い。
スマホアプリで情報取得してみる
公式のアプリ「Switch Bot」をインストールします。iOS, android両対応です。
bluetoothで対象機器から情報を収集している様です。
温度: カニさん何だろうと思ったら部屋の換気をした頃ですね。
APIで情報取得してみる
API仕様
https://github.com/OpenWonderLabs/SwitchBotAPI#switchbot-meter-example
→ リンク先はC#のサンプルコードにジャンプします。
ver1.0から1.1に上がったそうです。
今回は温湿度計(Meter)を見ていきます。
Get device list
Request
GET /v1.1/devices
Response
{"statusCode":100,"body":{"deviceList":[{"deviceId":"CA5FC0C6735E","deviceName":"温湿度計 5E","deviceType":"Meter","enableCloudService":false,"hubDeviceId":""}],"infraredRemoteList":[]},"message":"success"}
"statusCode":100 :http通信成功
"deviceType":"Meter" :温湿度計
"deviceId":"CA5FC0C6735E" :デバイスID
このデバイスIDを使用して
Get device status
Request
GET /v1.1/devices/{deviceId}/status
Response
{"statusCode":100,"body":{"version":"V3.1","temperature":0,"battery":0,"humidity":0,"deviceId":"CA5FC0C6735E","deviceType":"Meter","hubDeviceId":"000000000000"},"message":"success"}
http通信は成功しているけど、明らかに値が取得できていない。。。
色々疑ってみる
2段階通信をONにしてみる → 変化なし
APIの不具合を疑いver1.0を試す → 変化なし
ファームウェアのバージョンは? → 最新
全て机の上に並べて思考停止して試す... どうなってんだ??初期不良??
公式に問い合わせてみる
初期不良疑えばいですか?
APIに関してはGithubのIssueか、アプリから問い合わせるよう教えていただきました。不具合疑えばいいですか?がもう失礼だ。。。反省。。。
解決
Responseにあった
"hubDeviceId":""、 "hubDeviceId":"000000000000"
これは機器がインターネットに繋がってないという意味との事でした。
スマホ:機器 間での情報取得はBluetooth
API:機器 間での情報収集はインターネットを介して
SwitchBotのクラウドストレージにアクセスしている為、hubが必要らしい。
https://support.switch-bot.com/hc/ja/articles/360038241113
https://support.switch-bot.com/hc/ja/articles/7257579858455
前段で購入していたGoogleNestHubではダメなそうです。
総括
室温・湿度に応じて エアコンや加湿器の設定を変更できたら便利そうですよね。
生活が便利になるスマート家電、家電をスマート家電化するIoT機器が他にもいっぱいある様です。是非チェックしてみてください。
https://www.switchbot.jp/
詰まった点の答えは全て載っていたので確認がまだまだ甘かったと反省します。