Eclipse development tools for the Internet of Things
Smart Doorkeeper
Gateways are smarter and more powerful than constrained devices. The substructure is usually a well-known operating system such as Linux or Windows. The gateway has its own component for communication with IoT devices and the cloud. It must be able to handle numerous protocols, such as Bluetooth and Ethernet. Another component allows the gateway to be (remotely) serviced and switched off in a controlled manner.
To compensate for network failures or faults, the gateways need to (temporarily) store the data collected by the sensors. This approach also enables direct analysis of sensor data on the gateway.
The Eclipse Foundation supports three projects, each of which contains all of the previously described components. Kura (Figure 2), which specializes in single-board computers such as the Raspberry Pi, is particularly well known. The modular structure of Kura allows Java developers to quickly adapt it to their own needs. For instance, they can program a small service that reads out the temperature sensors and forwards the data to Kura.
At its core, Kura provides an application container for Java developers that follows the OSGi standard. Kura also offers numerous APIs that make communication with the hardware and the network easier for the developer. Kura accesses RS-485 or GPIO interfaces, communicates via the CAN bus, and establishes a connection via WLAN or Ethernet. Integrated MQTT support enables applications running on the gateway to communicate transparently with the cloud.
Based on the MQTT protocol, Eclipse Kura also enables remote management. Among other things, the software running on the gateway can be controlled remotely.
Eclipse SmartHome, also intended for gateways, runs on Linux, Windows, and OS X. Like Kura, the SmartHome project provides an application container according to the OSGi specification. However, as the project name suggests, SmartHome focuses on intelligent home scenarios.
The middleware supports many home automation devices, including intelligent Hue lamps by Philips or Sonos devices. The main aim is to set up and operate an "Intranet of Things." SmartHome offers an internal event bus to which external systems can also dock via SSE or MQTT. Predefined rules can be used to automate processes. SmartHome is configured via APIs, and the system includes an infrastructure for transferring firmware updates to the connected devices.
The third gateway project in the Eclipse universe is aimed at the corporate environment: Eclipse 4diac provides an open source infrastructure for distributed industrial process measurement and control systems. 4diac follows the well-known IEC 61499 standard.
Very Cloudy
The data collected by the gateway is uploaded to a cloud that uses OpenShift, AWS, or another data center solution. In the cloud are services and applications that process the data delivered by the gateways and forward the results to other applications as needed.
The basic building block for an IoT cloud is Eclipse Kapua: This modular platform offers all services necessary for managing the gateways and Smart Edge devices.
Eclipse OM2M, which follows the oneM2M standard, is the project of choice for the telecommunications industry. The OM2M project offers a horizontal Common Service Entity (CSE) that can act as an M2M server, gateway, or device.
The services running in the cloud need to be able to process the information delivered via a variety of protocols and in different data formats, and they need to normalize the information for other applications as needed. This is where Eclipse Hono jumps into the breach: The Hono project provides an API that can address devices in many protocols. In addition, Eclipse Mosquitto supplies a lightweight MQTT server, which is particularly suitable for embedded devices and systems with low energy consumption.
Please Register!
The Eclipse Foundation envisions a device registry, to which all currently connected sensors, actuators, and gateways would register. Eclipse Kapua comes with a registry as standard. This directory also helps to roll out software updates. Updates occur via the software tools from the Eclipse hawkBit project. To supplement this, Eclipse Leshan provides an implementation of the OMA LWM2M device management protocol.
Eclipse Ditto helps you manage digital twins of IoT devices. These digital twins are virtual images of real devices built in software. This virtual version is particularly useful in industrial applications, where the virtual version and its physical counterpart often must exchange data.
The delivered data must end up in a correspondingly flexible and large data repository. The information parked there is then analyzed and consolidated by the cloud application. The Foundation draws on established external Apache projects for data analysis, such as Hadoop, Spark, and Storm. For data visualization, the Eclipse Foundation recommends its own Eclipse BIRT [7] project, which is not part of Eclipse IoT.
« Previous 1 2 3 Next »
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Linux Servers Targeted by Akira Ransomware
A group of bad actors who have already extorted $42 million have their sights set on the Linux platform.
-
TUXEDO Computers Unveils Linux Laptop Featuring AMD Ryzen CPU
This latest release is the first laptop to include the new CPU from Ryzen and Linux preinstalled.
-
XZ Gets the All-Clear
The back door xz vulnerability has been officially reverted for Fedora 40 and versions 38 and 39 were never affected.
-
Canonical Collaborates with Qualcomm on New Venture
This new joint effort is geared toward bringing Ubuntu and Ubuntu Core to Qualcomm-powered devices.
-
Kodi 21.0 Open-Source Entertainment Hub Released
After a year of development, the award-winning Kodi cross-platform, media center software is now available with many new additions and improvements.
-
Linux Usage Increases in Two Key Areas
If market share is your thing, you'll be happy to know that Linux is on the rise in two areas that, if they keep climbing, could have serious meaning for Linux's future.
-
Vulnerability Discovered in xz Libraries
An urgent alert for Fedora 40 has been posted and users should pay attention.
-
Canonical Bumps LTS Support to 12 years
If you're worried that your Ubuntu LTS release won't be supported long enough to last, Canonical has a surprise for you in the form of 12 years of security coverage.
-
Fedora 40 Beta Released Soon
With the official release of Fedora 40 coming in April, it's almost time to download the beta and see what's new.
-
New Pentesting Distribution to Compete with Kali Linux
SnoopGod is now available for your testing needs