With the Internet-Of-Things, the future is going to be exciting with a network of connected devices and sensors. The biggest value of IoT is the continuous acquisition of data. By analysing sensor data, companies can identify operational bottlenecks, optimize energy consumption, predict equipment maintenance in advance, successfully address staff utilization issues and optimize costs.
With this Internet-Of-Things massive network of possibilities comes a lot of opportunities worth exploring. It is thus vital for early adopters to be aware of the role that visualization will and can play in Internet-Of-Things landscape. It is crucial to know how visualization can make or break the advantage that IoT can provide us with.
We had opportunities to explore multiple open source visualization platforms and also create our own custom visualization and management platform. We would like to mention a few key features of one such platform – ThingsBoard —that we implemented for our customers.
ThingsBoard is an Open-source Internet-Of-Things platform that provides features for device management, data collection, processing and visualization for IoT solutions.
We used the MQTT integration support provided by ThingsBoard to collect data from the gateways and save it into our custom database. Apart from MQTT, ThingsBoard also supports CoAP and HTTP communication protocols.
ThingsBoard provides us with a full-fledged platform that enables us to manage and configure devices, assets and users.
Security is enabled by the use of access tokens and device id properties that are provided with the platform. When an access token is added to the request, ThingsBoard can identify and authenticate a device with the token-based authentication. ThingsBoard also supports X.509 Certificate Based Authentication.
Rule Engine, an easy to use framework for building event-based workflows, is another commendable feature on ThingsBoard. This is a highly customizable framework for complex event processing. We were using a separate Node-Red instance previously to help us to develop this feature with an additional effort. But this inbuilt feature helps us save the development efforts to a huge extent. They basically help in:
- Data validation and modification
- Aggregation of data
- Create/Update/Clear alarms based on defined conditions.
- Trigger actions
- Trigger REST API calls to external systems.
- Integrate with external pipelines like Kafka, Spark, AWS etc.
Entities & Relations is another key feature in ThingsBoard. ThingsBoard provides the user interface and REST APIs to provision and manage multiple entity types and their relations in your IoT application. This can be applied to Tenants, Customers, Users, Devices, Assets, Alarms, Dashboards, Rule Nodes and Rule Chains. We had implemented this in one of our Farm IoT solutions creating a relationship between farms, customers, gateways, devices and other assets on a farm in a multi-tenant ecosystem.
Dashboards are an inevitable part of visualization. ThingsBoard allows you to configure customizable IoT dashboards. Each IoT Dashboard may contain multiple dashboard widgets that visualize data from multiple IoT devices. Once an IoT Dashboard is created, you may assign it to one of the customers of your IoT project. Widget library provides us with all the necessary widgets like digital and analogue gauges, customizable bar and line charts and map widgets. There is also an option to create a custom widget which we can reuse in our dashboard where required.
Maps is another handy feature in ThingsBoard. We can create a maps view with minimal efforts. We used this feature for one of our customers who has our IoT solution implemented in his 6 acre farm. The map view helped the customer locate the exact location of the sensors/devices thus helping the customer attend to maintenance needs promptly.
API provided for device and server parameters helps easily manage the device and backend server. APIs are classified into Administration, Attributes, Timeseries and RPC. We had the opportunity to create a mobile application for our customers to visualize the device status and statistics. The API support was handy to get the data from ThingsBoard and share it on mobile application.
Based on our experience in providing quality solutions to demanding customers, we noticed that ThingsBoard in fact helped us provide the best options to end users with minimal effort and maximum effect. The never ending challenge in the IoT ecosystem is showing the right information at the right time to provide the customer with the highest value. ThingsBoard enables this to happen effectively
Project Manager at WMIOT