I’m trying to build a LoRaWAN Infrastructure using the Azure IoT Hub. For that I have set up an Azure IoT Edge on a virtual machine.
I want to connect gateways to that IoT Edge. How can I achieve this?
The infrastructure would look like something like this:
I don’t want to run the IoT Edge Gateway on the gateways directly, as I would need to install docker on a gateway which is performance wise not ideal. Is this even the way it’s intended to be used?
2
Answers
If I understood your question correctly, the LoRaWAN gateway needs to communicate with the IoT hub.
Now if you are referring to sending of telemetry data only as in LoRa node -> LoRa gateway -> Azure IoT hub, then there are options available to send it out directly from the gateway itself using IoT hub bindings. Have a look here for some examples.
Send telemetry data to Azure IoT hub
Here you need to write some code in the gateway that will accept data from LoRa node and relay it to the IoT hub.
However, if we aren’t able to make much changes in the LoRaWAN gateway, the easiest solution is to send all data to a locally hosted webserver using Wi-Fi or something else and then in the webserver, we can have bindings to the IoT hub.
I have used the first option multiple times when using my LoRaWAN gateway as it had that flexibility to support message passthrough to Azure IoT hub based on some business logic.
Note: It was just a configuration change.
This might be useful to you: https://github.com/Azure/iotedge-lorawan-starterkit. It is a demo that uses IoT Edge with Lorawan though it might use specific hardware. You might be able to adapt it to your needs though.