SwitchbotのPlug miniはBLEで消費電力などのステータスをBroadcast(Advertise)している

しらんかった こわいね 正しくはAdvertiseというらしい。

SwitchbotのAPI叩いてPlug miniの電力とか取りたいな~と適当にQiitaを参考にcurlでAPI1.1を叩くスクリプトを作っていたのですが、レートリミット(10k per day≒1 request per 8.6 sec)や値の即時性が怪しく感じたのでBLEで直接取得できないかと調べていました。

結果、できそうではあるものの、どうもコード的に認証とか何もないように見受けられたので、おや・・・?と思い確認したところ、表題の通りの動作をしているようです。

読めた図

※リンク先コードのscannerに渡す引数を.scan(10,passive=True)に変更しています。おそらくGnome側のBluetooth管理に引っ張られていてうまく動かなかった。

これ、例えば部屋の間接照明の制御やパソコン等の消費電力測定目的なんかにつかっていると、悪人が狙えばそこそこの確度で在宅かどうかが判断できちゃったりしそうですね。

在宅がわかりそうなデバイスにはPlug miniを使わないようにしましょう。

追記

ちなみにうちのPlug miniは上記リンク先ブログのものとは異なるEspressifのOUIでBroadcastされていました。ESP系の市場規模から考えるとそりゃそうかと言う感じではある。。

上記コードではMACがわからないとだめだけど、少し書き換えてEspressifのOUI見つけたらとりあえず上記ルールでデコードしてみる、とかやると、街中でもいろいろなスマートプラグなんかを見つけられそうですね。やらないけど。

追記2

このへんで絞ればより探しやすいっぽい。やらないけど。

https://bitbucket.org/bluetooth-SIG/public/src/a02d375ef4a70852f663c2e7d8e18bd863374ed7/assigned_numbers/uuids/member_uuids.yaml#lines-935

https://bitbucket.org/bluetooth-SIG/public/src/a02d375ef4a70852f663c2e7d8e18bd863374ed7/assigned_numbers/company_identifiers/company_identifiers.yaml#lines-2985

Woan Technology (Shenzhen) Co., Ltd.
技適検索で「214-116028」

「SwitchbotのPlug miniはBLEで消費電力などのステータスをBroadcast(Advertise)している」への1件のフィードバック

コメントは受け付けていません。