Introducing the Eclipse IoT Community: Open Wins
The Internet of Things (IoT) and Machine to Machine (M2M) are
becoming important trends in the technology industry. The potential
to connect sensors, actuators and a wide range of devices opens up
an enormous opportunity for creating new types of solutions and
applications in almost any industry. However, the current state of
the IoT industry is characterised by closed proprietary solutions
that limit interoperability between solutions and lock customers
into a particular technology. If the Internet of Things is going to
be successful it needs to be built on the principles that made the
Internet successful – open standards and open source software.
At Eclipse we are creating an open source community that will
provide the open source building blocks for creating an open and
interoperable Internet of Things. The Eclipse IoT community provides
open source projects that developers can use to build their IoT
solutions. The focus is on providing 1) open source implementations
of popular IoT standards, 2) frameworks and services required for
building IoT solutions, and 3) tools required by IoT developers.
The first Eclipse IoT project started in November 2012. We now have
12 different open source projects targeting IoT and M2M. Here is a
quick tour of these projects.
Standards and Protocols
provides the client implementation of the Oasis MQTT messaging
language implementation of the MQTT standard.
is the sister project of Paho, providing a server implementation
of MQTT. We are hosting a test instance of Mosquitto at
iot.eclipse.org so developers can easily test out their MQTT based
is a Java implementation of Constrained Application Protocol. The
project is just getting started at Eclipse but the code is
available on GitHub.
is an implementation of the OneM2M standard (previously called
ETSi M2M standard). OM2M is a set of Java and OSGi services that
implement the OneM2M standard.
is an implementation of the OMA Lightweight M2M protocol for
device and service management. Wakaama is written in C and
designed to be portable to POSIX compliant systems.
Services and Frameworks
is a set of Java and OSGi services that implement the common
services required for an IoT gateway, such as 1) I/O connection
with serial ports, USB, Bluetooth, GPS, Clock, etc., 2) Data
Services, 3) Remote Management, and more. We have a more detailed
introduction to Kura available.
SCADA (Supervisory Control and Data Acquisition) is a set of
Java and OSGi services for creating industrial control systems
that monitor and control industrial processes, such as factory
floors or solar farms.
SmartHome is a Java and OSGi set of services for home
automation integration. This project provides a uniform access
point for the many different home automation devices and
- Ponte is
a broker that will bridge different IoT standards (such as MQTT
and CoAP) and provide a REST API to these standards.
is an implementation of the OSGi standard that aims to have a very
small runtime footprint so it is suited for small IoT devices. The
target size for the Concierge OSGi runtime is 300-400KB.
is a project to define rules for the messages that pass through an
is a Lua-based framework for creating applications running on IoT
and M2M gateways. Koneki is a closely related project that
implements a Lua IDE and makes it easy to deploy applications to
IoT is an exciting new area for software developers. New hardware
platforms like Arduino, BeagleBone and Raspberry Pi makes it easy
for developers to experiment with new solutions. Now is a great time
to experiment with our open source projects. Use them to build new
IoT solutions, and perhaps start the next project. An open source
IoT community is what will drive the innovation in the IoT industry.
We invite you to join us.