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
-
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
-
Juno Computers Launches Another Linux Laptop
If you're looking for a powerhouse laptop that runs Ubuntu, the Juno Computers Neptune 17 v6 should be on your radar.
-
ZorinOS 17.1 Released, Includes Improved Windows App Support
If you need or desire to run Windows applications on Linux, there's one distribution intent on making that easier for you and its new release further improves that feature.
-
Linux Market Share Surpasses 4% for the First Time
Look out Windows and macOS, Linux is on the rise and has even topped ChromeOS to become the fourth most widely used OS around the globe.
-
KDE’s Plasma 6 Officially Available
KDE’s Plasma 6.0 "Megarelease" has happened, and it's brimming with new features, polish, and performance.
-
Latest Version of Tails Unleashed
Tails 6.0 is based on Debian 12 and includes GNOME 43.
-
KDE Announces New Slimbook V with Plenty of Power and KDE’s Plasma 6
If you're a fan of KDE Plasma, you'll be thrilled to hear they've announced a new Slimbook with an AMD CPU and the latest version of KDE Plasma desktop.
-
Monthly Sponsorship Includes Early Access to elementary OS 8
If you want to get a glimpse of what's in the pipeline for elementary OS 8, just set up a monthly sponsorship to help fund its continued existence.
-
DebConf24 to be Held in South Korea
Busan will be the location of the latest DebConf running July 28 through August 4