Solution to the Technical Problems Associated with Integrating LoRA Technology into the Adaptive Radio and Transmission Power Selection System (ARTPoS) Algorithm Using the Raspberry Pi ()
1. Introduction
According to the International Telecommunication Union [1], the Internet of Things (IoT) is a “global infrastructure for the information society, enabling advanced services by interconnecting objects (physical or virtual) using existing or evolving interoperable information and communication technologies”. The interconnection of IoT devices in a heterogeneous network is an important issue for the development of IoT. IoT devices can communicate with each other using different protocols and dedicated M2M (Machine-to-Machine) communication technologies [2] [3]. Cellular networks, WiFi, Bluetooth, ZigBee, LoRaWAN, MQTT, etc. are common solutions for interconnecting IoT devices [3] [4]. The ease of interconnection, mainly via the Internet, facilitates the development of industrial, medical and entertainment projects [4]. IoT capabilities are increasingly being integrated into new devices, significantly reducing costs and improving functionality [2]. However, the heterogeneity of connected objects poses problems for the interoperability of devices and also for development tools [2]. The various IoT networks refer to a set of interconnected devices that communicate with other devices without human intervention [2].
To interconnect IoT devices from different networks, the use of gateways is a common solution [2] [3]. IoT gateways are elements of a network that enable communication between networks using various protocols [2]. They are capable of connecting to a large number of IoT devices and smart sensors to extend and streamline their functionality in a physical space [2]. IoT gateways can be used to connect IoT devices to the Internet, local area networks or cellular networks [4]. They can also be used to aggregate data from different IoT devices and send it to a server for processing [2]. IoT gateways add an extra layer of security between IoT devices and the Internet, improving the security of IoT devices [2]. IoT gateways are an example of a smart IoT device installed at the edge of the network [2].
We can say that IoT devices are varied in nature and have specific constraints in terms of computing power, storage capacity, communication protocols, networking capacity, autonomy, etc. Indeed, there are a variety of IoT devices with multiple interfaces. There are a variety of IoT devices with multiple interfaces [5]. Long-range technology such as LoRA is not integrated into the ARTPoS algorithm mainly due to technical and objective differences. ARTPoS focuses on specific communication and optimisation protocols that do not necessarily align with the capabilities of LoRA, which is designed for low-energy, long-range IoT applications [6] [7]. In addition, integrating LoRA would require significant adaptations to the structure of the algorithm, which could compromise its performance and ease of use [8] [9]. In this article, we will take a look at the integration of LoRa technology into a Raspberry Pi, particularly in relation to the ARTPoS (Adaptive Radio and Transmission Power Selection system) algorithm for solving range problems, including using LoRa with Raspberry PLC [10], Raspberry Pi Node to Node using LoRa [11], creating a LoRaWAN sensor based on Raspberry Pi [6], P2P connectivity with Raspberry Pi and LoRa-E5 [8]. In this article, we noticed the limitations of the ARTPoS algorithm although it supports several technologies (WiFi, ZigBee, BLE), ARTPoS does not yet cover all emerging technologies such as 5G or LoRaWAN, which limits its applicability in certain specific use cases [11] but it’s easier to integrate all the features of the ARTPoS algorithm and LoRA into the Raspberry microcontroller than to work on the algorithm itself.
It should be noted that connected objects also use algorithms to connect. Among these different algorithms, ARTPoS is of interest to us in our work. This problem will be solved in this article by integrating all the functionality of the said algorithm and even LoRA technology, which will solve the problem.
2. Problems Associated with Device Heterogeneity and Solutions
We list below the problems associated with the heterogeneity of IoT devices on the one hand and the solutions on the other.
2.1. Problems Associated with Device Heterogeneity
In a system where several IoT devices are connected to each other to exchange data with each other and with the remote server, different communication, application and security protocols are used. In this exchange between objects, the connected devices do not necessarily have the same characteristics in terms of communication capacity, memory, energy, etc. This is known as heterogeneity. This is known as IoT device heterogeneity.
Figure 1 illustrates a solution to heterogeneity and the use of the gateway that enables interconnection between IoT sensors and the Internet.
The algorithm, as defined in [12], plays a key role in the gateway. It is thanks to the algorithm that the gateway becomes intelligent in order to resolve problems of heterogeneity and even range.
Figure 1. Architecture of an IoT network using a gateway.
2.2. Solutions to Device Heterogeneity Problems
The solutions for interconnecting connected objects are based on the algorithms implemented in the gateways [13].
2.2.1. The IoT Gateway
An IoT gateway establishes a bridge between IoT devices (sensors) and the cloud to enable data to be exchanged. It systematically connects “the field”, made up mainly of sensors, with the remote server or the cloud. However, the heterogeneous nature of sensors and networks means that gateways have to support different types of interfaces (e.g. Power Line Communication (PLC), Bluetooth, cellular network or WiFi) and network protocols [1]. Depending on the nature of the sensors or networks, the configuration of an IoT gateway and its functions must also change to ensure interconnection.
2.2.2. Algorithms Used in the IoT Gateway
The algorithms used have several functions: optimum management of congestion in the network, optimum management of data and communication security, optimum management of application memory resources, etc. So, IoT gateways perform well if and only if they use appropriate algorithms. We present some of the algorithms implemented in gateways.
1) Network selection algorithm for heterogeneous wireless networks
In [14], an efficient mechanism for network selection over heterogeneous wireless networks is proposed. In this work, the authors put special emphasis on user preferences towards the use of heterogeneous wireless networks in order to improve system performance and support reliable connectivity. User preferences are summarised in three parameters: latency, cost and energy consumption. In this system, the user is at the centre of the gateway’s decision-making processes.
2) SIA (Service-to-Interface Assignment) algorithm
In [15], Abdellatif et al. presented a mechanism called SIA (Service-to-Interface Assignment). As its name suggests, this is a mechanism for assigning one or more services to a given interface. In this work, they considered an IoT device with multiple interfaces [16] to highlight the problem of efficiently allocating resources in a network. Since an IoT device is called upon to provide a wide variety of services with different requirements, the mechanism proposed by Vangelis Angelakis et al. uses two different algorithms to solve the interface assignment problem in an optimal way. The first algorithm takes into account the most demanding services, and then immediately allocates interfaces to them. The second algorithm first calculates the shares of existing resources and then allocates them to services by random selection.
3) ARTPoS algorithm (Adaptive Radio and Transmission Power Selection system)
In [17], Mu et al. proposed an adaptive radio and transmission power selection algorithm that makes several wireless technologies available. This system supports several wireless protocols, such as WiFi, Zigbee and Bluetooth. The mechanism consists of selecting the appropriate network for the traffic and network conditions while minimising energy consumption. It is known as ARTPoS (Adaptive Radio and Transmission Power Selection system). In its architecture, ARTPoS incorporates a selection module that chooses the most optimal radio interface. This choice is made on the basis of bit rate and residual network capacity. ARTPoS also includes a second module whose role is to monitor the radio interfaces selected by the first module. In this module, energy consumption is calculated for the selected interfaces. The results of these calculations are analysed by the first module to make a final decision. At the end of their work, the authors obtained an algorithm enabling a considerable reduction in energy consumption, while maintaining the desired link reliability.
4) Real-time low-power M2M control algorithm
In [18], Elghoul et al. developed a control mechanism for real-time, low-energy M2M communication. In a monitoring application, for example, sensors transmit sensed data to an IoT gateway. This transmission must take place in real time. To maintain this exchange for a long time, the IoT nodes and gateways must, above all, have sufficient autonomy.
In Table 1, the algorithm of Di Mu, Yunpeng Ge, M. Sha, S. Paul, N. Ravichandra & S. Chowdhury is our concern considering our objective, which is to extend its functionalities. Initially, this algorithm includes only three wireless protocols: WiFi, Zigbee and Bluetooth.
Table 1. Comparison between some algorithms used in the IoT gateway.
Author(s) |
User
preferences |
HandOver |
Low power consumption |
High memory resource |
Multiple
wireless
technologies |
Long range |
Alaa Awad Abdellatif, Carla-Fabiana Chiasserini & Amr Mohamed |
Yes |
Yes |
No |
Yes |
Yes |
No |
Liu, Sun L. & Ifeachor. E |
Yes |
Yes |
No |
Yes |
Yes |
No |
V. Angelakis, I. Avgouleas, N. Pappas, E. Fitzgerald & D. Yuan |
No |
Yes |
No |
Yes |
Yes |
No |
Di Mu, Yunpeng Ge, M. Sha, S. Paul, N. Ravichandra & S. Chowdhury |
Yes |
Yes |
Yes |
No |
Yes |
No |
3. Presentation of the Problem
Several solutions were proposed, such as algorithms, architectures, protocols, etc. Each of these solutions aimed to ensure better connectivity between heterogeneous IoT devices. Each of these solutions aimed to ensure better connectivity between heterogeneous IoT devices. However, connectivity between heterogeneous devices is not the only factor to consider in an IoT system. Certainly, connectivity between devices from heterogeneous sources ensures better communication between connected objects. But it does not necessarily take into account the geographical aspect of these objects. Connected objects are not limited in space. As a result, communication between them must be possible regardless of the distance separating them. So, there is a real problem of communication between IoT devices that are far enough apart. The algorithm plays a central and transversal role in the connected object ecosystem. In our case, we will focus on the ARTPoS algorithm. This ARTPoS algorithm is widely used in connected objects, but has scope problems that are technically difficult to resolve. We are therefore going to propose a solution using the microcontroller on the Raspberry to solve this problem.
4. Methodology
Our approach is based on the following points:
The ARTPoS algorithm: This is not natively capable of interconnecting objects other than those using Bluetooth, WiFi and Zigbee technologies. In addition, this algorithm is also unable to solve the long-range problem;
The implementation of long-range technology in Figure 2;
The actual diagram of our solution, which consists of integrating the LoRa protocol, making it communicate with the WiFi, Zigbee and Bluetooth protocols and then enabling management of a longer range, as shown in Figure 2;
The description of the pseudocode written using Python will intelligently and appropriately manage these technologies.
Figure 2. Proposed network diagram.
Here, we are proposing an architecture that already integrates LoRA.
5. Proposed Solutions and Descriptions
5.1. Proposed Solutions
Our proposed solution described above is represented by the diagram in Figure 3.
Figure 3. Interconnection of different networks via an IoT gateway.
In Figure 3, we have an IoT gateway with multiple interfaces at the centre of the system. This gateway enables the interconnection of four different networks such as the cellular network, WiFi, Bluetooth and the LoRa network. It also facilitates the interconnection of several heterogeneous IoT devices. What’s more, these devices are more or less distant from each other. On the LoRa network, we have a sensor that not only collects and sends data over a long distance, but also has long-lasting autonomy. This figure highlights the following elements:
5.2. Description
We will be interconnecting four different networks: Zigbee, LoRa, WiFi and Bluetooth. To do this, we will use an IoT gateway, in particular the Raspberry Pi. Interconnecting these four networks involves connecting each of them to the gateway.
In order to ensure communication between the LoRa network and the IoT gateway, we rely on the solution presented in section 1.2 (connection between the LoRa gateway and the application server). A LoRa gateway whose role is to send all the data collected to an application server. The application server is responsible for processing, analyzing and displaying the data. In the same way, the application server is connected to an IoT gateway, as shown in Figure 4.
This architecture makes it possible to connect the LoRa network to the IoT gateway. The gateway now acts as a bridge between the LoRa network and the application server. When data is received by the gateway, it will redirect it to the application server for analysis. At the same time, the gateway can decide to perform an action (start the fan, start the air conditioner, start the heating or send a notification to a user in our previous example). The complete architecture of this system is shown in Figure 5.
Figure 4. LoRa network diagram with a Raspberry Pi as server.
Figure 5. Diagram of communication between networks of different types.
At the same time, the gateway is responsible for interconnecting the different networks with heterogeneous devices at their ends and deciding what action to take when data is received. To perform all these tasks efficiently, the gateway must be equipped with an algorithm. When a task requires significantly more resources, it calls on the application server for intelligent processing and then receives the response. The GitHub link below contains the code written in Python that can be run in the gateway for these four points (https://github.com/saidou-supptic/haman):
Creation of the WiFi access point;
Creating and configuring the Bluetooth access point;
Connecting the Lora server module to the Raspberry Pi;
Configuring and connecting the LoRa client module to the server.
5.3. Comparison between LoRA and the Three Other Existing
Protocols of the ARTPoS Protocol (Table 2)
In addition to this, LoRa offers the following advantages:
Easier and less costly to install as there is no cable to run;
Mobility: Wireless sensors can be easily moved from one location to another as required. This provides greater flexibility for applications where conditions change frequently;
Table 2. Comparative study on the performance of different ARTPoS protocols.
Titles |
LoRA |
ZegBee |
WiFi |
Bluetooth |
Frequency band |
868 MHz or 915 MHz (for better signal penetration in buildings and over long
distances) |
2.4 GHz |
2.4 GHz or 5 GHz |
2.4 GHz |
Max distance From Transmission |
20 km |
300 m |
100 m |
10 m |
Bandwidths |
300 bps to 5.5 kbps |
250 kbps |
10 Mbps to 1 Gbps |
1 Mbps |
Network topology |
Star or Mixed |
Mesh |
Infrastructure or P2P |
P2P |
Energy consumption |
Low (sensors have batteries with a life of 10 to 15 years, depending on use) |
Low |
High (constantly powered
equipment and permanent link) |
High |
Latency |
Dependent on sensor class |
30 ms to 1 s |
20 ms to 50 ms |
10 s |
Interference immunity |
High |
Low |
Very low |
Very low |
Cost |
Low (with a transceiver and sensors your private wireless network is established) |
High (equipment
purchase, installation
and interconnection) |
Low |
Medium |
Extensible |
Yes |
Yes |
Yes |
No |
Energy profile |
Year |
Year |
Day |
Day |
Scalability: Wireless sensors can be easily added to or removed from a system, without having to modify the existing wiring structure. Up to 1,000 sensors can be connected to a single LoRaWAN gateway with a BacNet BMS (200 with a MoBus BMS);
Low power consumption and long range: Through fifteen or so walls, the distance between the sensors and the gateway can be up to 2 km, so a single gateway can cover one or more buildings. Unlike a WiFi or Bluetooth device, a LoRaWAN sensor consumes very little energy to communicate and offers autonomy of over 10 years, without changing batteries (autonomy varies according to conditions of use);
Less maintenance: Wireless sensors require less maintenance than wired sensors, as there is no wiring to deteriorate or break. This reduces maintenance costs and ensures more reliable sensor operation. What’s more, there’s no need to keep the sensor wiring plan up to date;
It uses a free frequency band, which imposes a 1% duty cycle (if you have a 1 s frame, you communicate for 1 s and wait for 99 s before your next transmission), thus reducing sensor power consumption.
6. Conclusions
In our work, we have highlighted the problems associated with connected objects due to their heterogeneity and then described the solutions already provided to facilitate their interconnection.
The interconnection of IoT devices from different networks is an important issue for the development of the IoT. IoT devices can communicate with each other using different protocols and dedicated M2M (Machine-to-Machine) communication technologies. Cellular networks, WiFi, Bluetooth, ZigBee, LoRaWAN, MQTT, etc. are common solutions for interconnecting IoT devices. The use of IoT gateways is also a common solution for interconnecting IoT devices from different networks. IoT gateways are elements of a network that enable communication between networks using various protocols. They are able to connect to a large number of IoT devices and smart sensors to extend and streamline their functionality in a physical space. IoT gateways add an extra layer of security between IoT devices and the Internet, improving the security of IoT devices.
In conclusion, despite the difficulties associated with inserting the long-range protocol into the ARTPoS algorithm, we were able to use the Raspberry microcontroller to integrate not only the entire algorithm, but also the LoRA.