LoRa Server, open-source LoRaWAN network-server

Sponsored by CableLabs ®


The LoRa Server project provides open-source components for building LoRaWAN networks. Together they form a ready-to-use solution, including an user-friendly web-interface and gRPC and REST APIs. Components can also be swapped out for customization or when integrating LoRa Server into existing infrastructures. All components are licensed under the MIT license and can be used for commercial purposes.

Get started



Feature highlights

Class-A support

End-devices of Class A allow for bi-directional communications whereby each end-deviceā€˜s uplink transmission is followed by two short downlink receive windows. The transmission slot scheduled by the end-device is based on its own communication needs with a small variation based on a random time basis (ALOHA-type of protocol).

Class-B support

End-devices of Class B allow for more receive slots. In addition to the Class A random receive windows, Class B devices open extra receive windows at scheduled times. In order for the End-device to open it receive window at the scheduled time it receives a time synchronized Beacon from the gateway.

Class-C support

End-devices of Class C have nearly continuously open receive windows, only closed when transmitting. Class C end-device will use more power to operate than Class A or Class B but they offer the lowest latency for server to end-device communication.

Adaptive data-rate

When the end-device has ADR enabled, LoRa Server will ensure that the device will operate using the most ideal data-rate and tx-power. this will not only save energy at the device-side, but will also optimize the usage of the radio spectrum, lowering the risk of collisions.

Live frame-logging

LoRa (App) Server provides live frame-logging per gateway and device. It will display all the RX / TX meta-data, together with the raw LoRaWAN PHYPayload in a readable format. It is like Wireshark for LoRaWAN!

Channel (re)configuration

Whether you want to use a sub-set of the LoRaWAN defined channels (e.g. for the US band) or want to configure additional channels (e.g. for the EU band), LoRa Server will make sure the device stays always in sync with the network configured channels (using the CFList field and / or mac-commands).

Multi-tenant

LoRa App Server supports hosting multiple organizations to which (administrator) users can be assigned. By using PBKDF2 password hashing, LoRa App Server facilitates the integration with MQTT broker authentication and authorization so that organizations will only be able to see their own device payloads.

APIs and integration

All components provide gRPC and / or REST APIs to enable the integration with external services. By default all application data is published over MQTT channels. Per application HTTP endpoints can be setup for application data and events.

And there is much more...

Please refer to the LoRa Server project documentation to learn more about all the features and configuration options!


Support

Reporting bugs

Please report a bug by creating an issue at the related GitHub repository. GitHub links can be found at the documentation page of each component.

Community support

For questions and community support, please refer to forum.loraserver.io.

Commercial support

For commercial support contact Orne Brocaar, the author of the LoRa Server project.


Sponsors