Skip to content

Latest commit

 

History

History
510 lines (406 loc) · 47.4 KB

README.md

File metadata and controls

510 lines (406 loc) · 47.4 KB

Awesome IoT Awesome

A curated list of IoT. Everyone can contribute here!

Framework

Library

SDK

Arduino

Low Level

  • Amazon Echo Bridge ★ 452 ⧗ 1 - Amazon Echo Bridge allows you to quickly emulate a Phillips Hue bridge, bringing the ability to seamlessly integrate an Amazon Echo into various home automation systems.
  • btstack ★ 151 ⧗ 1 - Dual-mode Bluetooth stack, with small memory footprint.
  • CocoaMQTT ★ 210 ⧗ 0 - MQTT for iOS and OS X written with Swift.
  • Devices ★ 134 ⧗ 0 - Suite of libraries for IoT devices (written in Go).
  • fauxmoESP - Belkin WeMo emulator library for ESP8266.
  • inih ★ 312 ⧗ 3 - is a simple .INI file parser written in C.
  • IoT Helpers - A library that allows to easily interact with Windows 10 IoT Core features like GPIO, I2C and SPI devices.
  • krypton ★ 7 ⧗ 35 - Embedded TLS/DTLS library, source and binary compatible OpenSSL subset
  • Ladon ★ 114 ⧗ 2 - is a library written in Go for access control policies, similar to Role Based Access Control or Access Control Lists.
  • libtuv ★ 19 ⧗ 17 - Asynchronous I/O for IoT.js and embedded system.
  • LK ★ 312 ⧗ 0 - The LK embedded kernel. An SMP-aware kernel designed for small systems.
  • Magenta ★ 286 ⧗ 0 - Magenta is a new kernel that powers the Fuchsia OS.
  • matrixssl ★ 36 ⧗ 0 - is an embedded SSL and TLS implementation designed for small footprint IoT devices requiring low overhead per connection.
  • pingo-py ★ 223 ⧗ 15 - provides a uniform API to program devices like the Raspberry Pi, BeagleBone Black, pcDuino etc. just like the Python DBAPI provides an uniform API for database programming in Python.
  • Secure Device Grid ★ 4 ⧗ 20 - Secure device-to-device communication solution for IOT.
  • simbody ★ 540 ⧗ 0 - High-performance C++ multibody dynamics/physics library for simulating articulated biomechanical and mechanical systems like vehicles, robots, and the human skeleton.
  • SmartObject ★ 8 ⧗ 2 - A Smart Object Class that helps you with creating IPSO Smart Objects in your JS apps. See also: IPSO Alliance Technical Archive.
  • Soletta ★ 96 ⧗ 2 - Soletta Project is a framework for making IoT devices. With Soletta Project's libraries developers can easily write software for devices that control actuators/sensors and communicate using standard technologies.
  • SPIFFS ★ 174 ⧗ 0 - Wear-leveled SPI flash file system for embedded devices.
  • SUSI ★ 13 ⧗ 150 - is an application framework to build interfaces for arbitrary systems.
  • uIP ★ 246 ⧗ 3 - uIP is a very small implementation of the TCP/IP stack.
  • WifiDog ★ 291 ⧗ 1 - a complete and embeddable captive portal solution for wireless community groups or individuals.
  • Windows 10 IoT Core IoT Helpers ★ 25 ⧗ 0 - his library allows to easily interact with GPIO, I2C and SPI devices in Windows 10 IoT Core.
  • XiPKI ★ 34 ⧗ 10 - eXtensible sImple Public Key Infrastructure consists of CA and OCSP responder.

App

Stroage

  • hypergolix - is programmable cloud sync -- like Dropbox, but you integrate it into your applications instead of using it from the filesystem.
  • IoTDL ★ 9 ⧗ 8 - an SQL-like language for the IoT.
  • node-iotdb ★ 19 ⧗ 61 - Easily control the Internet of Things using Semantics.

Security

  • IoTSeeker This scanner will scan a network for specific types of IoT devices to detect if they are using the default, factory set credentials.
  • trezor-crypto ★ 94 ⧗ 1 - 📙 Heavily optimized cryptography algorithms for embedded devices.

