Internet of Things – Eclipse

In this article, we will look at the topic “Eclipse IoT”. Then, we shall go through various topics like the IoT eclipse and the multiple standards, protocols, services, and frameworks of Eclipse IoT. Finally, we will conclude by briefly looking at Eclipse Hono and Eclipse hawkbit.

What is Eclipse IoT?

In a nutshell, Eclipse is a platform for building IoT projects. It is an open-source community that developers use to propose IoT technology solutions. Eclipse IoT provides solutions for developers, frameworks, and services to use the resources effectively.

As an open-source community, Eclipse aims to implement popular IoT protocols via an open-source platform and provide the services and frameworks to build numerous IoT projects. Eclipse IoT also offers relevant tools for IoT developers and believes that IoT technology can only be fully utilised if its usage is open-sourced.

The first ever Eclipse IoT project started in November of 2012, and as of today, we have 12 different open-source projects targeting machine-to-machine communication and IoT. Let us briefly look at these 12 projects in the subsequent sections.

Eclipse IoT Standards and Protocols

1. Eclipse Paho

Paho, as we discussed above, is an open-source project, and so are the remaining 11. It offers executions for MQTT transport for TCP/IP protocols and uses a variety of programming languages. However, eclipse Paho mainly operates on the client side.

2. Mosquito

As weird as the name sounds, it is lightweight and suitable for many machines. Eclipse Mosquitto offers server applications for the MQTT standard and can also connect to other MQTT servers and transport messages through a bridge.

3. Californium

Eclipse Californium is an application of the CoAP protocol, written in the Java programming language and offers backend services. Even though the Californium project is just getting started, the code is already available on GitHub. In addition, Californium provides scalability and performance.

4. OM2M

Eclipse OM2M is short for One Machine to Machine. OM2M, an implementation of the OneM2M standard, is a set of Java and OSGi services. OM2M facilitates the deployment of vertical applications and heterogeneous devices even though it provides a horizontal M2M platform for developers.

5. Wakaama

Just like OM2M, Wakaama is also an implementation of the OneM2M standard. But unlike OM2M, which is programmed in Java, Wakaama is programmed in C language as it was designed to be portable to POSIX-compliant systems.

Eclipse IoT Services and Frameworks

1. Kura

Just like OM2M, Kura is also a set of Java and OSGi services implementing the common services required for an IoT gateway. These services include data services, remote management, and input/output connection with serial ports, USB, Bluetooth, GPS, Clock, and more.

2. SCADA

SCADA is the abbreviation of Supervisory Control and Data Acquisition. Eclipse SCADA is a set of Java and OSGi services used to create industrial control systems that monitor and control industrial processes. For example, monitoring factory floors or solar farms.

3. SmartHome

Eclipse SmartHome is a project providing a uniform access point for different home automation devices and protocols. This project includes various Java and OSGi services like home security, automatic light switching, virtual assistant, and motion detectors.

4. Ponte

Eclipse Ponte is a broker that will bridge different IoT standards like CoAp and MQTT. Ponte also provides a REST API to these IoT standards and exposes the MQ Telemetry Transport through the REST API.

5. Krikkit

Eclipse Krikkiit makes it easy for developers to control and manipulate the data. It offers an interface allowing users to build IoT devices, such as gateways using the software library. The architecture of Krikkit registers policies on routers that have visibility into and communicate with sensors.

6. Concierge

Eclipse Concierge is suited for small devices like embedded and mobile devices as it aims to have a tiny runtime footprint. It is an implementation of the OSGi Core Specifications R5 standard with a target size for the Concierge OSGi runtime of 300-400KB.

7. Mihini

The Mihini project of Eclipse IoT is lightweight and based on the Lua framework to create applications running on IoT and Machine-to-Machine gateways. The Koneki project is closely related to Mihini as it also implements a Lua IDE making it easy to deploy applications.

Eclipse is an excellent platform to experiment and build projects. You can use it to build various IoT solutions. With numerous hardware platforms like Arduino, BeagleBone, Pycom, SODAQ, Adafruit, and Raspberry Pi, developers can easily experiment with new projects.

Eclipse HawkBit

Hawkbit is mainly a backend framework to deploy software updates. It is an independent platform that updates edge devices and nodes, including controllers and gateways.

Hawkbit provides a direct device integration through HTTP or a device management federation API that allows the connection of devices with other protocol adapters.

Users can use the GUI and other services to interact with hawkBit through the RESTful management API Eclipse Hawkbit supports flexible and easy rollout management that allows you to update many devices in separate groups.

Eclipse Hono

Eclipse Hono is more of a protocol than a project, as it enables communication between IoT devices and applications in the cloud. However, like every Eclipse project, Hono is also open source with the main aim of easily connecting IoT devices.

Eclipse provides agility and unique solutions for developers to interact and manipulate the data.

Summary

As you have seen, Eclipse IoT is a platform for building IoT projects that provides solutions for developers, frameworks, and services to use the resources effectively.

You have now learned what IoT Eclipse is and the multiple standards, protocols, services, and frameworks of Eclipse IoT as we took a glance at the 12 projects of Eclipse. We Finally concluded by taking a brief look at Eclipse Hono and Eclipse hawkbit.

Leave a Reply

Your email address will not be published. Required fields are marked *