Open Source LoRaWAN Multiplexer and Protocol Converter
The Problem With Private LoRaWAN Infrastructure
A vast number of LoRaWAN deployments rely on small, private network servers. Once these are in place, migrating devices away from them is both risky and complex -- devices need to be re-provisioned, downtime is hard to avoid, and the operational cost is high enough that migrations rarely happen at all.
The multiplexer isn't a replacement for roaming. It's a different approach: let a single gateway serve multiple network servers simultaneously. Clients who want to maintain their own private LNS can benefit from a local operator's coverage alongside their own stations without giving up control of their infrastructure. Participation in large community networks like TTN or Helium becomes possible without impacting private deployments.
The multiplexer is open source and available on GitHub: https://github.com/1rabbit/lorawan-multiplexer-converter

What It Does
The multiplexer sits between your gateways and your network servers, accepting any combination of input protocols and forwarding to any combination of outputs -- simultaneously. Gateways connect using whatever protocol they support; each output receives traffic in whatever protocol it requires.
Protocol support:
Every major LoRaWAN protocol is covered on both input and output:
- Semtech UDP (GWMP) -- the legacy packet forwarder used by most older gateways
- Basic Station (LNS WebSocket) -- the current standard for newer hardware
- ChirpStack MQTT -- direct broker integration without an intermediate gateway
Any input protocol can be converted to any output. A UDP gateway can feed a Basic Station server. A Basic Station gateway can publish to an MQTT broker. Multiple gateways using different protocols can converge on a single network server.
Simultaneous multi-server routing:
A single gateway connection fans out to multiple network servers at once. Private LNS, community networks, and monitoring tools all receive traffic from the same gateway without any reconfiguration on the gateway side.
Traffic filtering:
Packet routing is controlled by allow and deny lists based on:
- Gateway EUI -- restrict which gateways can send to specific outputs
- Device address (DevAddr) -- route traffic from specific devices to specific servers
- JoinEUI prefix -- control which join requests reach which network servers
Deny rules take precedence over allow rules, giving explicit control over what reaches each destination. This matters in multi-tenant deployments where different customers' devices need to route to different network servers.
Traffic interception for analysis:
A passive monitoring output receives a copy of everything the multiplexer sees, without injecting any commands back into the network. This feeds directly into the LoRaWAN Traffic Analyzer -- a companion tool that visualizes gateway and device health, diagnoses frequency band congestion, and provides a live packet feed. The analyzer is already open source and available on GitHub.
Environment variable substitution:
Configuration files support environment variable substitution, making it straightforward to deploy across development, staging, and production with different credentials and endpoints without maintaining separate config files.
Prometheus metrics:
An integrated metrics endpoint exposes packet counts, protocol conversion rates, and connection state in Prometheus format. Plug this into your existing Grafana dashboards or alerting infrastructure without additional instrumentation.
Technical Stack
- Language: Rust -- chosen for predictable low-latency packet handling
- Deployment: Docker containerized with source compilation
- Monitoring: Prometheus-compatible metrics endpoint
- License: MIT
Forked from chirpstack-packet-multiplexer and substantially rewritten and extended with additional protocol support, filtering capabilities, and protocol conversion.
Use Cases
Shared gateway infrastructure:
A local operator deploys gateways that simultaneously serve their own network and multiple clients' private LNS. Each client retains full control of their own network server and devices. Participating in TTN or Helium community networks alongside private infrastructure requires no separate gateway hardware.
Legacy gateway integration:
Hardware running the original Semtech UDP packet forwarder still works. Rather than replacing gateways to support a modern Basic Station server, the multiplexer converts the protocol in place. The gateway doesn't need to be reconfigured or updated.
Multi-tenant routing:
Different customers' devices route to different network servers based on DevAddr prefixes. A single shared gateway infrastructure serves multiple isolated LNS instances without each customer needing their own gateway hardware.
Redundancy:
Fan out every gateway to a primary and backup network server. If the primary goes down, the backup has been receiving traffic all along and is immediately current.
What I Provide
Services:
- Multiplexer deployment and configuration for your gateway infrastructure
- Protocol conversion setup for mixed gateway fleets
- Multi-server routing configuration for redundancy or multi-tenant deployments
- Filter rule design based on your network topology and traffic requirements
- Integration with Prometheus and Grafana for ongoing monitoring
You own everything:
- Self-hosted open-source software (MIT licensed)
- Complete configuration and deployment documentation
- No vendor lock-in, recurring fees, or external dependencies
The multiplexer is open source and available on GitHub. I help with deployment, protocol conversion configuration for your specific gateway mix, and designing routing rules that match your network topology.
Ready to Get Started?
Get expert guidance on implementing LoRaWAN solutions for your organization.
Let's Talk