In the previous two blogs we discussed the feasibility of Low Code Application Development Platforms (LCDP) for IoT and the challenges of implementing LCDP capabilities across the 4 distinct components of an IoT solution. We then discussed how to architect such a platform by focusing on the six application categories associated with the IoT solution. Using End-to-end IoT Device Provisioning as an example we showed how this could be implemented using web and mobile applications. The question now becomes how to architect and implement this and other use cases and whether LCDP solutions for end-to-end IoT solutions exist today.

Start by focusing on the Development of Platform Functions

In a Low Code environment, IoT platform functions are made available through a number of easy-to-use development interfaces that are either graphical, low code or a combination thereof. Some of these are of a provisioning and configuration nature while others are more ‘core’ like device programming, specific data handling or IoT applications designs and functions.

Implementing these in an IoT platform environment requires an overlay development environment that has access to all underlying IoT platform functional sub-systems/components (Connectivity, Data Handling/Processing, Storage, ML, AI) either direct, via APIs or subsystem application interfaces (listener environment, data base provisioning, configuration & query, web server provisioning). This development environment needs to support both application development, customization and provisioning and be able to provide user applications with information and content from all subsystems as well as interim storage.

Creating an LCDP IoT Platform Environment

Creating this internal LCDP IoT platform development environment requires not only detailed understanding of how all sub-systems are accessed, programmed and provisioned, but also foresight regarding all IoT user applications and use cases and how they evolve and need to be supported over time. This is obviously a challenge involving assessment of all requirements and the best way of supporting them with a programming platform.

While it is possible to develop an IoT LCDP platform from scratch, this is a massive undertaking that requires development of all subsystems/components or integrating existing software products into a platform. A much better approach is to start with an existing service based IoT cloud platform, add required sub-systems/components (example: IoT device listeners), integrations (example: IoT SIM provisioning) and applications environments (example: web servers), and then create and develop an overlay LCDP programming platform for development and customizations. Easier said than done? Fortunately, the answer is no if you base your architecture on a microservices platform. So, what are these? As usual, Wikipedia provides us with an excellent definition. A microservices implementation makes all systems, sub-systems and functions accessible through a services-based abstraction layer that provides easy access to them without having to understand the detailed access methods, protocols and programming minutia. Programmers can then create specialized low code development environments for

  • IoT device programming
  • Device listeners and protocol converters
  • Device provisioning
  • Configuration of lambda services
  • Analytics Programs
  • UI PODS
  • Integrations with services from leading edge content or solution partners

and more general for developing and enhancing the IoT platform.

Implementing the LCDP IoT Platform Environment

Implementing this takes a combination of excellent IoT solution design and architecture knowledge together with a very good but small development and implementation team working for 12+ months writing 25k+ lines of code. The choice for a company is therefore to either invest the resources and do this for themselves or use something already developed and existing.

Triotos is an existing rapid onboarding IoT platform developed on the AWS cloud platform using the market leading AWS IoT core offering and AWS cloud services for storage, applications, messaging, analytics, ML and advanced AI. This platform has a growing set of Low Code Application Development interfaces for device deployment, provisioning and IoT application customizations. As an example, in a multi-tenant implementation, we are able to bring up a new complete IoT customer solution instance in minutes using a simple No Code (NC) interface. We are also developing Low Code interfaces for application customizations, integration with outside data sources and UI PODS. Based on a microservices architecture, Triotos supports rapid integrations and low code development based on a thorough understanding of IoT solutions, end-to-end implementations and rapid development and deployment of leading edge IoT. This allows for development and deployment of IoT solutions in months instead of years at a fraction of the cost of doing it yourself or other solutions.

About the Author

Mats Samuelsson

Mats Samuelsson is the CTO & VP Marketing and Business Development for Triotos. In this role, he is responsible for the new business, development, integration, and deployment of Triotos technology initiatives.