Setting Up A Chirpstack Server
07 August, 21Category: electronics
I recently got involved with LoRaWAN networks as a side project for university. During my short time looking at the technology it has become clear that there is a lot more to it than I first thought.
My initial starting point, as most hobbyists, is the simple idea of a remote sensor that can send data over a long range (LoRa) radio link of up to 10 miles. The node usually comes as a self contained device with a simple serial interface that can be controlled using a microcontroller. The data is then sent to a receiver and voilà, you have your data. That isn’t even close to how a LoRaWAN actually works. The simple radio connection between the node and the gateway is just the tip of the iceberg.
A very quick overview is as follows:
- A Node sends a data packet via a radio link to a gateway.
- The gateway forwards the packet, along with other metadata to a LoRaWAN server via the MQTT protocol.
- The LoRa server filters duplicate packets and forwards these to the LoRaWAN application server.
- The Application Server provides a web interface to allow users to configure the system and setup methods of data storage and forwarding.
- A database such as InfluxDB can be used to store the decoded data packet.
- A data visualization service, such as Grafana, can be used to view graphs, charts etc.
This is just one of countless ways to configure a LoRaWAN network and most of the system is server based. My task for the project was to setup a full system from node to server to see if self hosting a service was a possibility for the university department. Luckily, all of the software is open source and freely available. My system comprises of the following:
The Raspberry pi gateway with a RAKWireless RAK2243 concentrator with:
A headless PC running openSUSE Leap 15.3:
It is early days but I’m thinking that all of this could run on a single raspberry pi which would be perfect for a student project. Considering this is supposed to be for electronic engineering, most of the work is in setting up all the services.