2017 is round the corner
...and it's time to build a checklist of New Year resolutions. And I am sure one resolution is common among all the IoT developers — contributing to open source IoT projects. If you are looking for interesting open source IoT projects to contribute to, I have compiled a list of 17 open source IoT projects where you can find something interesting to work on!
- Eclipse Kura
- ThingSpeak
- Time scaling
- Averaging
- Median
- Summing
- Rounding
- Zetta
- Open Hybrid
- Casa Jasmina
- Node-RED
- Wio Link
- OpenThread
- Macchina.io
- The Physical Web
- DragonBoard™ 410c
- Robotics
- Cameras
- Medical Devices
- Vending Machines
- Smart Buildings
- Digital Signage
- Casino Gaming Consoles
- Netbeast
- Ubuntu Core Snappy
- IoTivity
- AllJoyn (AllSeen Alliance)
- FarmBot
- Kaa Project
Eclipse Kura is a platform for building IoT gateways. It enables remote management of gateways and provides APIs for writing and deploying your own IoT applications. It runs on Java Virtual Machine and uses OSGi. APIs offered by Eclipse Kura give easy access to underlying hardware such as serial ports, GPS, watchdog, USB, GPIOs, and I2C. Eclipse Kura simplifies network configuration, communication with servers, and remote gateway management with the help of OSGi bundles.
Languages: Java, HTML, C, Shell, C++, JavaScript
License: Eclipse Public License - v 1.0
ThingSpeak is an IoT platform and API for data collection and analytics. It serves as a bridge connecting edge node devices with data analysis tools.
It supports numeric data processing such as:
ThingSpeak also integrates with MATLAB.
Languages: Ruby, HTML, JavaScript, CSS
License: GPL Version 3
Zetta is a platform for creating IoT servers running across geo-distributed computers and cloud. Built on Node.js, it uses REST APIs, WebSockets, and reactive programming. Zetta can turn any device into an API and works with microcontrollers like Arduino and Spark Core.
Languages: JavaScript, Shell
License: MIT
Open Hybrid is a platform that combines physical objects with augmented UIs via mobile/tablet interfaces. It lets users interact with everyday devices using virtual controls.
Languages: JavaScript, C++, C
License: Mozilla Public License 2.0
Casa Jasmina is an open source smart home project combining Italian interior design with open-source electronics. Conceptualized by Bruce Sterling, it's designed as a smart apartment prototype.
Languages: Arduino, JavaScript, C, PHP, Shell
License: GNU LGPL v2.1
Node-RED is a visual tool for connecting hardware devices, APIs, and services. It includes a browser-based editor and built-in library, ideal for quick IoT app development. Built on Node.js.
Languages: JavaScript, HTML, CSS
License: Apache License V2.0
Wio Link is an ESP8266-based Wi-Fi development board. No soldering or breadboards needed — you use a mobile app to create RESTful API-based IoT projects.
Languages: C, C++, Python, HTML
License: GNU GPL v3
OpenThread is Nest Labs’ open-source implementation of the Thread protocol, focused on secure and reliable smart home device communication.
Languages: C++, Python, C, Makefile, M4, C#
License: BSD-3-Clause
Macchina.io is a toolkit for creating embedded IoT applications, combining JavaScript and C++ with support for Raspberry Pi and other Linux-based platforms.
Languages: C++, C, Objective-C, Makefile, HTML, Shell
License: Apache License V2.0
This project enables smart objects to broadcast URLs using BLE beacons. Mobile users can discover and interact with objects nearby through web links without installing apps.
Languages: Java, Objective-C, Python, HTML, Shell
License: Apache License V2.0
Find The Physical Web on Github
First development board using Snapdragon 400 series. Supports Android, Debian, and Windows 10 IoT Core. Ideal for rapid development of IoT products like:
Netbeast is an environment-agnostic IoT platform enabling inter-device communication across different brands using plugins and a universal API.
Languages: JavaScript, HTML, Shell, Java, CSS
License: GNU Public License
A lightweight OS for IoT, featuring "snaps" — transactional app packages that enable secure, upgradable systems for a variety of boards.
Languages: Shell, Go, Python, C++, C
Find Ubuntu Core Snappy on Github
IoTivity enables secure communication between connected devices across different OS and network types. Backed by Samsung and Intel.
Languages: C++, C, Shell, JavaScript, Python
License: Apache License V2.0
AllJoyn provides an open framework for devices to discover, communicate, and collaborate regardless of vendor or OS. Led by Qualcomm.
Languages: C, C++, Java, Objective-C, JavaScript
License: Creative Commons
FarmBot is a drag-and-drop tool for automated gardening. Comes with a kit containing motors, belts, nozzles, and a Raspberry Pi 3.
Kaa is a powerful IoT platform for building and managing applications, offering features like configurable messaging and endpoint profiles.
Languages: Java, C, Objective-C, C++, Python, Shell
License: Apache License V2.0