IoT application service platform

The needs

IoT devices act as terminal nodes (sensors, actuators, local logics...) of a wider and more distributed system, whose target is to make a service usable according to customer needs (monitoring, data acquisition, predictive analysis, learning flow, remote control...).

The functionalities of IoT devices, such as their data acquisition, processing and storage, their remote control and configuration, or the scheduling of operations to be performed, are implemented by an ecosystem of applications and software services classified as an IoT platform.

An IoT platform therefore consists of a set of IT service and applications (network servers, database storage, flow handler, load balancer, WEB UI...) running on one or more servers, which cooperate to achieve all the required functionalities of a specific vertical application.

In order to prove the functionality of its IoT devices and to autonomously offer a complete solution to customers, the SEMAR group decided to develop its own IoT platform to allow an easy implementation of the vertical applications associated to the IoT devices.

The goal of such a platform is to have a modular, flexible and fully customizable software infrastructure, in order to be easily adapted to the most different application scenarios.

The challenges

  • Multi-instance, multi-tenant and multi-user platform
  • Multiple and customizable access levels and operating privileges
  • Integrated WEB UI with multiple and customizable dashboards
  • Performing configurable operations on device data flows or on the operations from UI
  • Extendable functionalities through add-on and plugin development
  • Multiple APIs for direct integration with other systems and services
  • Flexibility and independence from the underlying database type
  • Support of multiple protocols for communication with IoT devices
  • Communication security and authentication of remote IoT devices
  • Direct connection of IoT devices or via gateways
  • Available as IaaS, PaaS and SaaS

The realization

After a careful analysis of various commercial and open source IoT platforms, iSEMAR choose to build the iTHINGS platform based on the Thingsboard CE open-source solution, which guarantees a wide scalability and performance configuration as well as the support of multiple types of installation. The functionalities of the Thingsboard CE platform have been specialized and extended with the customization of several components and the creation of new ones, modifying the source code of both backend and frontend parts. Further external services have also been created to interact with the core parts via APIs and to extend its native functionalities. The iTHINGS platform allows a simple and fast development of vertical IoT applications for multiple and different scenarios, available to end users in IaaS, PaaS and SaaS mode. 

The main features available with the iTHINGS platform are listed belowa piattaforma iTHINGS:

  • Multi-instance, multi-tenant and multi-user platform support
  • Multiple access levels and operating privileges, customizable for single users and groups
  • Single Sign On (SSO) authentication with a valid ithingszone account for all iTHINGS applications
  • APIs (https and wss) for integration with external applications and platforms
  • Direct device connection or via a connector service
  • Support of multiple and secure protocols for device connection and authentication
  • Automatic/centralized or manual WEB UI wizard for device provisioning (on boarding)
  • Management and hierarchical view of resources both physical (devices) and logical (assets)
  • User based configurable generation of multi-channel alarms and notifications
  • Widely configurable and customizable dashboards and widgets
  • Creation of data views, aggregations and custom KPIs for a specific application
  • Integrated customizable WEB UI, with user-configurable themes and language
  • Management and logging of operator activities (e.g. maintenance operation)
  • Document storage space that can be associated with individual devices or assets (e.g. technical drawings, instructions, operating procedures...)

Share on linkedin