Add JSON payload type

Hi RAK,

Device: RAK7258, firmware version LoRaGateway_1.1.0053_Release_r188.

In the page LoRa Gateway --> LoRa Gateway MQTT Bridge --> LoRa Network Server Type, it only allows me to set V2_JSON or protobuf payload type.

Would you be able to add the support of JSON payload type, please refer to Brocaar document.

Cheers,
Paul

I edited the proto field to “json” in the /etc/congif/loragwbr file. Hoping it will give me the JSON payload type I want, but it does not work.

Hi:
If you want the payload be JSON, you should select “loraserver 2.x” in LoRa Network server field. Json-v2 is just a code we use internally, in fact it is the standard JSON proto.

Hi Yutao,

Thanks for your reply.

There were 3 payload types that the Brocaar LoRa Gateway Bridge support:

  1. V2 JSON: good for legacy systems and deprecated since LoRa Gateway Bridge 3.0
  2. JSON: new JSON, supported since LoRa Gateway Bridge 2.7
  3. Protocol Buffers: supported since LoRa Gateway Bridge 2.7

RakWireless firmware version r188 supports #1 (Build-in, loraserver 2.x) and #3 (loraserver 3.x). I hope that Rak can support #2 JSON.

Cheers,
Paul

Hi. Please describe what you want to achieve. The Gateway bridge of loraserver.io is used to catch the Semtech UDP protocol and translate it to MQTT(in general). If you want to use the Gateway Bridge in RAK Gateway you do not need loraserver.io gateway bridge. The main difference in LoRaServer is migration to Go lang and using the Google Protobuf, this also changes the topic templates.

Regards,
Todor

Hi Todor and Yutao,

Thanks for your time.

The company I work for operates customized proprietary LoRa applications, not the standard TTN LoRaWAN application. So, I need to customize components like LoRa Gateway Bridge to integrate RAK gateway to the existing backend system.

My existing backend system operates on Brocaar LoRa Gateway Bridge 2.7.1, uses V2_JSON and old MQTT Topic templates. LoRa Gateway Bridge 3.x brings some new features I would love to use, for example, customized meta-data, fake RX time.

In my situation, I would like to see the RAK gateway could:

  • run Brocaar LoRa Gateway Bridge 3.x, which you already have
  • allow me to use the JSON payload type (V2_JSON no longer supported in 3.x, Protobuf is not debugging friendly)
  • allows me to edit LoRa Gateway Bridge config file to add customized metadata
  • new MQTT topic templates, which you already supported

Cheers,
Paul

Hi:
RAK7258 do not support the V3 json payload( loraserver 3.x ). Maybe later versions will support it.