CheetahLab CheetahLab
DE EN

Software

What runs on the gateway — where it comes from, and under which licence.

Nothing self-written runs on the gateway where it really counts: the radio work is done by software that has been around for years. What was added on top is under Modifications.

Operating system

Raspbian Buster (Debian 10). By now without security updates — a point that is on the list. The gateway is not exposed to the internet, but "it runs" is not a state you leave standing forever.

Alongside it log2ram: the log files live in RAM instead of on the SD card. A card that a service writes to around the clock is otherwise a wear part with an expiry date — and one that ends without warning.

The packet forwarder

The program that reads out the concentrator card and sends the packets to the network server. In use is mp_pkt_fwd from Jac Kersing's collection — the build that can serve several servers at once.

The switch happened in August 2026, for two reasons. The first is a hard limit: the previous forwarder (poly_pkt_fwd) serves four network servers at most — and the gateway delivers to more, see The gateway. I noticed at the fifth: four were configured, and the next one could not be added.

The second reason: this build makes TX_ACK visible. So you can see whether a reply to a device was actually transmitted, instead of hoping so.

The previous forwarder is still on the device, unused, as a way back.

Raspbian Buster · log2ram distribution lora_gateway — driver for the concentrator BSD mp_pkt_fwd — packet forwarder BSD my own monitoring MQTT, LWT, sensors not published install script (ttn-zh / ch2i) GPL-3.0 Two licence worlds on one device. Running it triggers neither — obligations begin when you pass it on.
The GPL part is the install script. The radio work is BSD, and my own program runs beside it.

Origin and licences

The foundation is the Zurich TTN community's build for iC880A gateways, plus the install routine for the ch2i board. The actual radio work is done by Semtech's reference code.

Project Role Licence
ttn-zh/ic880a-gateway build and install script GPL-3.0
ch2i/ic880a-gateway fork for the ch2i board GPL-3.0
Lora-net/lora_gateway Semtech's driver for the concentrator BSD (3 clause)
kersing/packet_forwarder mp_pkt_fwd, the forwarder in use BSD (3 clause)
The Things Network Zurich the community behind it —

Two licence worlds on one device. The install script is under the GPL, the Semtech part under a BSD licence. That is no contradiction but the normal case: the GPL governs what somebody passes on, and then demands disclosure — running it triggers nothing at all.

One note for anyone building this: ch2i is the fork, ttn-zh the original. The fork was last touched in March 2018, the original in 2025. If you want a template, take the original — the ch2i version only when the adapter board is in play.