Help us understand the problem. What is going on with this article?

Sigfox Sens'it SDKで簡単IoT組み込み開発(3)

More than 1 year has passed since last update.

ここでは、Sens'it SDKでカスタマイズした送信データ(ペイロード)をSigfoxクラウド上で確認する方法を説明します。
事前に、Sigfox Sens'it SDKで簡単IoT組み込み開発(1)Sigfox Sens'it SDKで簡単IoT組み込み開発(2)を読んでおいてください。
あと、ソラコムさんからSens'itを購入されたかたは、Soracom Platform上でペイロードは確認できると思います。スイッチサイエンスさんから購入された方は、別途、Sigfoxクラウドへのアクセス権設定が必要ですがので、sigfox-partner★kccs.co.jp (★->@)まで、購入されたSens'itの背面写真(IDが記載されているところ)を添付の上、タイトル「Sigfoxクラウドアクセス権設定希望」としてメールしてください。

Sigfoxクラウドへのログイン

Sigfoxクラウドへのアカウントの発効後、下記URLからSigfoxクラウドへのログインが可能です。
https://backend.sigfox.com

Sens'it送信データ(ペイロード)の確認

Sigfoxクラウドログイン後、下記ページが表示されます。
image.png
上部メニュー「Device」をクリックすると、登録されたDevice一覧が表示されるので、idのところをクリックしてください。
image.png
その後、左メニューの「MESSAGES」をクリックすると、下記画面のようにメッセージ一覧が表示されます。
image.png
ここで、Data/Decodingの列がペイロードとなります。

PayloadをParseする

先のメッセージ一覧では、16進表記のデータ羅列になっているので、送信した温度・湿度・照度を実際の値として見ることができません。(16進を脳内変換できる人は除く)
そこで、Sigfox Payload configuration (Payload display)機能を使ってみましょう。
1. Sigfoxクラウド上部メニューの「DEVICE TYPE」をクリック
2. デバイスタイプの一覧がでてくるので、該当するデバイスタイプの「Name」のところをクリック
3. 画面右上にあるimage.pngボタンをクリックすると下記画面が表示されます。
screencapture-backend-sigfox-devicetype-5a176d7a9e93a16d01abe786-edit-1517790898494.png
ここで、一番下の「Payload parsing」の選択をCustom grammarとし、下記一文をCustom configurationに入力して、OKボタンを押してください。
temparature::float:32:little-endian humidity::uint:16:little-endian lightch0::uint:16:little-endian lightch1::uint:16:little-endian
上記の通り、デバイスのMESSAGES確認画面に戻ると、下図のように温度・湿度・照度っぽい値が表示されていることが確認できると思います。
image.png

Custom grammar

Sigfoxクラウドにはバイナリデータをパースする機能がついています。ソラコムさんのバイナリパーサーと同じような機能です。
今回、送信したデータをもとに説明します。今回は、温度をfloat(32bits)として、その他の値をunit(16bits)として送信しています。
図1.png
例えば、温度データをパースする場合、上述のとおり
temparature::float:32:little-endian
と記載します。
この記述ルールは
[変数名]:[バイト列のインデックス]:[変数の型]:[型に依存した設定内容]
となります。
温度の場合、
変数名:temparatureに
バイト列のインデックス:温度データは0バイト目にあるので、省略化
変数の型:float
変数に依存した設定内容:floatの32bitで格納されているため「32」
となります。最後に、今回リトルエンディアンとして格納したため、最後にlittle-endianと記載します。省略するとbig-endianになります。

次回は、Sigfox Callback機能を使って、Sens'itのデータをWebサーバにPOSTする方法を記載します。

sigfox
IoT向け無線ネットワーク Sigfoxを日本国内で構築運用
https://www.kccs-iot.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away