WatersWorks

Blog archive

The Internet of Things Needs Open Source

Ian Skerrett is probably best known for his role at the Eclipse Foundation as vice president of marketing, but for the past two-plus years he's also been leading the Eclipse effort to foster an open-source community around the Internet of Things (IoT).

 "If you look at the Internet today, it's run on open source," Skerrett told me. "Linux, Apache and open standards like HTTP are the building blocks. If we're really going to get an Internet of Things, we need a set of core building blocks that anyone can use to develop commercial or internal solutions." 

Eclipse IoT now includes 15 projects collectively aiming to reduce the complexity of developing IoT/M2M solutions. Most of the Eclipse literature on this initiative uses that "IoT/M2M" label, because machine-to-machine communication is where it all started, and because it continues to be an essential part of IoT. But is IoT more all encompassing, which, Skerrett says, is what makes developing IoT solutions so challenging.

 "To put together an IoT solution today, you need people who understand gateways and networks, but also enterprise systems, data analytics, integration with ERP or CRM systems," he said. "There's some daunting complexity here, but we know that when you create frameworks and abstraction levels in software, it becomes much easier to put together these types of solutions."

 The mission of the Eclipse IoT initiative is to establish an open IoT/M2M platform that comprises a set of services and frameworks, open-source implementations of standard protocols, and an Eclipse-based IDE for simplifying IoT/M2M development. The current list of projects likely to become part of that platform includes the Paho Project, which provides scalable open-source client implementations of open and standard messaging protocols for IoT/M2M apps. That list also includes several frameworks: Kura, which is a set of Java and OSGi services commonly required for IoT gateways (I/O services, data services, cloud services, networking, etc.); Mihini, which is an open-source framework written in the Lua scripting language; OM2M, an open-source implementation of the ETSI M2M standard; and the Wakaama Project, which will provide a C portable framework for building LWM2M clients and/or servers.

There's also SmartHome  (named by Captain Obvious), which is a framework for building smart home solutions; Eclipse SCADA, which the Foundation describes as "a way to connect different industrial devices to a common communication system and post-process, as well as visualize the data to operating personnel;" and the Sandbox LWM2M Server, which provides a Web UI and a REST API to enable interaction with the registered clients. Koneki  is an M2M developer tools project that's using Lua as its primarily programming language.

 Eclipse IoT's protocol efforts are focused on providing open-source implementations of Message Queuing Telemetry Transport (MQTT), which is designed to connect "physical world devices" and networks with applications and middleware; CoAP (Constrained Application Protocol), which is a protocol specialized for use with constrained nodes and networks; and OMA LightweightM2M (LWM2M), which is an industry standard for device management of M2M/IoT devices.

 A complete list of Eclipse IoT projects is available on the Foundation Web site here.

Even better, Skerrett will give attendees of our upcoming App Dev Trends 2014 Conference  in December an in-depth look at the Eclipse IoT initiative and discuss the and the role of open source in the evolution of the Internet of Things.

Posted by John K. Waters on September 17, 2014