IoT Technology Stack

The Internet of Things, popularly called as IoT, is the network of physical things that are connected together via internet. These ‘things’ include physical devices such as home appliances, smartphones, healthcare equipment, industrial machines, and other assorted gadgets. The IoT ecosystem is a combination of physical objects that have some degree of computing power and intelligence built into the device itself, media through which the device can be connected to the internet, and the infrastructure of the internet itself.  From an electronics standpoint, IoT means things (objects) that are embedded with electronics, software, sensors, and network connectivity. The sensors collect data, which is then processed real time by intelligent software and utilized further. While IoT includes an umbrella of devices that encompass everything from personal gadgets, home appliances to industrial machinery, it is the latter which is of most importance. Called IIoT (Industrial IoT), it is an integral part of Industry 4.0, a paradigm that encompasses interconnectivity, automation, machine learning, and real-time data sharing in factories and other manufacturing units.

Benefits of IoT
With life becoming faster every day, people are expecting more from their gadgets. Fridges that take their own inventory, smart lights that adjust as per the ambient temperature, cars that tell owners when the next oil change is due, wearable gadgets that monitor health parameters are all part of the IoT revolution. The IoT has revolutionised industrial (called as IIoT) manufacturing, health care, logistics, retail inventory and just about everything else. As per a few studies, IoT benefits by:

  • Reducing manufacturing cost
  • Improving operational equipment uptime and availability
  • Increasing efficiency and product quality
  • Improve safety

On the flip side, IoT is still expensive. But as more and more people embrace it, it will no doubt become more popular.

The IoT Technology Stack
Before we proceed further, let us first understand what ‘technology stack’ means. A technology stack is a set of multiple layers of software or processes. It consists of a combination of software applications, frameworks, and programming languages. Each layer of the tech stack communicates with the layer above and below it, using some protocols.

IoT is a protocol stack that enables a connected collection and processing of information. The lowermost stack is the hardware support utilized for the computation.  From this to third party integrations, the IoT technology stack constitutes the major building blocks of a complete IoT solution.

Let us briefly understand each of these blocks (or layers) that constitute the entire IoT technology stack.

At the lowest level of the stack are the smart devices or objects. They are the so called ‘things’ of the IoT. These things act as an interface between the real and the digital world. The sensors, actuators and other necessary instruments mounted or embedded within these things source data as needed. The sensors and actuators form the backbone of the IoT infrastructure. What the five senses are to the human, the sensors and actuators are to the things. In a way, they bridge the gap between the real world and the virtual world. For example, the sensor in a chemical agitator measures the viscosity of the fluid that is being churned, the chip in a smart LED senses ambient light and adjusts its luminosity accordingly, a sensor in a fitness tracker measures the pulse rate and the calories consumed by the wearer, and so on. It is the job of the actuator to perform a certain task based on the inputs received from a sensor. If, for example, the temperature of an agitator rises above a certain level, an actuator can stop the process so that the components are not damaged. Sensors and actuators pass on this data, which is mostly real time through an IoT gateway, to device management software.

An IoT gateway is precisely what it insinuates: a gateway between the IoT device level and the technologies and environments in the stack. IoT gateways started as hardware, but with increasing complexity of IoT solutions can now also be software, or a combination of both. Today, there are gateways for IIoT, edge computing, home automation, and so on. Their basic function is to aggregate device connectivity, encrypt and decrypt IoT data, management of various IoT devices, and other such tasks.

The device management software, storage, and the API management collectively constitute the middleware of the IoT tech stack. The IoT tech middleware is software that acts as a communication channel between an operating system or database and applications, especially on a network. This layer of the stack is responsible for receiving data from the connected devices, processing the data it has received, providing the received data to connected applications and controlling the ‘things’ or devices. The IoT software is one of the most important layers of the IoT stack. It addresses areas of networking and action through platforms, partner systems, and middleware. The individual and master applications are responsible for data collection, application and process extension. The IoT middleware stack can be accessed using APIs like HTTP-based REST. The API management layer thus creates an interface between the device and its data, and the applications that want to manage them. Any entity that can connect to the APIs can be an application; examples include a mobile app, a web dashboard, a temperature and humidity sensor, and so on. Since IoT is essentially a collation of different devices talking to each other through data, it is important to ensure that there is no communication lacuna. The IoT APIs expose data from various devices and converts it using a common IoT platform like PTC thingWorx and PTC Kepware.  It is imperative to manage the process of publishing, promoting and ensuring that the APIs are working correctly for proper data collection. Proper API management is one of the keys to a successful IoT solution. Rule engines and schedulers can also consume the data exposed by the APIs. Both are essential part in the success of the IoT tech stack as a whole. The data provided by the API can also be used for analysis as well as for adding intelligence on top of the existing system. Technologies that utilize this information include Big Data, machine learning and artificial intelligence (AI.)

The topmost layer of the IoT stack is the third party software. Your IoT application usually requires third party integration sooner or later. Let’s say you have built a smart device and want Amazon Echo Dot and Alexa as one of the interfaces. It is not possible to directly integrate such a third party service with your device’s API. This is where an integration layer comes into play. Specifically, third party integration is a custom layer at the top of the IoT stack that is used to write wrapper functions. It acts as a bridge between the API management layer of your device and the third-party service like Echo Dot. This layer accepts data from Echo Dot’s API, and then coverts it to a format the API management layer understands. In turn it reads the response from the API management layer and converts it to a format Echo Dot API understands. Using the integration layer, it is thus possible to communicate between a third party servicesand your IoT system without having to change the core of the IoT stack for all such integration with other services.

In conclusion
Successful implementation of an IoT solution entails choosing each component carefully. The IoT technology stack is the most important part of the overall IoT solution. It is a collection of technologies, standards and applications that start with data gathering from devices to data processing and creating a meaningful IoT use case.