How about an enterprise open-source solution for building an IoT cloud-based software system?
The IoT Working Group of the Eclipse Foundation is working on a few IoT-related software projects and the effort is backed up by some such players as Red Hat, Eurotech, Bosch Software Innovations, GE Digital. The goal is to provide an ecosystem of interoperable IIoT platform components with which to efficiently design and implement
The IoT Working Group of the Eclipse Foundation is working on a few IoT-related software projects and the effort is backed up by some such players as Red Hat, Eurotech, Bosch Software Innovations, GE Digital. The goal is to provide an ecosystem of interoperable IIoT platform components with which to efficiently design and implement bootstrapped IoT projects. The overall Eclipse IoT offering encompasses an open source, end-to-end solution for the development, deployment, and management of IoT solutions. Some of the main projects covered by the joint initiative are:
Eclipse Kapua – a back-end IoT platform for IoT devices and smart sensors originally developed by Eurotech and currently co-developed predominantly by Eurotech and Red Hat. The Eclipse Kapua source code provides a core modular integration framework and a suite of components for device / sensor registry and management, message routing, data and security management and application enablement. As such Eclipse Kapua is meant to provide comprehensive management of edge IoT nodes including their connectivity, configuration, and application life cycle.
Eclipse Hono – a component initiated by Bosch and meant to support secure communications. The next step in the open source initiative will be the launch of Eclipse Hono (as of May 2017) – a project initiated by Bosch Software Innovations that enables secure and reliable communications between IoT devices and services. Eclipse Hono is in principle a distributed and vastly scalable messaging infrastructure that can act as a front-end messaging service deployed in front of Eclipse Kapua; as a matter of fact Hono will be integrated as an extension to Kapua. Hono ensures secure message dispatching, supports different message exchange patterns and provides interfaces to support the implementation of protocol adaptors which enable sending telemetry data, receiving device control messages from applications / solutions, and registering authorized consumers of telemetry data received from connected devices.
Eclipse Keti – an access control framework proposed by GE Digital. The eclipse member GE Digital proposed a project called Eclipse ACS – currently, Eclipse Keti – which implements a simple, granular access control framework that makes it possible for IoT developers to integrate access control security into their IoT applications. The component is meant to provide secure communications between devices and services, manage and update devices, process device data as well as integrate device information into legacy enterprise applications.
Interestingly enough, the Eclipse Foundation maintain such components may also be delivered as services on top of an underlying cloud infrastructure platform, like Cloud Foundry or OpenShift.
Eclipse Kura – a framework for IoT gateways. Kura offers a Java/OSGi-based container for M2M applications which run in service gateways; the component provides or draws upon open source implementations for the most common services required by M2M applications.
Kura among other things is meant to support the storage and forwarding of the telemetry data collected by the gateway and published to remote servers; it also allows for the remote management of M2M applications including their deployment, upgrade and configuration management. Importantly, Kapua natively manages gateways powered by Eclipse Kura.
While discussing the Eclipse Foundation IoT-related open source projects, it is worthwhile to remember about Leshan and Paho, ie the implementations of the LWM2M and MQTT protocols respectively. The Paho project, for example, aspires to deliver open and standard messaging protocols aimed at applications for Machine-to-Machine (M2M) and Internet of Things (IoT).
All in all, while weighing the pros and cons of the various IoT software solutions with which to build your system, you might as well keep in mind the options offered by the IoT Working Group of the Eclipse Foundation. The open source community gathered around the initiative collaborate with the corporate enterprises to deliver a solid IoT cloud platform solution encompassing a set of interoperable IoT components. The latter may very well become the building blocks in the project you implement.