OS

  • ARM mbed ★ 629 ⧗ 0 - The ARM® mbed™ IoT Device Platform provides the operating system, cloud services, tools and developer ecosystem to make the creation and deployment of commercial, standards-based IoT solutions possible at scale.
  • Brillo - Brillo extends the Android platform to all your connected devices.
  • Contiki ★ 1813 ⧗ 0 - The Open Source OS for the Internet of Things
  • f9-kernel ★ 316 ⧗ 4 - An efficient and secure microkernel built for ARM Cortex-M cores, inspired by L4
  • FlingOS ★ 176 ⧗ 0 - An educational operating system written in C#. A great stepping stone from high to low level development.
  • Huawei LiteOS - Huawei LiteOS Kernel.
  • Hypriot ★ 54 ⧗ 13 - get you started with Docker on a Raspberry Pi in no time.
  • JanOS ★ 138 ⧗ 0 - JanOS is an operating system designed to run on the chipset of mobile phones.
  • Linino ★ 83 ⧗ 13 - Linino is a GNU/Linux distribution based on OpenWRT and maintained by DogHunter.
  • macchina.io ★ 144 ⧗ 0 - An open-source toolkit for building embedded IoT applications that connect sensors, devices and cloud services.
  • NodeOS ★ 3605 ⧗ 0 - Lightweight operating system using Node.js as userspace.
  • NuttX - is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 32-bit microcontroller environments, the primary governing standards in NuttX are Posix and ANSI standards.
  • OpenWrt ★ 230 ⧗ 173 - OpenWrt is described as a Linux distribution for embedded devices.
  • Raspbian - Raspbian is a free operating system based on Debian optimized for the Raspberry Pi hardware.
  • RIOT ★ 748 ⧗ 1 - The friendly Operating System for the Internet of Things
  • RT-Thread ★ 493 ⧗ 0 - RT-Thread is an open source real-time operating system for embedded devices from China.
  • seL4 Microkernel ★ 1344 ⧗ 1 - The world's first operating-system kernel with an end-to-end proof of implementation correctness and security enforcement is available as open source.
  • Silk ★ 74 ⧗ 2 - is a free (as in free beer) firmware for a number of smartphones based on the open-source Android operating system with a nodejs layer on top of it that makes it possible to write programs and get access to hardware aspects using only simple JavaScript.
  • Snappy Ubuntu Core - Canonical, A new, transactionally updated Ubuntu for clouds and devices.
  • TachyOS ★ 7 ⧗ 82 - is the RTOS based on microkernel architecture which includes only minimal components like thread / synchronization, memory management, inter-thread communication while supporting execution context / address space isolation(protection) and extensible modular interface.
  • TinyOS ★ 543 ⧗ 0 - designed for low-power wireless devices, such as those used in sensor networks, ubiquitous computing, personal area networks, smart buildings, and smart meters.
  • Tock OS ★ 243 ⧗ 1 - is an operating system designed for running multiple concurrent, mutually distrustful applications on Cortex-M based embedded platforms.
  • trochili ★ 75 ⧗ 6 - A small RTOS optimized for the embedded/iot devices. Support Cortex M3.
  • Zephyr ★ 12 ⧗ 5 - is a small, scalable real-time operating system for use on resource-constrained systems supporting multiple architectures.

