This article is the fourth and final part of our “How IoT Works” series, in which we’ll cover the key elements of IoT in a simple, understandable way.
Internet of Things (IoT) solutions typically consist of four fundamental elements:
What Is a User Interface?
In the previous articles we have covered how data is collected by sensor devices, sent to a cloud service via a network solution, and transformed into useful information. The last thing we need to do is to deliver the information to the end user. This is done via user interface (UI).
The user interface consists of the features by which a user interacts with a computer system. This includes screens, pages, buttons, icons, forms, etc. The most obvious examples of user interfaces are softwares and applications on computers and smartphones.
A user interface doesn’t necessarily require a screen, however. For example, a TV remote has a user interface that consists of various buttons, and devices such as Amazon Echo can be controlled with voice commands.
A term that relates closely to the user interface is the user experience (UX). The difference between the two is that, while UI has to do with the things a user actually sees and interacts with, UX is the overall experience a user has with a product. It includes the website, application, packaging of hardware, installation, etc. UX might not even be about your UI design.
Ways to Interact with an IoT Solution
There are many ways by which a user can interact with an IoT solution. Again, as we saw with sensor devices and connectivity, the choice depends on the use case. Here, we’ll take a look at some of the most usual options.
Receiving Automatic Notifications
The most usual case in IoT applications is that we want to receive notifications or alerts if something unusual happens. For example, if a manufacturing machine’s temperature exceeds a threshold limit, we would like to get notified about that. The information could be delivered via email, SMS, phone call, or push notification.
Monitoring Information Proactively
We might want to be able to monitor information proactively. For example, if we had an asset tracking solution keeping track of our vehicles, we might want to monitor the vehicles’ location even if nothing unusual happens. We could use a mobile or computer application for monitoring the information.
Controlling the System Remotely
The user interface can also allow the user to control the IoT system remotely. For example, the user could adjust lights or turn off heating via mobile application. This could also be done automatically by the application itself according to the guidelines given to it.
UI Considerations for IoT
It is a challenge to build an intuitive UI (and UX) for one app alone, but IoT applications take the complexity to a whole new level. Let’s take a look at some of the issues we have to take into account when designing UIs for IoT.
As explained in our earlier articles, there are different approaches to how often data is sent to the cloud (and also how often it is processed). This needs to be considered when designing the user interface. For example, if we had a location tracker sending information to the cloud every three hours, the UI should inform the user clearly that it’s not real-time information that he/she sees. The UI could let the user know “Last message received 2 hours ago – next message expected in 1 hour”, for example.
We should think about whether we need a physical user interface on our IoT device. In some applications this can be essential. For example, if we had smart lights in our home, we would want to be able to use them even if the WiFi went down. However, physical UIs are often very limited for aesthetic reasons, and also because we want to extend the battery life of our IoT devices. Physical UI could also be as simple as a small LED light on an IoT sensor device to tell the user that the device is on.
It is important to deliver the information to the user in the simplest way possible. Furthermore, the information processed from IoT data should be tailored to the user’s specific needs. It would be a good idea to limit information access for different user groups and show a specific user only what he/she need to see. This makes it easier for the user to digest the information the IoT system provides. Also, visualization makes the information easier to understand.
Even with efficient data processing, the amount of information presented in the user interface can be massive. This has to be taken into account when designing the UI, because otherwise the performance of the UI might not scale for larger usage. Graphs are a great way to present large amount of data in a meaningful way, and they also help with the performance of the UI. Also, if a long list of events or messages needs to be shown in the UI, usually only a part of the data is loaded to be shown at a time (pagination).
Our “How IoT Works” series is coming to an end, but let’s take one more example that covers the whole process.
Let’s imagine we are dealing with the grocery cold chain. We want to make sure our groceries are kept in a suitable temperature, and we also want to track the location of the truck transporting the groceries. The steps (1–4) of our IoT workflow are visualized below.
First, we collect data about the temperature and the location with our sensor devices (step 1). After that we use a network solution to send the data to a cloud service (step 2), where the data is transformed into useful information via data processing (step 3). Finally, the information is delivered to the end user via user interface (step 4).
We hope you have enjoyed our “How IoT Works” series!