The central node is a single board computer and receives all measurements and processes it.
I use a Siemens IoT2040 as central node but a Raspberry Pi will work equally well.
As the Raspberry Pi is probably more widely available and affordable I’ll be using a Raspberry Pi 3 model B+
This central node will be running Mosquitto and Node-Red for the processing of the measurements.
There are plenty of tutorials on how to setup a Raspberry Pi so for clearity sake I do not go into that topic here. I assume that Raspbian is already setup and running on the Raspberry.
Mosquitto MQTT broker
An MQTT broker serves as a communication hub between IoT devices such as the TerraControl node.
The nodes sent their measurements to the broker using the MQTT protocol and the broker redirect the messages to the node or other program that wants to receive that data.
HiveMQ offers a nice explanation on what MQTT is with their mqtt essentials video series
Installing Mosquitto onto the raspberry is very easy. I followed this tutorial by randomnerdtutorials.com.
Don’t forget to setup the auto run on startup:
sudo systemctl enable mosquitto.service
Node-Red is a program that makes it very easy to connect different hardware devices together. It doesn’t require a lot of programming skills.
Another benefit is that Node-Red usually comes pre-installed on the Raspberry Pi although it is good practice to try to upgrade it to make sure it is up to date. For updating please follow these instructions.
Make sure Node-Red automatically starts when the Raspberry Pi is powered on:
sudo systemctl enable nodered.service
Find the IP address for the Raspberry Pi and browse to http://xxx.xxx.xxx.xxx:1880 (replace xxx.xxx.xxx.xxx by the Raspberry Pi IP address) to open Node-Red.