赤シャツエンジニア

赤シャツエンジニア

M5StackでSigFoxを試す

背景

LPWAには興味があったのですが、敷居が高いなーなどと思っていました。 そんなときweb上で、京セラコミュニケーションシステム(KCCS)様がM5Stack COM.X SigFoxプレゼントキャンペーンを実施するという話が流れてきて、ちょうど遊んでいるM5Stackもあったので、申し込まない手はないなということで申し込み、見事当選させていただきました。

www.kccs-iot.jp

送っていただいたデバイスはこちら

www.switch-science.com

で、よし!とりあえず試してみようってなったのですが、KCCS側で用意してくださった手順書は

www.kccs-iot.jp

かなり充実した内容になっているのですが、 私がそれを凌駕する初心者っぷりだったので、それでも自分的に足りなかった部分を備忘録的に残しておこうと思います。

M5StackとCOM.X SigFoxの組み立て

COM.X SigFoxを手に入れようとしている人がまさかここではまるとは、思われていなかったようですが (自分も提供側なら思わない) かなり悩みました。M5Stackを結構使っているくせにモジュールをスタックしたことがなかったこともあいまって 30分ぐらい格闘していました。

以下、M5StackとCOM.X SigFoxのスタック手順です。

COM.X SigFoxの開封の儀を行います。

f:id:mametarou963:20201025160923j:plain

基盤とアンテナをつなぎます。

f:id:mametarou963:20201025160958j:plain

COM.X SigFoxのケースとベース部分を付属のレンチではずします

f:id:mametarou963:20201025164854j:plain

COM.X SigFoxのケースのうち上部側の穴をニッパーなどで除去します

f:id:mametarou963:20201025164912j:plain

あけた穴の内側からアンテナを出します。

f:id:mametarou963:20201025164935j:plain

ここは、結構苦労しました。フレームの上側の幅が小さいため支えていないと折れそうだったことと、 除去してつくった穴にアンテナがきれいに入らなかったので。 おそらく、軽くやすり掛けをしたりすればスムーズに入ったのかもしれません。

COM.X SigFoxのケースとベース部分を付属のレンチでとめて、 外側からアンテナを接続します。

f:id:mametarou963:20201025164956j:plain

これでCOM.X SigFoxの完成です。

M5Stackを半分に割り、間にCOM.X SigFoxをはさんで、

f:id:mametarou963:20201025165030j:plain

完成です。

f:id:mametarou963:20201025165049j:plain

IDとPACの確認

バイスのアクティベートにはIDとPACが必要になります。

IDとPACはKCCSの手順書に示されたサンプルプログラムをM5Stackに書き込んで起動後、 ID/PACボタン(ボタンC)を押します。

f:id:mametarou963:20201025165250j:plain

ただしくCOM.Sigfoxがスタックされていれば、IDとPACが表示されます

バイスのアクティベート

基本的には以下の手順書通りに実施すれば問題なく登録できます。

www.kccs-iot.jp

IDとPACは前項で確認したものを入力すれば登録できます。

登録後は、自メールアドレス登録URLが飛んできますので、パスワードを設定して登録完了となります。

データ送信

M5Stackからのデータ送信です。

サンプルプログラムのUPボタン(Aボタン)を押下し、3秒程度待ってOKが出れば送信成功です。

送信データの確認

公式の説明では

  1. webブラウザで見れます
  2. API叩いてみれます(pull)
  3. callbacksで飛ばせます(push)

とありますが、とりあえず手っ取り早くwebブラウザでかくにんします。

https://backend.sigfox.com/device/list

にはいって、該当デバイスの「id」をクリックします。

f:id:mametarou963:20201025165502p:plain

メニューの「Message」をクリックすると、受信したメッセージ一覧が表示されます。

f:id:mametarou963:20201025165620p:plain

サンプルプログラムのままだと、Data/Decodingがcafeのデータを受信できているはずです。