XL SIMPÓSIO BRASILEIRO DE TELECOMUNICAÇÕES E PROCESSAMENTO DE SINAIS - SBrT 2022, 25–28 DE SETEMBRO DE 2022, STA. RITA DO SAPUCAÍ, MG An IoT Middleware Template Proposal Gustavo S. Cardoso, Luiz C. B. C. Ferreira, Fernando Bauer N., Eduardo R. Lima, Luís G. P. Meloni and Paulo Cardieri Abstract— There are several different IoT middleware plat- forms available for IoT systems. However, most of these platforms require high computational hardware to be implemented, making their use in low-cost and computationally restricted devices difficult. This motivated us to develop an IoT architecture and template suitable for computationally restrained hardware to be a tool that can facilitate the development of new IoT middlewares. We tested the proposed architecture in two application scenarios, using hardware with low computational power. The results, in terms of RAM and CPU usage rates and response time, show the proposed architecture makes good use of the available resources. Keywords— Middleware, Internet of Things, Frameworks. I. I NTRODUCTION In the IoT scene, the basic principle of operation consists in things communicating with each other. Currently, there are a lot of IoT devices from different manufacturers available in the market [1]. This diversity brings one of the greatest issues in IoT, which is the need for interoperability among several products from different manufacturers that use different protocols of communication [2]. In this context, the middleware platforms have a crucial role for interoperability between systems and devices. The mid- dleware acts as a layer of software (SW), which interconnects devices and applications in an IoT solution. It also offers a standardized way of access to data and services. Therefore, details like device implementation and configuration, such as network protocols and hardware (HW) definitions, are abstracted from the application developer’s point of view. This abstraction helps the middleware to bring interoperability for the development of the system [3]. Another important issue in the IoT scenario is the role played by computationally restrained hardware plat- forms/devices used in IoT applications. These devices are generally low-cost, which enable the deployment of large- scale systems [4]. The important role played by this kind of hardware is further reinforced by the tendency of using an edge computing approach in some IoT cases [5], [6], [7]. This approach has many advantages, such as reduction of dependency from external communications and the response time between parts of the system [5]. A great number of middleware platforms are created for Cloud or Fog computing paradigms [8]. These approaches li- mit or preclude their use by restrained hardware. Furthermore, the lack of middleware for edge computing creates a scenario Gustavo Cardoso, Luiz Ferreira, Luís Meloni e Paulo Cardieri, Departa- mento de Comunicações, Universidade Estadual de Campinas, Campinas-SP, e-mail: {gustavo_16a@hotmail.com, carlinho@decom.fee.unicamp.br, me- loni@unicamp.br, cardieri@unicamp.br}; Fernando Bauer, Copel Distribui- ção, Curitiba-PR, e-mail: fernando.bauer@copel.com; Eduardo Lima, Instituto de Pesquisas Eldorado, Campinas, SP, eudardo.lima@eldorado.org.br. where developers need to develop their own solutions for a specific application [5], [6], [7], [9], [10]. In light of the scenario discussed above, this work proposes an edge IoT middleware architecture and template, aimed to facilitate the development of edge middleware solutions in IoT. The architecture was designed to be suitable for computationally restrained hardware. Additionally, two similar middleware platforms using Python and the Django REST fra- mework were developed. These middleware platforms follow the proposed architecture and template requirements and serve as a proof of concept of this work. The proposed Middleware Template is part of the research project “Open Middleware and Energy Management System for the House of the Future.” This project is carried out via a partnership involving the University of Campinas, the Instituto de Pesquisas Eldorado, and the Brazilian energy provider Companhia Paranaense de Energia (COPEL). The remainder of this work is organized as follows: Sec- tion II presents a literature review and related works on edge middleware for IoT. Section III describes the proposed middleware architecture and template. Section IV details the experiments and the results achieved. Finally, in Section V the main conclusions are presented. II. LITERATURE REVIEW AND RELATED WORKS In an IoT environment, the middleware acts as a transla- tor, being responsible by making applications and/or devices (APPs) exchange data with each other exclusively through the middleware. Therefore, a middleware abstracts the comple- xities of communications. A scenario without a middleware makes the communication between different APPs a tricky task, as every time a certain APP makes a requisition to other APP it will have to communicate through specific protocols of this other APPs. This process generates a situation in which the developer needs to create not only the applications, but also ways for them to communicate with other APPs. [11]. Figure 1 illustrates the scenarios with and without middleware. Therefore, middleware is a layer of software that enables different systems to interact with each other and work together. Thus, the role of a middleware in IoT scenarios is essential for the creation of fast, scalable, and secure solutions, enabling simplicity and modularity [11], [12]. In [11], [12], the authors discuss general requirements for IoT middleware development, using distinct approaches. In [11], the authors classify the requirements as functional and non-functional; in [12], the authors view the requirements as architecture and services-related, the latter being further divi- ded into functional and non-functional. The main requirements found in these works are: scalability, interoperability, security