Custom user packet implementation in LoRa app server


Currently I am using Semtech packet forwarder application (UDP protocol with port number 1700) and Brocaar LoRa server.
I would like to implement following items.

  1. From LoRa gateway, using packet forwarder application I would like to send some custom user packets to LoRa server. For this I am customizing packet forwarder application.
  2. From external application, I would like to send query commands to LoRa gateway through LoRa app server and get back response.

Whether I can achieve above two requests using existing Brocaar LoRa stack. Is there any reserved area in LoRAWAN protocol, which I can use for sending user packets?

Thanks and Regards,


Is it ok to add user packet with the LoRa gateway status packet? Please confirm.


I don’t think that I (or other users) know what you mean with user packet.

I would like to send log data(Operational/error log), self diagnosis status (Ethernet link status) and other custom packet from LoRa gateway to LoRa application server using existing brocaar stack.
In semtech packet forwarder, other than LoRa node data packet, there is status packet which will be received by LoRa server. Whether I can add additional information in this packet?
Please provide your suggestion.


My plan is as follows.
I will send my application request command to gateway by publishing the request data with /gateway/[mac]/tx or gateway/[mac]/config MQTT topic.
From packet forwarder, I will send the response in gateway statistics packet and my application will receive the data through gateway/[mac]/stats mqtt topic.
Let me know your suggestion.

I think user packet means custom structure message such as stats, rx and so on. Unfortunately, I also meet the same problem.

You would have to make changes to the code for this to add extra types or fields of data.

I will send custom message like :{“gwup”:[{“test”:“ABC123”}]} , or the custom value “ABC123” from gateway, and deal with this data in my application by mqtt.
do I only change the configuration files such as loraserver.toml and lora-gateway-bridge.toml can fix the problem?
if not, would you please tell me which files I have to changes ? or ,let me know your suggestions about this. thank you very much.

You need to update the LoRa Gateway Bridge soure-code and create a new binary. In the source-code you will find how the packet-forwarder JSON from the UDP is mapped to Go structures. These structures are then marshalled to JSON or Protobuf and forwarder over MQTT. You will find the source-code here:

I truly appreciate your timely help.