The OIC’s “IoTivity” project released a v0.9.0 preview of its open source IoT framework software, with ready-to-test builds for Arduino, Tizen, and Yocto.
IoTivity is a project sponsored by the Open Internet Consortium (OIC), an industry association formed last July in order to develop open source standards and software for providing “interoperability and services” to potentially billions of Internet-of-Things devices.
The collaboration’s long-term goal is to produce an open-source framework and reference implementation that provide “interoperability among products and services regardless of maker and across multiple industries, including smart home, automotive, industrial automation, and healthcare.”
The first fruit of the collaboration comes in the form of an IoTivity v0.9.0 preview release that is now available for public download. Although the first complete (v1.0) IoTivity release won’t occur for several months, the preview already includes builds for Arduino, Tizen, and Yocto, as well as “getting started guides” and other documentation. Since the project’s code is designed to be portable — and is open source — additional OS support can be expected on an ongoing basis.
IoTivity Framework architecture
(click image to enlarge)
Briefly, the IoTivity framework “operates as middleware across all operating systems and connectivity platforms and has four essential building blocks,” explains the project’s website. These blocks are illustrated above, and defined as follows:
- Discovery — IoTivity discovery supports multiple discovery mechanisms for devices and resources in proximity and remotely.
- Data transmission — IoTivity data transmission supports information exchange and control based on a messaging and streaming model.
- Device management — IoTivity device management supports configuration, provisioning and diagnostics of devices.
- Data Management — IoTivity data management supports the collection, storage and analysis of data from various resources.
In addition to these four essential building blocks, the IoTivity framework implements numerous IoT services, including functions such as a Protocol Plugin Manager, Soft Sensor Manager, Things Manger, and Control Manager.
Lower-level functions contained in the v0.9.0 code of the preview release include device discovery, connectivity, messaging, resource management, sensor management, protocol management, notification management, device presence detection, resource discovery, and many more. The full list is here.
IoTivity Stack diagram
(click image to enlarge)
In light of the ever-expanding quantity and diversity of IoT devices, “the challenge for the IoT ecosystem is to ensure these emerging IoT devices can connect securely and reliably to the Internet and to each other,” states the IoTivity project’s website. Accordingly, the project’s goal is to “bring together the open source community to accelerate the development of the framework and services required to connect these billions of devices.”
Although IoTivity is tasked with developing a reference implementation of the OIC’s standard specifications, the project “will not be limited to those requirements,” it says.
Participation in the project is not limited to OIC members. Everyone is welcome to download the code and documentation, and begin contributing to the project, says the project, adding: “Please join our community to help us connect the next billion devices!”
Not the only IoT game in town
Another IoT consortium — also a collaborative project hosted by the Linux Foundation — is the AllSeen Alliance, which launched about a year ago and has now surpassed 100 members. Similarly to the OIC, this group’s mission is “to enable widespread adoption and help accelerate the development and evolution of an interoperable peer connectivity and communications framework based on AllJoyn for devices and applications in the Internet of Everything.” (Would that acronym be “IoE?)
At CES last week the Allseen Alliance unveiled the AllJoyn Gateway Agent, an AllJoyn framework extension said to provide remote access, device management, and fine-grained security and privacy controls. The Gateway Agent can be installed on Linux- or OpenWRT-based WiFi routers, automation hubs, and other devices, in order to provide “connectivity, interaction, and integration over a variety of protocols,” says the group. The Agent Agent also enables persistent remote connections without requiring special firewall or port settings.
And as if that’s not enough, there’s also an Industrial Internet Consortium that’s developing an IoT framework focused on supporting industrial applications in five sectors: energy, health care, manufacturing, transportation, and government.
The IoTivity IoT framework is released under the terms of the Apache License 2.0. It’s sponsored by the Open Interconnect Consortium (OIC) and hosted by the nonprofit Linux Foundation as “Linux Foundation Collaborative Project.” Further details and downloads are available from the IoTivity project website. An informative OIC FAQ is available here.