Why is local_conf.json needed?


Why do I need all the information in local_conf.json when most of those values are set (again) when the gateway is registered on TTN.org? Put differently, what happens if the values in local_conf.json diverge from those configured on TTN.org?

LoRasPI : Raspberry PI simple Shield Gateway/Node
(Jac Kersing) #2

The poly forwarder uses the values in the local_conf.json. It knows nothing about the values set in the TTN console and has no logic to access them.


Thanks, I know that. I’m interested in learning about the consequences of that fact.

What about the other way round? Why can’t the TTN backend access and process those values rather than asking me to define them in the console?

Can I conclude then that this is not a problem?

Which values in local_conf.json are actually required for a TTN gateway? Would it be enough to just set gateway_ID and a single entry for servers (e.g. router.eu.thethings.network)?
Would it be correct to say that all other values (lat/long, altitude, email, etc.) may be used if you were to connect the gateway to a non-TTN backend?

(Jac Kersing) #4

The TTN backend does not have access to the settings on the gateway. The protocol used on most gateways at the moment to exchange information from the gateway to the backend is generic and does not support those TTN specifics.

Both I and TTN have been working on new software that does read the settings from the console and uses them to configure the gateway. The TTN software is currently being tested, my software has been released. (installer for MultiTech and resin.io image for Raspberry Pi)


Minimal settings are gateway_id and server. Everything else is not required for TTN, other back-ends may have different requirements (most other providers use their own packet forwarder so configuration might be totally different)

(THAPA suman) #5

i used the Packet forwarder available in the link below.

there i found only the global_conf but not the local_conf. i don’t whether or not local_conf is important. I think the local contain only the gateway_eui and This eui can be found in global_conf.

so my qustion is that why is that local_conf needed? does the Gateway work if we don’t put the local_conf? please explain in simpler words.


what do you mean by poly forwarder and what does it do?

thankyou in advance.


The “poly forwarder” is the legacy packet forwarder from https://github.com/TheThingsNetwork/packet_forwarder/tree/legacy/poly_pkt_fwd.

(Jac Kersing) #7

The intention is that you download the global_conf.json from TTN and do not not change it. Any configuration parameters you need to set should go into local_conf.json (that includes the gateway eui)
However, modifying global_conf.json will work as well.

If your hardware works with the packet forwarder you mention you can ignore poly forwarder as it will not work with your hardware.

(Tony Smith) #8

@kersing. Sounds like a great idea. Is this part of the new Semtech “Basic Station” version of the packet forwarder combined with the TTN V3 Server or is this something quite separate?

@redarmee For a deep dive on the contents on local_conf and global_conf have a look at this tutorial. https://www.youtube.com/watch?v=WaWca5QfFp0

(Jac Kersing) #9

To all:

This is a 2 year old discussion. Technology changed since then with for instance the release of Basic Station by Semtech and the upcoming implementation (no I don’t know the timeline) of TTN V3. To avoid further confusion I’m going to close this thread.

@TonySmith: My crystal ball did not show Basic Station software two years ago. Not related.

(Jac Kersing) #10