Platform

  • [DeviceHive] (https://github.com/devicehive) - IoT Data Platform. Wide range of connectivity options, device management, security and data processing.

  • [thing-it-node] ★ 20 ⧗ 3 - A device-independent IoT platform including support of complex event processing, storyboards, and a mobile app.

  • Clavin ★ 212 ⧗ 2 - Calvin is 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.

  • IoT.js ★ 921 ⧗ 0 - Platform for Internet of Things with JavaScript.

  • IoTgo ★ 173 ⧗ 0 - is an open source IoT platform, like WordPress, ZenCart and all other open source software, you can deploy your own IoTgo cloud service.

  • Jasper - Jasper is an open source platform for developing always-on, voice-controlled applications.

  • Lan ★ 105 ⧗ 0 - Internet of Things Server Layer with CoAP, WebSocket, MQTT, HTTP Protocol

  • Mainflux ★ 33 ⧗ 3 - Mainflux is an open source and patent-free IoT cloud platform based on microservices.

  • Mongoose IoT ★ 487 ⧗ 0 - is a full-stack IoT platform including firmware and cloud components available for ESP8266.

  • Pagenodes ★ 99 ⧗ 0 - Completely Browser Based IOT Platform, A Chrome Progressive Web App.

  • Particle(Spark) - Particle (formally Spark) is a complete, open source, full-stack solution for cloud-connected devices.

  • PlatformIO ★ 980 ⧗ 0 - PlatformIO is a cross-platform code builder and the missing library manager.

  • ThingEngine ★ 3 ⧗ 0 - An open source platform for IoT rules that you can execute anywhere you want.

  • Undercontrol ★ 22 ⧗ 0 - Simple realtime IoT Platform with MQTT and Web-sockets support

IoT Clouds

IIoT Clouds

APIs

  • Qeo Tinq ★ 6 ⧗ 392 - Tinq is completely based on the Qeo publish/subscribe framework produced by Technicolor as explained in the license section.

Middleware

  • Kaa ★ 234 ⧗ 0 - Kaa open-source middleware platform for building, managing, and integrating connected products with the Internet of Everything.
  • Meact ★ 6 ⧗ 43 - task is to get metric from external stuff, write it to and perform various action.
  • OpenIoT ★ 205 ⧗ 0 - The OpenIoT middleware infrastructure will support flexible configuration and deployment of algorithms for collection
  • SiteWhere ★ 61 ⧗ 0 - SiteWhere open-source IoT platform for device connectivity & management, data persistence, processing, integration, and analytics -- both in cloud and on-premise.
  • ThingSpeak ★ 743 ⧗ 0 - ThingSpeak is an open source "Internet of Things" application and API to store and retrieve data from things using HTTP over the Internet or via a Local Area Network.

Toolkits Include Non-OS

Layered architecture of JTAG interface and TAP support

Data Visualization

Hardware

  • APixel ★ 8 ⧗ 31 - APixel is a combination of a ESP8266 dev board with a WS2812B (Addressable RGB) LED all in one.
  • Arduino - open-source electronics platform based on easy-to-use hardware and software.
  • Arduino ZERO - This board aims to provide a platform for innovative projects in smart IoT devices, wearable technology, high-tech automation, crazy robotics, and much more.
  • BeagleBone - BeagleBone Black is a low-cost, community-supported development platform for developers and hobbyists.
  • Bitsy Bits ★ 3 ⧗ 36 - is an IoT composite project. This means it has all parts to implement the full user experience.
  • Carloop ★ 6 ⧗ 0 - Make apps for your car using signals from OBD-II, CAN and GPS. Publish data online using the Particle platform.
  • Cheapduino - CheapDuino is the most cheapest Arduino compatible processor in the world.
  • ESP8266 Smartwatch ★ 39 ⧗ 0 - ESP8266 DIY WiFi Smartwatch with MPU-9250, RTC, OLED, FT232, ...
  • Intel Galileo - Galileo is a microcontroller board based on the Intel® Quark SoC X1000 Application Processor, a 32-bit Intel Pentium-class system on a chip
  • Microduino - Microduino is about the size of a quarter and less than half the size of the original Arduino board.
  • NodeMCU - a firmware based on ESP8266 wifi-soc.
  • Powerduino ★ 53 ⧗ 102 - A fully programmable power strip with energy monitoring and wireless connectivity.
  • PULPino ★ 201 ⧗ 0 - PULPino is an open-source microcontroller system, based on a small 32-bit RISC-V core developed at ETH Zurich.
  • Raspberry Pi - a tiny and affordable computer that you can use to learn programming through fun, practical projects
  • SquareWear - An Open-Source Arduino-based Wearable Microcontroller
  • Tessel - Tessel is a completely open source and community-driven IoT and robotics development. platform.
  • Wemos - Very-cheap firmware based on ESP8266 wifi-soc.
  • Widora ★ 15 ⧗ 21 - Widora is open source WiFi development hardware prototype with sound card based on MT7688A running OpenWrt.

Home Automation

  • CK.HomeAutomation ★ 15 ⧗ 9 - The first open source Home Automation SDK for Windows 10 IoT Core.
  • Eclipse SmartHome - Smart Home adoption will only gain momentum if the different devices can be connected into over-arching use cases, but currently the market for Smart Home systems and IoT gadgets is heavily fragmented.
  • heimcontrol.js ★ 1306 ⧗ 4 - Home-Automation with node.js and Raspberry PI
  • home-assistant ★ 3237 ⧗ 0 - Open-source home automation platform running on Python 3
  • home.pi ★ 145 ⧗ 1 - Home Automation with AngularJS and MQTT on a Raspberry Pi
  • Homebridge ★ 3030 ⧗ 0 - Homebridge is a lightweight NodeJS server you can run on your home network that emulates the iOS HomeKit API.
  • Magic Mirror ★ 503 ⧗ 0 - A ⚡Magic Mirror⚡ powered by a UWP Hosted Web App.
  • Mozilla Smart Home ★ 4 ⧗ 8 - offers a middle ground between "in a box" solutions like Apple Homekit and DIY solutions like Raspberry Pi
  • Ninja Blocks - Smart home controller. A computer for the coffee table.
  • openHAB ★ 2536 ⧗ 0 - a vendor and technology agnostic open source automation software for your home.
  • [openhab 2](https://github.com/openhab/openhab 2) - The open Home Automation Bus (openHAB) project aims at providing a universal integration platform for all things around home automation.
  • pimatic ★ 313 ⧗ 0 - A home automation server and framework for the raspberry pi running on node.js
  • Pimatic ★ 362 ⧗ 0 - A home automation server and framework for the raspberry pi running on node.js.
  • PrivateEyePi - Home Automation and Monitoring Projects for Raspberry Pi
  • RaZberry - RaZberry brings Z-Wave to the Raspberry PI platform.
  • Smart Mirror ★ 1181 ⧗ 0 - The fairest of them all. A DIY voice controlled smart mirror with IoT integration.
  • Vör ★ 31 ⧗ 2 - is open source software and hardware for turning your open office into an open, real-time map for finding people, open work places and current events.

IDE

Robotics

Others

  • Corto ★ 15 ⧗ 4 - Corto is a tested, proven architecture for normalizing data from different technologies into one view regardless of location, format or datamodel.
  • Emul8 ★ 50 ⧗ 71 - is an emulator of various embedded systems. With Emul8 you can develop embedded software entirely in a virtual environment that runs within your PC.
  • fluent-bit ★ 90 ⧗ 4 - is a data collector for Linux, Embedded Linux, OSX and BSD family operating systems.
  • Kamanja ★ 21 ⧗ 1 - is an open-source continuous decisioning engine that is hardened for enterprise reliability requirements, scalable to IoT level data volumes, and enables low latency use cases.
  • Kuzzle ★ 267 ⧗ 0 - Open-source Back-end, self-hostable & ready to use - Real-time, storage, advanced search - Web, Apps, Mobile, IoT.
  • Node-RED ★ 2513 ⧗ 0 - A visual tool for wiring the Internet of Things.
  • RemoteDebug ★ 17 ⧗ 11 - A library to remote debug over telnet connection!
  • vorto ★ 32 ⧗ 3 - is a toolset that lets you describe devices using a simple language and share these descriptions, so-called Information Models, in a centralized Vorto Repository.

Language

  • ELIoT ★ 76 ⧗ 48 - Extensible Language for Everyday (and the Internet of Things)
  • eLua ★ 393 ⧗ 1 - Quickly prototype and develop embedded software applications with the power of Lua and run them on a wide range of microcontroller architectures.
  • JerryScript ★ 1244 ⧗ 0 - A JavaScript engine for Internet of Things.
  • luvit ★ 2237 ⧗ 0 - Node.JS for the Lua Inventor.
  • MicroPython ★ 3070 ⧗ 0 - MicroPython is a lean and fast implementation of the Python 3 programming language that is optimised to run on a microcontroller.
  • Terra ★ 1248 ⧗ 0 - is a low-level system programming language that is embedded in and meta-programmed by the Lua programming language.
  • V7 ★ 576 ⧗ 0 - V7 is a JavaScript engine written in C. It makes it possible to program Internet of Things (IoT) devices in JavaScript.

Others

Protocol Library

MQTT

CoAP

Spark

WeMo

Lora

  • LoRa Server - LoRa Server is an open-source LoRaWAN network-server.
  • LoRa Gateway Bridge - is a service which abstracts the packet_forwarder UDP protocol running on most LoRa gateways into JSON over MQTT.
  • LoRaPI - Raspberry PI Lora Gateway/Node for RFM92/95/96/98/69HCW Modules.

Fork

Hardware Com

NFC

Serial

Others

Software

  • Copper ★ 46 ⧗ 14 - A Firefox add-on to browse the Internet of Things
  • Processing ★ 2644 ⧗ 0 - Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts.

Tools

  • Paho - The Paho project provides open-source client implementations of MQTT and MQTT-SN messaging protocols aimed at new, existing, and emerging applications for Machine‑to‑Machine (M-2-M) and Internet of Things (IoT).
  • Smart.js ★ 487 ⧗ 0 - Embedded Javascript engine for C/C++ with networking, file, database and device interfaces

Voice

  • chelexa ★ 2 ⧗ 25 - Natural voice recognition IoT cloud chess solution via the Amazon Echo platform.

Resources-Websites-Projects

Course

WebSite

  • Hackday - Discover. Get inspired. Repeat. Hack things for the better.
  • IBM IoT - IBM DeveloperWorks for IoT
  • Infoq IoT Weekly - Weekly IoT News, Open Source Project, Hardware
  • Instructables - tech - Explore the Biggest How To and DIY community where people make and share inspiring, entertaining, and useful projects, recipes, and hacks.
  • Makezie - DIY Projects and Ideas for Makers.

Blog

Group

GitHub Org.

Free Book

Related Resources Projects

Tutorial

AI

Analytics

Others

Contributing

Your contributions are always welcome! Please submit a pull request or create an issue to add a new framework, library or software to the list. Do not submit a project that hasn’t been updated in the past 6 months or is not awesome.