IoT Open Source
Discover the best IoT related Open Source tools, projects and platforms...
The open source movement is in some ways the spiritual core of the Internet, encompassing much of the hardware, software, and protocols that make up the global communications infrastructure — as well as championing openness, transparency, and the power of collaborative development.
This Channel Guide will help you:
- Track down open source tools based on function (cloud platform, hardware, os, middleware, etc).
- Discover innovative Raspberry Pi IoT projects using their built-in Wifi and Bluetooth capabilities and communication and sensor shields.
11/01/2019
Featured
Highlights
- Open Source
- Hardware Integrations
- Licensed under Apache Software License 2.0
- Horizontally scalable - can handle millions of devices
User & Technical
Software & Tools
NODE-RED
"A tool for wiring together hardware devices, APIs and online services in new and interesting ways."
Additional
- Calvin
"An application environment that lets things talk to things. It comprises of both a development framework for application developers, and a runtime environment that handles the running application." - Cyclon
"A JavaScript framework for robotics, physical computing, and the Internet of Things. It makes it incredibly easy to command robots and devices."
OS
- Brillo
"Brings the simplicity and speed of software development to hardware for IoT with an embedded OS, core services, developer kit, and developer console." - Contiki
Relay Infrastructure
Messaging
- NATS
"Acts as a central nervous system for distributed systems such as mobile devices, IoT networks, enterprise microservices and cloud native infrastructure." -
"Client implementations of MQTT and MQTT-SN messaging protocols"
Information / Semantic Models
- Eclipse Vorto
- IoTDB
- oneIoTa
"Created by the Open Connectivity Foundation (OCF) to encourage the design of interoperable device data models for the Internet of Things. The web-based oneIoTa tool enables users to create simple models for any Internet of Things device (using RAML and JSON) in a matter of minutes."
Comms / Networking
- OpenThread
"An open-source implementation of the Thread networking protocol."
-
"The open beacon format from Google"
- PhysicalWeb
"A discovery service: a smart object broadcasts relevant URLs that any nearby device can receive. "
Middleware
- OpenIoT
"A joint effort of prominent open source contributors towards enabling a new range of open large scale intelligent IoT (Internet-of- things) applications according to a utility cloud computing delivery model." -
"Provides a communication stack for embedded devices based on IPv6, Web services and oBIX to provide interoperable interfaces for smart objects."
Gateways
- Little IoT Agent (liota)
- Eclipse Kura
- Macchina.io
Databases
- InfluxDB
"An open source database written in Go specifically to handle time series data with high availability and high performance requirements."
APIs
- DreamFactory
"An open source REST API backend for mobile, web, and IoT applications"
Analytics
Mobile Applications
- Evothings
"Evothings is a mobile application enabler for the Internet of Things industry, helping developers and technologies in need to create and prototype mobile apps." - NetBeast
"Netbeast abstracts implementation specifics of smart home product APIs and provides a unique API that works with all of them."
Dashboards
- Freeboard
"Ridiculously simple dashboards for your devices."
Updates
- Eclipse hawkBit
"Develop a domain independent back end solution for rolling out software updates to constrained edge devices as well as more powerful controllers and gateways connected to IP based networking infrastructure. "
AI / Interface
- MyCroft
"Mycroft uses open software to process natural language, determine your intent and take action."
Payments / Blockchain
- 21
"An open source Python library and command line interface for quickly building machine-payable web services."
IoT Software
Looking for other Internet of Things software vendors and tools?
Hardware
Additional
Processor Level
- PULPino
An open-source microcontroller system, based on a small 32-bit RISC-V core developed at ETH Zurich.
IoT Hardware
Looking for more open source hardware platforms?
Raspberry Pi IoT
RASPBERRY PI + ALEXA
"This project demonstrates how to access and test the Alexa Voice Service using a Java client (running on a Raspberry Pi), and a Node.js...
TINGBOT
"Transform your Pi into a platform for creative applications."
Additional
- Hackaday: Raspberry Pi + Wolfram Data Drop
- Adafruit: DIY WiFi Raspberry Pi Touchscreen Camera
- Weather Station with RasPi and Google BigQuery | Kaz Sato | 7/17/2015
- IBM Developer Works: Weather Prediction with Node-Red, forecast.io and a Raspberry Pi | Dom Bramley
- IBM DeveloperWorks: Build a remote surveillance app using Bluemix, Cloudant, and Raspberry Pi | 6/30/2014
Raspi IoT
Looking for more Internet of Things Raspberry Pi projects and tools?
Products & Projects
Smart Thermostat from Spark Core
Many people hailed Google’s $3.2 billion acquisition of connected thermostat maker Nest earlier this month as proof of the immense importance and value of the Internet of Things. But the team at WiFi chip maker Spark, while praising Nest as “the first company to figure out what the ‘Internet of Things’ means to consumers and deliver products that people actually want,” took the announcement as something of a challenge. Using their own Spark Core and some off-the-shelf components, they built a prototype of a Nest-like smart thermostat in just a few hours.
The point wasn’t to one-up Nest or to devalue the work that went into designing that company’s signature product. Rather, Spark wanted to show how easy it is to develop IoT products today, as a demonstration of how far the industry has come since Nest was founded in 2010.
“Nest had to spend millions of dollars on R&D to build the basic infrastructure behind the product,” the Spark team wrote in a blog post documenting their attempt to replicate Nest’s work in a single day.
It’s a striking contrast. All Spark had to do was clip a few sensors and other components to a breadboard, use a CNC mill and laser cutter to carve out a wood and acrylic housing, and spend a few hours coding the firmware. Other functions, like the ability to control the thermostat from a smartphone or provide a learning algorithm so it adjusts to usage patterns, were provided by the Spark Cloud service communicating with the prototype over wifi via a REST API.
Spark spent only $70 to replicate the basic functions of the Nest — but they readily admit that, as a rough prototype, their version is nowhere near as polished.
“In this process, we’ve come to respect the incredible technical challenges that Nest has solved while also coming to understand how much the game has changed since they first started,” Spark wrote.
The recent proliferation of cloud services, APIs, and small chips that integrate processors with wireless connectivity has made it relatively trivial for even low-budget tinkerers to develop powerful, innovative products. Nest’s partnership with Google undoubtedly places it at the top of the Internet of Things ladder — but there’s clearly a lot of room at the bottom, and Spark’s experiment proves just how easy it is to grab a handhold and start hoisting yourself up.
Want to give it a shot? Spark made their connected thermostat design completely open-source, and you can grab the source code at Github.
Open Source Bluetooth scale
Jorge Pinto (Casainho) decided he wanted to lose some weight. For some additional motivation he enabled himself to track his progress over time online using an Android phone, a cheap bathroom scale (20€) and by adding Bluetooth connectivity to the scale.
Features:
The project is created using ($75 Estimate):
- Digital bathroom scale: $20
- ARM LPC2103 microcontroller board: $15.6
- Bluetooth serial module: $6.6
- 16×2 LCD: $15
- batteries and support: $5
- Various items like wires, etc: $12.5
Originally Jorge utilized two OpenSource Android programs for logging the weight data (Weight Chart and Droid Weight) but has since created his own app on the market for the system called Smart Weight Chart.
He is sharing the firmware, software and pictures of the project on his github account: https://github.com/casainho/Smart-Scale and is actively looking for other developers to help him create a fully Open Source wireless scale system.
The complete project write-up and history can be found here.
Visualight: open-source Wi-Fi enabled light bulb
What if you could visualize data as colored light, and blend this functionality into your everday life? With some unfortunate timing being released after the blow up press for LIFX comes an open-source and functional WiFi lightbulb alternative from creator Leif Percifield called the Visualight.
Some of you might be familiar with Leif’s work as the creator of the social water quality monitoring project for the New York Harbor DontFlushMe, the Visualight project acts as an extension of that project and a part of his MFA thesis work done at Parsons New School.
Out of the box the Visualight system connects to data feeds from Twitter, Gmail, Facebook, Weather Underground, the New York City’s MTA (subway & buses), NOAA Tide Predictions as well as any data feed available on COSM. The Visualight can be set to display any combination shade of Red, Green, and Blue that you can think of for your alerts, or can be turned on and off by these datafeeds or directly from your smartphone/tablet. When there are no alerts incoming, the Visualight acts just like any other lightbulb and glows white.
To expand beyond these built-in data feed examples, developers will also be able to add their data sources through the projects API. The code for the system will be available as open source and posted to Github for your viewing pleasure.
Find out more details or back the project for its next stage of development on Kickstarter at: http://www.kickstarter.com/projects/leifp/visualight
Supla
Supla is an open-source way to add Internet-connected features to the infrastructure of any building. It consists of software libraries for setting up your own automation modules, mobile apps for controlling them from your smartphone, and a cloud service to manage the back-end setup — all free to use.
It’s a very DIY approach, with the assumption that users will be comfortable building their own electronics projects from scratch. To get started you’ll need a Raspberry Pi, Arduino or ESP8266development board; Supla offers software packages for each system. Then you can wire up sensors and actuators to automate lighting, garage doors, window blinds, door locks, appliances and other building elements.
Mobile apps are available for Android and iOS, and Supla’s creators are providing a free cloud service so you can access and control your devices from anywhere with an Internet connection. They’ve also released the source code for setting up your own Supla server.
The requirement for tinkering may be a barrier to some, but Supla’s open-source approach offers a more flexible alternative to traditional building automation systems, which have to be installed during construction. It also has potential as a more unified solution than cobbling together a smart building from a mish-mash of standalone retail products.
Visit Supla’s GitHub page to grab the software packages, and check out the forum for ideas and support from the developer community.
OpenMV Cam: IoT Machine Vision
Religious philosophers have long pointed to the eye as evidence for “Intelligent Design”: an organ so complex and intricate that the component parts couldn’t possibly have evolved and come together in just the right way to provide vision through a mere accident of nature. When our inevitable robot overlords start to have a similar conversation about their own origins and capacity for eyesight, maybe they’ll point to OpenMV Cam.
“Machine vision” technologies are nothing new. Digital cameras have been around for decades, and we’re all familiar with software that can recognize elements of digital images like faces, text, and QR codes. But OpenMV Cam puts it all in one place, creating a self-contained development board that can give eyes to any device.
The board includes a microprocessor, a 2-megapixel camera with interchangeable lenses, a pair of infrared LEDs for night vision, and servo headers for controlling tripods and other motors. Developers can expand its capabilities with “shield” modules that add Wi-Fi connectivity, an LCD screen, or infrared heatmap overlays.
Built-in software provides all the building blocks for face recognition, object tracking, recording and streaming video, and other tasks. Developers program OpenMV Cam’s behavior with short Python scripts.
OpenMV Cam is an open-source project released under the MIT license, and the code is available on Github for developers to dig into and collaborate on improvements. As the creators write at Kickstarter: “OpenMV Cam can do a lot right now, but as a community, working together, we can revolutionize machine vision for hobby electronics, education, and artistic pursuits.”
Platforms
Additional
- Zetta
"built on Node.js for creating Internet of Things servers that run across geo-distributed computers and the cloud."
Open Source IOT Cloud Platforms
Looking for more IoT cloud platform options?
Organizations
Additional resources
Background Articles
- InfoQ: Open Source as a Driver of Internet of Things | Gilles Gravier | 1/09/2016
- Jaxenter: A better Internet of Things through open source culture | Gordon Haff | 9/20/2015
- OpenSource: A better Internet of Things through open source culture | Gordon Haff | 07/4/2015
- NetworkWorld: Will open source save the Internet of Things? | Maria Korolov | 3/30/2015
- Why Your IoT Product Strategy Needs to Include Open Source | Ian Skerrett | 10/17/2014