Sigfox Breakout board (BRKWS01 RC3)は、Wisolモジュールをベースとしたブレークアウトボードであり、開発キット(DevKit)として登録すれば、1年間の無償回線込みでお使いいただくことができます。デバイスの試作や実証実験用にお使いください。
#BRKWS01 RC3の中身を確認
Sigfox Breakout board Kitには、下記部品が同梱されています。
#マイコンボードと接続
Breakout boardのピン配置は、下図の通りです。
基本動作に必要なピンはVCC/GND/TX/RXの4ピンとなっていますので、さまざまなマイコンボードと接続できますが、今回はArduino Unoと接続してみます。ブレッドボードと半田を用意しておいてください。
Breakout boardとArduinoとの接続ピンのマッピングは下表のとおりです。
Breakout board | Arduino |
---|---|
3.3V(+) | 3.3V |
GND(-) | GND |
RX | 11 |
TX | 10 |
#DevKit登録
BRKWS01 RC3は、Sigfox DevKitとしての扱いが可能であるため、https://buy.sigfox.com サイトからDevKitとして1年間無料トークンを取得することができます。
DevKit登録のやり方は、こちらを参考にしてください。
この時、Device IDとPACを入力する必要があります。ESDバッグ(導電袋)に貼られているSIGFOX IDとPACを入力してください。
#Arduino用サンプルスケッチ
下記GitHubにArduino用サンプルプログラムをアップしています。
https://github.com/kccs-iot/brkws01RC3-arduino
サンプルスケッチ(brkws01rc3-at.ino)は、Arduinoのハードウェアシリアルと接続したPC等から、直接Sigfox ATコマンドを入力し、その動作を確認することができます。
-at.ino##.c
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
void setup() {
// Open serial communications and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
// set the data rate for the SoftwareSerial port
mySerial.begin(9600);
Serial.println("Connect to the Sigfox Breakout board...");
Serial.println("AT$I=10 : get Device ID");
Serial.println("AT$I=11 : get PAC");
Serial.println("AT$T? : get Temperature");
Serial.println("AT$V? : get Voltages");
Serial.println("AT$P=unit : set Power mode (unit = 0:software reset 1:sleep 2:deep_sleep)");
Serial.println("AT$TR=unit : set Transmit repeat (unit = 0..2)");
Serial.println("AT$WR : save config");
Serial.println("AT$SF=[payload] : SEND SIGFOX MESSAGE");
Serial.print("Device ID : ");
mySerial.print("AT$I=10\r");
}
void loop() { // run over and over
if (mySerial.available()) {
Serial.write(mySerial.read());
}
if (Serial.available()) {
mySerial.write(Serial.read());
}
}
##Sigfoxメッセージを送信
サンプルスケッチをArduinoに書き込み、シリアルモニタを起動すると、下図のような画面になります。ここで、AT$SF=[payload](今回はAT$SF=0123456789ABCDEF)を送信すると、Sigfoxメッセージが送信されます。
無事受信されると、DEVICEのMESSAGES画面で送信メッセージを確認することができます。
※[LFのみ],[9600bps]となっていることをご確認ください。
また、AT$SF=[payload],1コマンドで下り要求メッセージを送信することも可能です。
#Seongji(旧Wisol)モジュール
本Breakout Boardに搭載されている通信モジュールはSeongji社製SFM10R3となっています。センサデータの送信テストであれば、AT$SFコマンドのみで可能ですが、その他データシート等は下記サイトからユーザ登録後、ダウンロード可能となります。
support.seongji.co.kr(Register要)
今回は、マイコンボードとしてArduinoを使いましたが、是非、その他ボードでも試してください。