FLoRa – Framework for LoRa
FLoRa (Framework for LoRa) is a simulation framework developed by Mariusz Slabicki, Gopika Premsankar for carrying out end-to-end simulations for LoRa networks. It is based on the OMNeT++ network simulator and uses components from the INET framework as well[1].
Features of FLpRa[3]
- FLoRa allows the creation of LoRa networks with modules for LoRa nodes, gateway(s) and a network server.
- Application logic can be deployed as independent modules that are connected with the network server.
- The network server and nodes support dynamic management of configuration parameters through Adaptive Data Rate (ADR).
- Accurate model of LoRa physical layer (including collisions and capture effect)
- Simulations with one (or more) gateways in the network
- End-to-end simulations, including accurate modeling of the backhaul network
- The energy consumption statistics are collected in every node.
The article[4] provides the overviews and the design of FLoRa and some of its key features.
The following diagram from[4] describes the Modules available in FLoRa and the corresponding protocol stack.
The Modules available in FLoRa and the corresponding protocol stack[4].
The following pseudo-code of the algorithm from [4] explains the ADR component implemented at the nodes.
The ADR Component at Node[4]
The following pseudo-code of the algoritym from [4] explains the ADR component implemented at the network server.
The ADR Component at Server[4]
Using Suitable FLoRa Version
FLoRA was initially released in 2017 and has received several updates since then. We may check the old versions and their compatibility with the different OMNeT++ version and INET versions at [3].
In this article, we will use the FLoRa version 1.1.0 that was released on June 9, 2022. This version has the updated code for OMNeT++ 6 and INET 4.4. So we have to install OMNeT++ 6 and INET 4.4 to use this version of FLoRa.
Installing OMNeT++ 6
You may refer the following article for the installation of OMNet++ 6.0
Installing OMNeT++ 6 on a 64-bit Debian 10 Under Chroot-Jail
Installing INET 4.4
At the end of the same article you will see the automatic way in which INET 4.4 is getting installed.
Installing OMNeT++ 6 on a 64-bit Debian 10 Under Chroot-Jail
Installing FLoRa 1.1.0
It will start installing the FLoRA model. You will see the progress in the console window at the middle bottom.
At the end of the successful install/build, you will see the “successful build” message at the middle-bottom console window.
Doing FLoRa Simulation
Testing FLoRa with an Example Scenario
The following screen shot shows the progress of the compile operation of a sample FLoRa Network Scenario.
The following Animation output shows the 100 sensor node/IOT node network scenario.
Implementing our own, new ADR Algorithm
The following section shows the way to implement our own ADR model inside the FLoRa Framework.
References
- https://OMNeTpp.org/download-items/FLoRA.html
- https://github.com/florasim/flora
- https://flora.aalto.fi/
- Mariusz Slabicki, Gopika Premsankar, and Mario Di Francesco, “Adaptive Configuration of LoRa Networks for Dense IoT Deployments”, In: The 16th IEEE/IFIP Network Operations and Management Symposium (NOMS 2018). April 2018.
- https://www.projectguideline.com/installing-omnet-6-on-a-64-bit-debian-10-under-chroot-jail/