STM32マイコン開発ボードを使ったSigfox評価環境を試してみた（１／２）

STマイクロエレクトロニクスの汎用32bitマイコン開発ボード[STM32 Nucleo](https://www.st.com/content/st_com/ja/products/ecosystems/stm32-open-development-environment/stm32-nucleo.html)を使ってSigfox評価ボード環境を試してみます。RFトランシーバIC搭載の拡張ボードが用意されているのでこれを利用します。
 Sigfoxへのデバイス登録設定から、ダウンリンク（下りデータ送信）およびアップリンク（上りデータ送信）までやってみたいと思います。Sigfoxネットワークを利用するためにはボードごとに発行されるID/PAC（登録ボードのID番号／認証コード）が必要なので、まずはこれを入手します。
 ~~お試しキットなので、ハードウェア以外（ソフトウェア、登録/通信費）は全て無料で使えるようです。~~（→2023年2月更新: ）2022年8月以降、Sigfox社側での評価開発キット（DevKit）向け回線無償サービスは終了していますので、実際の通信テストの際には回線契約が必要です。

# 1．ハードウェアの準備
## ボード・セットアップ
【用意するもの】
[・ NUCLEO-L073RZ](https://www.st.com/en/evaluation-tools/nucleo-l073rz.html) [（or NUCLEO-F401REなど）](https://www.st.com/en/evaluation-tools/nucleo-f401re.html)
[~~・ X-NUCLEO-S2868A1~~](https://www.st.com/en/ecosystems/x-nucleo-s2868a1.html) [（X-NUCLEO-S2868A2）](https://www.st.com/en/ecosystems/x-nucleo-s2868a2.html)
　Sub-1GHz 868MHzトランシーバIC [”S2-LP”](https://www.st.com/content/st_com/en/products/wireless-transceivers-mcus-and-modules/sub-1ghz-rf/s2-lp.html#design-scroll)搭載のNucleo用拡張ボード
・パソコン（Windows 10）
・USBケーブル（USB-mini）
まずは２つのボードを用意し、Arduinoコネクタどうしで接続。STM32 Nucleoボードについては上記のボード以外でも登録可能です。現時点でSTM32L0 / L1 / F0 / F4マイコンのNucleoボード用ファイルが用意されています。ボード以外にはパソコンとUSBケーブルを用意します。

![101_boardPicture.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/499e1016-8839-aefe-6935-841942042a8f.png)






# 2．ソフトウェアの準備
## Sigfox DKのインストール（GUIツール）
次に、登録のため（**ID/PAC**を取得するため）に必要となるツールをダウンロード。
ボードに書き込むソフトウェア・ファイルもこの中に含まれています。

ダウンロードはこちらから： [STSW-S2LP-SFX-DK](https://www.st.com/content/st_com/en/products/embedded-software/evaluation-tool-software/stsw-s2lp-sfx-dk.html)


ダウンロードしたファイルを解凍後、exeファイルを実行するとインストールが始まります。一緒にPORTドライバもインストールされるのでそのまま進めます。

![201_stcomPage.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/d2a26541-be87-eaf3-8846-e2f2a862af48.png)



## ソフトウェア・ファイルをSTM32 Nucleoに書き込む
NUCLEOボードをパソコンにUSBケーブルで接続すると、「NODE_XXXX」といったUSBメモリデバイスのような形式で認識されます。（初めての場合、最初にドライバのインストールが始まります）
**Sigfox DK**インストール時に作成されたフォルダ下のBinariesフォルダ内（通常、Cドライブの”Program Files(x86)”フォルダ以下）に各種STM32 Nucleo用のbinaryファイルが入っているので、これを先ほどの「NODE_XXXX」へドラッグ＆ドロップ。
これだけでSTM32 マイコンへのプログラム・ファイル書き込みは完了です。
例：NUCLEO-L073RZの場合は、
「**C:\Program Files (x86)\STMicroelectronics\S2-LP_SigFox_DK_x.x.x\Binaries\SigFox_CLI_Demo_Project** 」
内にある”SIGFOX_CLI_xxxx_NUCLEO_L0.bin”を”NODE_L073RZ”にドラッグ&ドロップで完了。

![202_FWcopy.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/58e8658d-0016-c1c0-5f99-65bfdcb5cbb6.png)






# 3．SigfoxデバイスのID/PAC入手
ソフトウェアの準備が完了したところで、次にST経由でSigfoxのID/PAC情報を取得します。
## Sigfox DKの起動
まずはパソコンにボードを接続した状態で、Windowsの「スタート」から「**S2-LP_SigFox_DK x.x.x**」を起動。（STMicroelectronicsフォルダに入っているはずです）
デスクトップ上の同名アイコンをクリックでもOK。

![301_FWrun.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/fe40e11d-e4d9-4ddb-a580-d7954f890ba8.png)



起動したら、使用するボードのCOMポートを選択して「Open」をクリック。「**（ST_DK）**」と表示のあるポートを選択すればOKです。
通常は、PCにボードを1台接続している場合、COMポートは1台しか見えないので選択肢は1つになります。

![302_open.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/8404089c-71dd-8645-a0d7-f47403600106.png)




## ボードのレジストレーション（登録）
ST製ボード用のSigfoxの**ID**および**PAC**（認証コード）は、出荷時にはボードに書き込まれておらず、ST経由で発行されます。

PACが未登録のボードを接続すると（初めて使う場合）、以下のようなレジストレーション用の別ダイアログが開くので、そのまま「Next」をクリック。(Step1)

![303_newRegistration_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/ddffe6d5-84fd-134b-0b59-f123f11de839.png)




続いて以下の必要な情報を入力し、「**Generate mail**」をクリック。(Step2)
注意点として、ここではまだNextをクリックせずにダイアログをそのままにしておきます。
【入力項目】
- 名前
- 会社名
- Ｅメールアドレス
- [RCZ](https://build.sigfox.com/sigfox-radio-configurations-rc)番号（Radio Configuration Zone）
　日本の場合RCZ = 3なので、3を選択。

![304_newRegistration_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/184a6756-3b10-b6c0-ff07-1c020288114e.png)



「Generate mail」をクリックすると、以下のような登録申請用メール・コンテンツが自動生成されます。**Copy**クリックにより全体をコピーし、任意のメーラーで新規メールを作成してそこにペーストします。コピー先で宛先、タイトル（Subject）、本文（Body）をそれぞれ分離し、送信します。

![305_newRegistration_2_mail.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/20e9074a-13f0-f75d-8ca4-a19bc2c01805.png)





送信すると'**sigfox@st.com**'からメールが届くので、本文内にあるアクティベーション･コードをコピー。

![306_newRegistration_2_mailReceived.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/56284341-06a3-82a0-e521-874572658b14.png)





コピーしたアクティベーション・コードをStep2でそのままにしておいたダイアログの空欄に貼り付け、Nextをクリック。

![307_newRegistration_2_strings.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/8c984e13-39fc-8928-53cc-7c1c096c86c5.png)





これでIDとPACを入手できたので、この番号を控えておきます。その下にある「Provide your DevKit's xxxx･･･」の情報は無視してください。こちらはトライアル用無償回線サービス用の情報で、現在は利用できません。
Finishをクリックして完了です。

![308_newRegistration_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360475/3c54aa08-f857-42b9-3e35-e081e50554fd.png)




長くなりましたので続きはこちらの記事でご覧ください。
[（STM32マイコン開発ボードを使ったSigfox評価環境を試してみた（２／２））](https://qiita.com/Yuji_Kawano/private/b2ab9e1afccc26421cc2)