技術情報

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

2018.02.05

ここでは、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クラウドログイン後、下記ページが表示されます。

img-20180205-01-technical-01.png

上部メニュー「Device」をクリックすると、登録されたDevice一覧が表示されるので、idのところをクリックしてください。

img-20180205-01-technical-02.png

その後、左メニューの「MESSAGES」をクリックすると、下記画面のようにメッセージ一覧が表示されます。

img-20180205-01-technical-03.png

ここで、Data / Decodingの列がペイロードとなります。

PayloadをParseする

先のメッセージ一覧では、16進表記のデータ羅列になっているので、送信した温度・湿度・照度を実際の値として見ることができません。(16進を脳内変換できる人は除く)
そこで、Sigfox Payload configuration(Payload display)機能を使ってみましょう。

  1. Sigfoxクラウド上部メニューの「DEVICE TYPE」をクリック
  2. デバイスタイプの一覧がでてくるので、該当するデバイスタイプの「Name」のところをクリック
  3. 画面右上にあるEditボタンをクリックすると下記画面が表示されます。
img-20180205-01-technical-04.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確認画面に戻ると、下図のように温度・湿度・照度っぽい値が表示されていることが確認できると思います。

img-20180205-01-technical-05.png

Custom grammar

Sigfoxクラウドにはバイナリデータをパースする機能がついています。ソラコムさんのバイナリパーサーと同じような機能です。
今回、送信したデータをもとに説明します。今回は、温度をfloat(32bits)として、その他の値をunit(16bits)として送信しています。

img-20180205-01-technical-06.png

例えば、温度データをパースする場合、上述のとおり
temparature::float:32:little-endian
と記載します。
この記述ルールは
[変数名]:[バイト列のインデックス]:[変数の型]:[型に依存した設定内容]
となります。
温度の場合、
変数名:temparatureに
バイト列のインデックス:温度データは0バイト目にあるので、省略化
変数の型:float
変数に依存した設定内容:floatの32bitで格納されているため「32」
となります。最後に、今回リトルエンディアンとして格納したため、最後にlittle-endianと記載します。省略するとbig-endianになります。

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

本記事で利用するDevkitはこちら
Sens'itV3
Sens'itV2

著者情報

Products and Marketing Department 日比 学

京セラコミュニケーションシステム株式会社(KCCS)よりSigfox社(フランス)に出向中の元自称Sigfoxエバンジェリスト

  • KCCSから追い出され、フランスの片田舎で余生を過ごしています
Twitter:https://twitter.com/ghibi