The version 2.0.2 of the packet forwarder has been released - the links in the documentation and issues with the compilation process have also been fixed. The release is available here.
We also appreciate the general feedback on the documentation - we’re going to look into how we can make it more welcoming for new users. In the meanwhile, we recommend using our builds and instructions manuals. If you want to build it yourself and aren’t used to Go environments, one document that could be a useful reference would be our CI build file, that describes step by step how we build the packet forwarder for the release builds.
Regarding the difference between @kersing’s packet forwarder and ours: It is not planned to make Kersing’s packet forwarder our official TTN packet forwarder. We often use it internally ourselves, but we don’t think C development gives us enough swiftness in the longer term. We’re thinking in particular about new gateways (such as the Kerlink iBTS, that is provided a brand new Hardware Abstraction Layer) - the design of the Go packet forwarder makes it easier to adapt to different chips and HALs.
Regarding GPS support, we received a lot of feedback that there were issues with it. We’re going to look into the issues - we’re also planning to add gpsd support.
Regarding the reset pin, the --reset-pin allows to specify a physical BCM pin number, for which the reset procedure is applied. You can also add it to your configuration file, by adding reset-pin: <reset pin number>. We’ll add this to the documentation.
Multi-server support is not planned. Although downlinks are handled by a JIT queue in the TTN Packet Forwarder, the logic behind downlinks scheduling is handled by the network server. Being connected to multiple servers could create conflicts in downlink scheduling at the gateway level (for exemple, if server A schedules a downlink on gateway G at the same time as server B), thus leading to packet loss. However, the design of the network connection is modular enough so that someone interested could fork the TTN Packet Forwarder and implement it - but we’re not planning to add this feature, and do not recommend it due to the reason above.
Hi Sylvain !! by the way , thank you so much, your good old UDP pkt_forwarder brought us where we are today. but as you said , it is time to replace it. Cheers.
I tried the latest release on my IMST gateway, which is based on a RPi B+. The packet forwarder crashed with Illegal instruction.
After compiling the application from source on a real RPi it worked.
I guess this is because the RPi 1 CPU is only ARMv6l and not ARMv7, and the binary release was compiled with GOARM=7.
Just in case anyone has the same problem…
I would like to try the new TTN packet forward on the test gateways at my campus, but I have found no documentation on the TCP ports required. Because the firewall rules are very strict, I need to declare each outbound port to be allowed.
So far I have noticed that port 1900 is used on discovery.thethings.network.
And after that I see a connection to the IP 52.169.76.255 on port 1901. I suppose that is the router or bridge…
Are ports 1900 and 1901 sufficient, or do I need to allow other connections?
I’m unable to install the new packet forwarder on my NanoPi Neo running Armbian. I’ve downloaded and unpacked the installer, but when I try to execute install.systemd.sh of packet-forwarder, it gives me the ‘no such file or directory’ error. Incompatibility with my specific OS version? I’m running Linux nanopineo 3.4.113-sun8i #28 SMP PREEMPT.
On a newer build (4.11.3-sun8i) I get the error ‘No binary specified’ when trying to run the install script, packet-forwarder gives me ‘command not found’.
You’ll need access to ports 1900 (discovery server) and 1901 (router). You’ll also need access to port 443 (for the account server), but I can imagine this to be already allowed
Can we just make this one package that is always the latest and greatest?
I’m currently having trouble getting your packet forwarder to work (I tried both of them). The gateway ID and Key are properly configured but on TTN the gateway still shows offline, even after an hour.
OMG I just wrote this long reply with detailed instructions and then I went to attach a picture and it deleted my whole post and just put the picture in it.
CTRL-Z does nothing but CTRL-F makes the search function in my browser not work and instead searches the whole forum when I’m only trying to search a page. This forum is the worst…
Hi - I can’t believe I am the first person to come across this, but I don’t see any reference to the following problem. I have a nanopi neo running xenial and have successfully installed go 1.9.
go get -u github.com/TheThingsNetwork/packet_forwarder
package github.com/TheThingsNetwork/ttn/api/gateway: cannot find package "github.com/TheThingsNetwork/ttn/api/gateway" in any of:
/usr/local/go/src/github.com/TheThingsNetwork/ttn/api/gateway (from $GOROOT)
/home/nicbkw/go/src/github.com/TheThingsNetwork/ttn/api/gateway (from $GOPATH)
package github.com/TheThingsNetwork/ttn/api/discovery: cannot find package "github.com/TheThingsNetwork/ttn/api/discovery" in any of:
/usr/local/go/src/github.com/TheThingsNetwork/ttn/api/discovery (from $GOROOT)
/home/nicbkw/go/src/github.com/TheThingsNetwork/ttn/api/discovery (from $GOPATH)
package github.com/TheThingsNetwork/ttn/api/fields: cannot find package "github.com/TheThingsNetwork/ttn/api/fields" in any of:
/usr/local/go/src/github.com/TheThingsNetwork/ttn/api/fields (from $GOROOT)
/home/nicbkw/go/src/github.com/TheThingsNetwork/ttn/api/fields (from $GOPATH)
package github.com/TheThingsNetwork/ttn/api/protocol: cannot find package "github.com/TheThingsNetwork/ttn/api/protocol" in any of:
/usr/local/go/src/github.com/TheThingsNetwork/ttn/api/protocol (from $GOROOT)
/home/nicbkw/go/src/github.com/TheThingsNetwork/ttn/api/protocol (from $GOPATH)
package github.com/TheThingsNetwork/ttn/api/protocol/lorawan: cannot find package "github.com/TheThingsNetwork/ttn/api/protocol/lorawan" in any of:
/usr/local/go/src/github.com/TheThingsNetwork/ttn/api/protocol/lorawan (from $GOROOT)
/home/nicbkw/go/src/github.com/TheThingsNetwork/ttn/api/protocol/lorawan (from $GOPATH)
package github.com/TheThingsNetwork/ttn/api/router: cannot find package "github.com/TheThingsNetwork/ttn/api/router" in any of:
/usr/local/go/src/github.com/TheThingsNetwork/ttn/api/router (from $GOROOT)
/home/nicbkw/go/src/github.com/TheThingsNetwork/ttn/api/router (from $GOPATH)