[LoRaWAN] LRA1モジュールをKiwi社製GateWay TLG2901経由でThe Things Networkに接続する

#1.概要
株式会社アイ・ツー製LoRaモジュール[LRA1](https://www.i2-ele.co.jp/LoRa.html)をkiwi製GateWay TLG2901経由でThe Things Networkに接続する為のそれぞれの設定方法をまとめてみました。
LRA1にはたくさんのコマンドが用意されています。ここでは接続までの最低限の説明にとどめていますので各コマンドの詳細はメーカーのドキュメントを参照ください。
#2.環境
LoRaサーバー:The Things Network https://www.thethingsnetwork.org/
GateWay:TLG2901B-j01s https://www.kiwi-tec.com/ja/products-and-services/lora-gateway/tlg2901b/
LoRa Module:LRA1 https://www.i2-ele.co.jp/LoRa.html
なおTLG7921L-NJ-ECもCH数の違いだけで同様の設定で接続できます。

#3.kiwi GateWay設定
接続したGateWayのipアドレスを確認してログインします。
初期値はUsername,Password共にadminです。
![kiwi1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/6739cc70-d403-419b-35bd-ed2bb6570c9f.png)
ログインして左側のGateway Menu-Setup-LoRaWAN Pkt Forwarderを押すと以下の画面になりますので
Gateway IDを控えてください。またServer Address:router.as1.thethings.network
に設定してください。
![kiwi2a.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/55d9e908-0de7-b920-9cf3-98480173e85b.png)
つぎにGateway Menu-Setup-Channel Setupを押すと以下の画面になりますので各項目をすべて図と同じように設定してください。
この設定の周波数をGateWayは受信しますので設定が違うと端末側からのデータが受信できないことがありますのでご注意ください。
またTLG7921Lのような複数CHの設定がある場合はすべてのCHを同じ設定にするか、複数CHですべての周波数を網羅するように設定してください。
![kiwi3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/f3859aa4-542c-d461-8640-f28c95c250f5.png)

#4.The Things Networkアカウント作成
The Things Networkにアカウントを作成します。
![アカウント作成1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/c2bcb06d-ef8d-5284-5836-4760265c7a62.png)

#5.GateWay登録
emailで認証が終わるとアカウトが作成されますのでCONSOLEをクリック。
![アカウント作成2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/3e5fd745-10bb-6aa9-ad34-55a9d2821992.png)

それぞれの項目に必要な情報を入力します。
<font color="Red">Gateway IDと出ますが、I'm using the legacy packet forwarderにチェックを入れると名前がGateway EUIに変わります。</font>
Gateway EUI kiwi Gateway設定で控えたGateway IDを入力する。
Description 好きな名前
Frequency Plan Asia 920-923MHzを選択
Router ttn-router-jpを選択
Location GWの位置を設定
Antenna Placement アンテナの置き場所選択 

![登録1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/f46a0066-ae49-1b21-02fd-52c4c6c639b7.png)
必要な情報をいれるとこんな感じになります。
![登録2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/60c53560-9383-c7b1-55f2-be3ac76f70d3.png)


#6.Device登録(準備)
LRA1を立ち上げます。
コンソールから
wan_mode=1を入力・・・・・LoRaWANは1にする。(0はprivate(P2P)モード)
ssaveして保存。これで再起動時もLoRaWANモードになります。
管理モードに入る
pass=999999
"#?"でstatusの確認をします。
登録に必要な情報は下記の
DevEui/AppEui/AppKeyの3項目です。
それ以外のコマンドや設定の詳細は[こちら](https://www.i2-ele.co.jp/LoRa.html)にあるLoRa-WANリファレンスマニュアルを参照してください。

```txt:LRA1設定
wan_mode=1
OK
>ssave
OK
>pass=999999
OK
>#?
Sn=100066
DevId=$"70b3d559e01d291c"
Wan_mode=1[Wan]
Class=0[A]
JoinMode=1[OTAA]
TxPwr=0[13dBm]
Dr=2
FPort=1
Cnf=0
Adr=0
Trial=1
DevEui=$"70b3d559e01d291c"     -------------------→ (a)
AppEui=$"0000000000000000"     -------------------→ (b)
AppKey=$"00000000000000000000000000000000"     ---→ (c)
DevAddr=$00000000
NetID=$000000
AppSkey=$"00000000000000000000000000000000"
NwkSkey=$"00000000000000000000000000000000"
Ctrl=$00000000
Echo=1[On]
Xtal32k=1:[ext]
Auto=""
OK
>
```

#7.Device登録
次にThe Things Networkにdeviceの登録を行います。
もう一度The Things Networkにログインして、APPLICATIONSを選択します。
![登録2a.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/72748178-48cd-6331-f13a-8801ea8448a9.png)
まだ登録されていないので以下のようになりますので、add applicationを押して登録をし、addapplicationを押します。
![登録2b.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/381fee67-fa22-feb3-ac20-ae6ae712e100.png)
Application IDとDescriptionに適当な名前を設定、Handler registrationはttn-handler-asia-seを選択してAdd aplicationを押します。
<font color="Red">※ttn-handler-asia-seを選択するとHTTP integrationが表示されませんので、データを他のサーバーにフォワードする場合はasia以外にしないといけないようです。</font>
![登録2c.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/ea2b29d1-806a-c738-ad66-ef4d3e785455.png)
以下のような画面になります。deviceはまだ登録されていないので0 resistered devicesになっています。
![登録2d.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/45b16e48-438e-8c2d-d177-ffa84a2121a8.png)
DEVICESのところの右上のresister deviceを押します。
Device ID:LRA1の(a)の""の中を入力
Device EUI:LRA1の(b)の""の中を入力
App Key:なにもしない
App EUI:LRA1の(c)に入力。コマンドはwan_appeui=$"xxxxxxxxxxxxxxxx"  (xxxに値を入力)
最後にRegisterを押します。

![登録2e.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/19a95c4d-8063-2d6a-5481-568f729be189.png)
App Keyの項目の右側を押してcopyする。
![登録2f.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/9dfa91db-fc6a-f12c-749c-271dd4378a20.png)
LRA1の(c)のAppKeyにcopyしたAppKeyを登録します。
頭のwan_を忘れないように。

```txt:LRA1設定
>wan_AppKey=$"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
OK
>
```

登録が終わったLRA1の設定を確認します。
これでTTNサーバーにdeviceの登録が終わりました。

```txt:LRA1設定
#?
Sn=100066
DevId=$"70b3d559e01d291c"
Wan_mode=1[Wan]
Class=0[A]
JoinMode=1[OTAA]
TxPwr=0[13dBm]
Dr=2
FPort=1
Cnf=0
Adr=0
Trial=1
DevEui=$"70b3d559e01d291c"
AppEui=$"70b3d57ed004105a"
AppKey=$"4a548d6b2940f01e456cdfe9f3c20d64"
DevAddr=$00000000
NetID=$000000
AppSkey=$"00000000000000000000000000000000"
NwkSkey=$"00000000000000000000000000000000"
Ctrl=$00000000
Echo=1[On]
Xtal32k=1:[ext]
Auto=""
OK
>
```
#8.送達確認
Dataの画面を開いておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/d8f193f1-d4ca-7809-9cf3-493aa4841a49.png)
LRA1で以下のコマンドを入力するとThe Things Netwaork側に届いている事が確認できます。
もしwan_joinコマンドを打ってjoin_acceptedと出ずにtimeoutした場合は、設定を今一度確認してください。
wan_join:アクティベーションコマンド。一度接続すればWan_unjoinまたは再起動するまで有効です。
txd="xxxx":データセット
wan_tx:データ送信

```txt:LRA1設定
i2-ele LRA1
Ver 1.01.g+
OK
>wan_join        ----------->activation
join_accepted
OK
>txd="123456"    ----------->送信データセット
OK
>wan_tx          ----------->送信
OK
>
```
The Things Network側画面
![登録2h.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/593299/7dd9c8e8-aa44-9b09-3895-bb25d98f1575.png)