Semtech UDP Packet Forwarder

Semtech UDP Packet Forwarder

The Semtech UDP Packet Forwarder is the original LoRaWAN packet forwarder, connecting to servers through the Semtech UDP protocol. Many gateways include a pre-compiled version of the Semtech UDP Packet Forwarder, often adapted to the specific gateway.

The Semtech UDP Packet Forwarder has many security and scalability drawbacks, so if possible, use LoRa Basics™ Station to connect your gateway to The Things Stack.

Configuration

When the packet forwarder starts, it looks in the current directory for a global_conf.json, a local_conf.json and a debug_conf.json. The Gateway EUI, Network Server Address, Frequency Plan, Ports, and other parameters are configurable in these files.

If debug_conf.json exists, the other files are ignored - otherwise, the parameters in local_conf.json override those in global_conf.json.

An example global_conf.json is available in the Semtech UDP Packet Forwarder Github repository. It is also possible to download a global_conf.json configured with your Gateway EUI and Frequency Plan directly from The Things Stack.

Download Configuration in the Console New in 3.10

Note: A bug in The Things Stack 3.10.0 prevents downloading global_conf.json in the Console. Please follow the instructions for the CLI. This is fixed in 3.10.1.

To download a global_conf.json file for your gateway, open the Gateway overview page in the console. Click the Download global_conf.json button to download the file.

Download global_conf.json

Download Configuration via Terminal

To download a global_conf.json file using the terminal, you will need a Gateway API key with the View gateway information right enabled. To create an API key, see instructions for in the Adding Gateways guide.

Open the command prompt in Windows or any Linux terminal to run a curl command (as shown below) to generate the required global_conf.json file in your current working directory.

Make sure you replace thethings.example.com with your server address, {GATEWAY_ID} with your Gateway ID, and {GATEWAY_API_KEY} with the API key you generated:

$ curl -XGET \
    "https://thethings.example.com/api/v3/gcs/gateways/{GATEWAY_ID}/semtechudp/global_conf.json" \
    -H "Authorization: Bearer {GATEWAY_API_KEY}" > global_conf.json