The Things Networkにゲートウェイを登録
コンパイルだけで結構ながくなったので、その続編
【LoRaWAN】Raspberry Pi LoRa/GPS HATを動かしてみようっと。。【Things Network】
ここから、まずは、The Things Networkにサインアップしておかないといけないです
https://www.thethingsnetwork.org/
ここからサインアップしておいてください。
そして、コンソールに。。アクセスして、ゲートウェイを登録していきます。
https://console.thethingsnetwork.org
このGatewaysをクリックして、Get started by registering one! をクリックします。
□I’m using the legacy packet forwarder
にチェックを入れて
ゲートウェイID に、Raspberry PiのMacアドレスを入れます。下記の通り。。
ゲートウェイIDにはその下にある I’m using the legacy packet forwarder にチェックをして
Rapsberry Piの Mac アドレスを入力します。
Mac アドレスは コンソール(LXTerminal)で
$ ifconfig -a
で確認できます。
なお登録時はMACアドレスの3バイト目と4バイト目の間にffffを挟んでください。
11:22:33:44:55:66に対して11:22:33:ff:ff:55:66のようになります。
これ11:22:33:44:55:66に対して11:22:33:ff:ff:44:55:66 が正解です(笑)
そのほかも、ここの通り 入れましょう(笑)
またglobal_conf.jsonのgateway_confセクションに記載した内容とあっているかも確認してください。
ってことは修正必要ですね(笑)
なんかうまく繋がっているのかどうかわからないので。。
こんどは、こっちを試してみます(笑)
https://www.rs-online.com/designspark/getting-start-the-lora-iot-starter-kit-with-the-things-network-part2-jp
ん。。 not connected のままですが。。よくわからないので。。(MACアドレスとFFの位置が合えば、Connectedになりました)
センサーの方に進んでいくことにします(笑)
ちなみに、こちらのPDFもマニュアルらしいのですが。。
https://www.thethingsnetwork.jp/forum/t/topic/287
Applicationを作らないといけないっていうのと、アクティベーションしないといけないなど。。どうすればいいの??(笑)
って感じ。。ルータも、Jpを選ぶのか。。Asia…を選ぶのか?? Applicationを登録するにはルータがAsiaしか出てこないしねぇ~。。。
ん。。
https://www.rs-online.com/designspark/getting-start-the-lora-iot-starter-kit-with-the-things-network-part3-jp
とりあえず、↑のデバイス登録までを済ませてみた。(適当に)
いろんなKey類ができたので、たぶん、あとで使うんでしょうね。。
LoRa Mini Dev-JP
さて。。こやつの設定をしていきましょう。
まずはHWから。。たまたま、上記のものと同じDHT-11を持っていたので、同じように接続。
- DTH11: VCC → LoRa Mini: 3V3
- DHT11: DATA → LoRa Mini: A0
- DHT11: GND → LoRa Mini: GND
プログラミングに入ります(笑)
https://github.com/openwave-co-jp/arduino-lmic-master-for-LG01-JP
ここから、CloneのところでZipダウンロードします。
Arduino IDEを立ち上げて、ライブラリをインクルードします。
入ったかどうか確認は、ライブラリにMCCI LoRaWan LMIC Library があるかどうか? Zipを一回開いて、exampleの中と、Arduino IDEからサンプルを見てみるのがいいかと思います。
USBでLoRa MiniとPCを接続します。
僕の場合は、COM3で認識されました。認識されない場合は、こちらのFAQを。。
サンプルプログラムは、
を使ってみます。
ダウンロードしてZip回答して、読み込めばOK
ボードは、Arduino/Genuino Uno で、COM3(僕の場合) で いけました。
ここから。。先ほどのApplication の内容と、以下を合わせる。
// デバイスアドレス static const u4_t DEVADDR = 0x00000000; // ネットワークセッションキー static const PROGMEM u1_t NWKSKEY[16] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; // アプリケーションセッションキー static const u1_t PROGMEM APPSKEY[16] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
Device Addressは、そのままコピー その他は、<>を押してから、コピーすると、同じ形式になります。
で。。。ソースに書いてある通り、必要なライブラリーを入れておきましょう(笑)
- Required Library:
-
- https://github.com/matthijskooijman/arduino-lmic ←これはさっき入れた
-
- https://github.com/adafruit/DHT-sensor-library ←これは Adafruit DHT
-
- https://github.com/adafruit/Adafruit_Sensor ←これは Adafruit Unified Sensor
コンパイルして、書き込みします。
リセットして、シリアルモニターを見ると、動いているようです。
Raspberry Pi(ゲートウェイ側)を見てみると
$ sudo ./dual_chan_pkt_fwd
先ほどまでと違って、なんかデータが送られていそうな雰囲気(笑)
<実はここで、GatewayがConnectedにならないので。。いろいろいじりました>
Gateway IDの付け方が間違っていたようです。MACアドレスの真ん中に FFFFを入れるのが正解のようでした。
で。。つながると。。コンソールで、Trafficを見ると
https://console.thethingsnetwork.org/gateways/Gateway ID/traffic
こんな感じで送られているのが分かります。
Applicationから、DeviceのDataを見てみると
なんらかのデータが送られているのは、わかります(笑)
Payload Formatに以下のデコーダを入れると、
function Decoder(bytes, port) {
// Decode an uplink message from a buffer
// (array) of bytes to an object of fields.
var decoded = {
"Humidity": bytes[0],
"Temperature": bytes[1]
};
return decoded;
}
データがデコードされて。。
湿度と温度が出ていることが、一応わかるってことになっています(笑)
一応、ここまでで、LoRaWANのGPS/HATと、LoRa miniで、湿度温度を測ってThings Networkにアップするってところまでは、できたことになります(笑)
うぅ、、、これで何作ろうかな?
Allthingstalkを使った可視化
こちらの設定でうまくできました。
https://www.rs-online.com/designspark/visualization-ttn-data-using-allthingstalk-jp
ちなみに、チャートなどを描くには、Data storageの設定が必要でした。
JSONとかしらないとダメだな(笑)
しばらく。。温湿度を計測しているのを動かしておこう。。
【Link集】ラズパイ用LoRaWAN Dragino LoRa GPS HATと LoRa Mini Dev-JP が来た【通信】
【LoRaWAN】Raspberry Pi LoRa/GPS HATを動かしてみようっと。。【Things Network】
【LoRaWAN】Raspberry Pi LoRa/GPS HATを動かしてみようっと2。。ゲートウェイ登録とLoRa Mini Dev-JP【Things Network】
コメントを残していただけるとありがたいです