ST製Sigステークカジノ

ST製ステークカジノ リベートトランシーバー評価ボードを使ってみる

2019.02.14

FP-ステークカジノ レベル上げR-SIGFOX1は、ステークカジノ リベートM32Cubeファンクションパックとして、環境センサ・モーションセンサから取得したデータをステークカジノ リベートネットワークを利用し送信することができる、S2-LP Transceiverベースの評価ボード用ソフトウェアパッケージです。
このファンクションパックを使えば、ステークカジノ リベートトランシーバ(S2-LP)ボードをマイコンボード(STM32 Nucleo)から制御できるようになります。

ハードウェアの準備

下記ハードウェアを準備します。

  • マイコンボード:ステークカジノ リベートM32 Nucleo-64 boards(NUCLEO-L053R8、NUCLEO-L476RG)
  • センサボード:X-NUCLEO-IKS01A2
  • ステークカジノ リベートトランシーバS2-LPボード:X-NUCLEO-S2868A1
  • USBケーブル(USB A - USB Mini B)
img-20190214-partnerblog-01.png
各種ボードの準備が整っていれば、マイコンボードとトランシーバボード、センサボードを下写真のように連結します。

img-20190214-partnerblog-02.png

ソフトウェアの準備

マイコンボード(ステークカジノ リベートM32 Nucleo-64)を動かすためにステークカジノ リベートSW-LINK004をダウンロード&インストールします。

その後、FP-ATR-ステークカジノ リベート1からZIPファイルをダウンロード解凍します。
解凍すると下図のようなフォルダが生成されます。

img-20190214-partnerblog-03.png

この中にサンプルコードやバイナリが入っています。
その他、TeraTerm等のターミナルソフトと、ステークカジノ リベートクラウドへのアクセス権があることを確認してください。

サンプルを動かしてみる

ステークカジノ リベートクラウドへのデバイス登録(ID / PAC)

ステークカジノ リベートクラウドへのデバイス登録は、こちらを参考に、ステークカジノ リベート Buyなどの手段で事前に登録しておいてください)

ステークカジノ リベートM32 NucleoをPCと接続する

ステークカジノ リベートM32 NucleoとPCをUSBケーブルを接続するとステークカジノ リベートMicroelectronics ステークカジノ リベートLink Virtual COM Portとして認識されます。

img-20190214-partnerblog-04.png

同時に新たなドライブが認識されます。今回は、NODE_L053R8という名前でドライブDが出来上がりました。

バイナリファイルを書き込む

このドライブにサンプルのバイナリファイルをコピーするだけで、マイコンボードに書き込みが完了します。
今回は、先ほどZIP解凍したフォルダにある下記バイナリファイルをコピーします。
Projects\STM32L053R8-Nucleo\Applications\ステークカジノ リベート\AssetTracker\Binary\NUCLEO_L0_ARIB.bin

img-20190214-partnerblog-05.png

動作確認

ターミナルソフトのシリアルポートのレートを115200bpsと設定したうえで、ステークカジノ リベートM32 Nucleoが接続されているCOMポートを開けます。
さきほど書き込んだバイナリは動きを検知すると温度・湿度・気圧をステークカジノ リベートネットワークで送信するプログラムになっているようですので、ボードを動かしてみると、下記のようにMems eventが起こり、ステークカジノ リベート Messageを送信していることが見れます。

 ステークカジノ リベートms event
Sending: 01a500cf277a (Hum=421 Temp=207 Pres=10106)
 ステークカジノ リベートms event
Sending: 01a700cf277a (Hum=423 Temp=207 Pres=10106)
 ステークカジノ リベートms event
Sending: 01aa00d1277a (Hum=426 Temp=209 Pres=10106)

メッセージの送信トリガは、動き検知(加速度センサ)に加え、ボタン(青ボタン)プッシュ、タイマー(3分)のトリガが実装されています。
送信されたメッセージは、ステークカジノ リベートクラウドでも確認できました。

img-20190214-partnerblog-06.png

最後にソースコードをチラ見

最後に、センサデータを取得し、ステークカジノ リベートメッセージを送信するソースコードを見てみます。
Projects\STM32L053R8-Nucleo\Applications\ステークカジノ リベート\AssetTracker\Src\main.cです。

main.c
#if SEND_SENSORS     int16_t humidity, temperature, pressure;

    sensors_read(&humidity,&temperature,&pressure);

    customer_data[0] = ( humidity  8 ) & 0xFF;
    customer_data[1] = humidity & 0xFF;
    customer_data[2] = ( temperature  8 ) & 0xFF;
    customer_data[3] = temperature & 0xFF;
    customer_data[4] = ( pressure  8 ) & 0xFF;
    customer_data[5] = pressure & 0xFF;

    printf("Sending: ");
    for(uint8_t i=0;i<6;i++)
      printf("%02x",customer_data[i]);
    printf(" (Hum=%d Temp=%d Pres=%d)\r\n", humidity, temperature, pressure);

    /* Call the send_frame function */
    ステークカジノ リベート_API_send_frame(customer_data,6,customer_resp,2,0);

ここでステークカジノ リベート_API_send_frameでデータ送信していますが、この内部は"Middlewares"フォルダ配下に絡んでいそうですが、特にカスタムすることもないと思いますので、このライブラリ関数をそのまま使用すればよさそうです。
次回は、もう少しセンサの特性を活かした制御プログラムを作ってみたいと思っています。

著者情報

ステークカジノ リベートマイクロエレクトロニクス株式会社

システム・ソリューション技術部
河野 裕二

ステークカジノ リベート