2016-12-03 12 views
0

私はLoRaハチがあるSODAQ Mbiliボードを持っています。私はGPSセンサーも持っています。あなたは私が蜂とセンサーをどのように追加するかを見つけることができました。そのボード上LoRaでJSONデータを送信できますか?

私は、GPS座標でJSON文字列を作り、私はLORAネットワーク上でそのデータをお送りします。しかし、どうすればそれをすることができますか?ソースコードで

私は、彼らが次のコードを使用し、ダウンロードしました:

LoRaModemMicrochip modem(&MODEM_SERIAL, &debugSerial); 
Device libTest(&modem, &debugSerial); 

void readGPSData() { 
    GPSSensor gpsSens(4.3, 51.222, 15.5, 0); 
    dumpSendResult(gpsSens); 
} 

void dumpSendResult(Sensor& sns) { 
    bool sendResult = libTest.send(sns, true); 
} 

を私は次のコードのようにこのコードを変更しますので、私は

LoRaModemMicrochip modem(&MODEM_SERIAL, &debugSerial); 
Device libTest(&modem, &debugSerial); 

void readGPSData() { 
    String json = "My JSON code"; 
    dumpJsonResult(json); 
} 

void dumpJsonResult(String& text) { 
    bool sendResult = libTest.send(text, true); 
} 

私のJSONデータを送ることができる。しかし、それは与えますこのエラー:

In function void dumpJsonResult(String&) :

Error: no matching function for call to Device::send(String&, bool)

bool sendResult = libTest.send(text, true); 
             ^

JSONデータをLoRaWANに送信する方法を知っていますか?

+1

json over lorawanを送信することは、巨大なデータオーバーヘッドのために非常に悪い習慣です。本当に必要なバイトだけを送信することで、できるだけデータを圧縮することを検討する必要があります。それ以外の場合は、あなたのデューティサイクル時間を殺すでしょう! – cambierr

答えて

2

NWSessionKeyとAPPSessionKeyなどが正しく設定されている場合は、機動性のフリーパートナーゾーンに搭載されたデバイスに搭載することができます。 https://partners.thingpark.com/

あなたがそれを行うならば、あなたはする必要があります:

  • するなどのために署名したint型の上にGPSをコーディングするよう、独自のペイロードメカニズム
  • を作成ダウンリンクを実行する方法を学びます緯度、経度、およびAlt。
  • は、その後、あなたのデバイスの中でそれをデコード

また、あなたがActilityのソリューションに差し込みますApplicativeのサーバーにACKを送ることができあなたのデバイス(REST-POST/JSON)

してみましょう私たちは、それが ベスト行く方法を知っていますについて、

-1

使用するライブラリは何ですか?私はソーダサイトでLoRaModemMicrochipオブジェクト定義が見つかりませんでした。

あなたはhttp://support.sodaq.com/sodaq-one/lorabee/を見ましたか?

LoRaが動作するバンドはデューティサイクルの制約が強いのに対し、これは非常に冗長で大量のエアータイムを使用するため、LoRaでJSONを使用しないことを強くお勧めします。

関連する問題