LoRaWAN Roaming on Helium
The Helium Network is the world's largest LoRaWAN Network - and continues to grow at a staggering pace. Because of this, it becomes a very attractive network to other public and private LoRaWAN Network Server providers (LNSes) who want to extend their coverage without deploying their own infrastructure and capital.
And thanks to the Helium blockchain, direct roaming integrations are very simple. Most importantly, major LNSes are roaming with the Helium Network, which means the public coverage the community is building is now being used by LoRa devices onboarded to other networks, and Hotspot operators get compensated in $HNT for routing these packets.
For more information about the roaming services offering go here.
Helium Roaming Architecture
Helium Network roaming most closely resembles the LoRa Alliance's idea of "Passive Roaming". The
Helium community operates a dedicated Roaming Server (the "Helium Roaming Server") that is distinct
from our core LNS for native Helium Devices. The Helium Roaming Server purchases all packets for a
target LoRaWAN NetID
and forwards them to an endpoint ready to accept them on behalf of a Roaming
Partner's LNS. Specifically the Helium Roaming Server connects any Helium gateway that captures
target NetID
packets via the Semtech GWMP UDP client.
Actual Roaming Integration
To ingest packets as a roaming partner, you need to accept Semtech GWMP client connections for the amount of Helium Hotspots that are receiving and routing your packets. Currently, this could be a lot - assuming you are considering the entire global network. If we consider the United States only, for example, it's about 95,000 total potential gateways. In practice, only a small percentage of Helium gateways will be routing packets for a roaming partner NetID simultaneously.
When the roaming PoC is initiated, Helium provide one or more IPs from where the connections will originate. You will need to supply the IP and port for the host listening for Semtech GWMP connections over UDP. Once provided, packets will start arriving at the specified host.
Supported Device Functionality
Helium Roaming supports the following actions for devices:
- Joining: a new device provisioned to a roaming partner's LNS can join via the Helium Network.
For new devices,
join_requests
andjoin_accepts
are routed via Helium Hotspots. - Uplinking: Once a device has joined, all device payloads are routed via Helium.
- Downlinking: All standard device downlinking is supported.
Extended Reading
- LoRaWAN on Helium - The Helium Network's approach to LoRaWAN
- Helium LoRaWAN: Public Infrastructure with Private Network Servers
- Helium Network Data Credits - The mechanism for purchasing packets from the Helium Network
- Packet Purchasing - How packet purchasing is actually implemented