Skip to content

Awesome IoT. A collaborative list of great resources about IoT Framework, Library, OS, Platform

License

Notifications You must be signed in to change notification settings

phodal/awesome-iot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome IoT Awesome

A curated list of IoT. Everyone can contribute here!

Simliar Projects

  • Awesome Azure IoT - A curated list of awesome Azure Internet of Things projects and resources.
  • Awesome Android Things - A curated list of awesome Android Things tutorials, libraries and much more at one place
  • Awesome OpenIoT - A curated list of awesome open source IoT frameworks, libraries and software.
  • Awesome IoT - A curated list of awesome Internet of Things projects and resources.

ToC

Framework

  • .NET Core IoT ★ 1193 ⧗ 292 - A set of libraries to interact with sensors, displays and input devices from .NET Core framework. This libraries allows to work with the GPIO port for various boards like Raspberry Pi and Hummingboard and contains a growing set of community-maintained device bindings for IoT components.
  • AREG SDK ★ 15 ⧗ 0 - AREG SDK is a developer-friendly, an interface-centric real-time asynchronous communication engine to enable distributed- and mist-computing, where connected Things interact and provide services, as if they act like thin distributed servers.
  • Cylon ★ 2339 ⧗ 0 - JavaScript framework for robotics, physical computing, and the Internet of Things.
  • devify-server ★ 53 ⧗ 1 - s extremely light weight, and is very easy to use. It aims to help developers to create IoT application servers, faster.
  • Epoc.js ★ 27 ⧗ 0 - This framework provides an interface to access data from the Emotiv EPOC brain sensor using Node.js.
  • ESP-IDF ★ 2542 ⧗ 0 - The official framework from Espressif to build Wi-Fi, BLE, and BT apps with ESP32.
  • FogLight ★ 10 ⧗ 100 - is a lightweight runtime that enables makers of all ages and skill levels to create highly performant apps for embedded devices like Raspberry Pis.
  • framboos ★ 75 ⧗ 3 - is a small Java wrapper around the default GPIO driver on Linux boards like Raspberry Pi and BeagleBoard.
  • Freedomotic ★ 208 ⧗ 4 - is an open source, flexible, secure Internet of Things (IoT) application framework, useful to build and manage modern smart spaces.
  • GoBot ★ 2062 ⧗ 1 - Golang framework for robotics, physical computing, and the Internet of Things.
  • Grow IoT ★ 7 ⧗ 7 - is a full javascript based IoT stack with a simple API and basic user interface.
  • guh ★ 50 ⧗ 29 - is an open source IoT (Internet of Things) server, which allows to control a lot of different devices from many different manufacturers.
  • heimcontrol.js ★ 1306 ⧗ 4 - Home-Automation with node.js and Raspberry PI.
  • IoT 433 MHz ★ 121 ⧗ 11 - IoT System to control 433 MHz RC power sockets, PIR, Door Sensors and much more.
  • IoT Edge ★ 264 ⧗ 0 - The Azure IoT Gateway SDK was our first step to enabling edge analytics in IoT solutions.
  • IoT SOL ★ 38 ⧗ 0 - The total solution that provides visual graphical programming for developing IoT applications.
  • IoTCloud 2 ★ 14 ⧗ 50 - An open source framework for IoT and Sensor Centric Applications.
  • johnny-five ★ 6024 ⧗ 0 - JavaScript Robotics and IoT programming framework, developed at Bocoup, Firmata Protocol.
  • Kura ★ 85 ⧗ 1 - an open-source framework for development of IoT applications
  • Lelylan ★ 647 ⧗ 1 - OpenSSL Source Lightweight Microservices Architecture for the Internet of Things. For developers.
  • Lightweight MQTT Machine Network ★ 21 ⧗ 1 - LWMQN is a machine network framework with MQTT. See also: IPSO Alliance Technical Archive.
  • Liota ★ 162 ⧗ 2 - is an open source offering for IoT solution developers and resides primarily on IoT gateways.
  • OpenDevice ★ 23 ⧗ 8 - Open IoT (Internet Of Things) Platform and Framework.
  • Pando Cloud ★ 75 ⧗ 2 - is the cloud part of Pando IoT solution. It's made of a bunch of tools, protocols and frameworks below: Pando Cloud, Pando Embedded Framework, Pando Protocol as so on.
  • Pingo ★ 211 ⧗ 0 - Generic API for controlling boards with programmable IO pins.
  • PolyMCU ★ 84 ⧗ 2 - has been designed from the beginning to be as flexible as possible: host OS independent, support any toolchain, any RTOS, any micro-controller vendor SDK.
  • rpi-gpio.js ★ 221 ⧗ 5 - Control Raspberry Pi GPIO pins with node.js.
  • SensorBee ★ 54 ⧗ 33 - Lightweight stream processing engine for IoT
  • Serverless ★ 7951 ⧗ 0 - Serverless is the application framework for building web, mobile and IoT applications exclusively on Amazon Web Services' Lambda and API Gateway.
  • Simgrid ★ 46 ⧗ 53 - is a scientific instrument to study the behavior of large-scale distributed systems such as Grids, Clouds, HPC or P2P systems.
  • Sming ★ 1800 ⧗ 0 - Sming is an asynchronous C/C++ framework with superb performance and multiple network features. Sming is open source and is tailored towards embedded devices.
  • Thingsboard IoT Gateway ★ 463 ⧗ 246 - open-source IoT Gateway - integrates devices connected to legacy and third-party systems with Thingsboard IoT Platform using OPC-UA and MQTT protocols.

Library

SDK

Arduino

Low Level

App

  • Cordova BLE ★ 149 ⧗ 3 - Bluetooth Low Energy plugin for Cordova
  • Cordova MQTT Plugin ★ 24 ⧗ 11 - MQTT Cordova Plugin for Apache Cordova
  • IOT Espressif Android ★ 46 ⧗ 1 - is used to control ESP8266 device by Android pad or phone.
  • MQTTX ★ 12 ⧗ 0 - MQTTX is a cross-platform MQTT desktop client open sourced by EMQ, which supports macOS, Linux, and Windows. It allows users to quickly and easily test MQTT / MQTTS connections, publish and subscribe to MQTT messages.
  • PhoneGap NFC ★ 312 ⧗ 2 - PhoneGap NFC Plugin
  • PWAify ★ 269 ⧗ 8 - Experimental project to convert your PWA (Progressive Web App) into a cross-platform Electron app. Brings PWAs to your desktop.
  • Summon ★ 7 ⧗ 52 - A platform for mobile devices that provides a convenient and scalable mechanism for IoT device interactivity, enabled by web-based interfaces and driven by the devices themselves.
  • Theengs App Mobile BLE to MQTT and reader application compatible with over 90 Bluetooth sensors.

Storage

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.

  • nShield ★ 66 ⧗ 35 - An Easy and Simple Anti-DDoS solution for VPS,Dedicated Servers and IoT devices based on iptables.

  • Scanners-Box ★ 424 ⧗ 0 - the toolbox of open source scanners.

  • trezor-crypto ★ 94 ⧗ 1 - 📙 Heavily optimized cryptography algorithms for embedded devices.

OS

  • Mynewt is an open-source operating system for tiny embedded devices. Its goal is to make it easy to develop applications for microcontroller environments where power and cost are driving factors.

  • Amazon FreeRTOS ★ 842 ⧗ 0 - is an operating system for microcontrollers that makes small, low-power edge devices easy to program, deploy, secure, connect, and manage.

  • 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.

  • Armbian - Debian based Docker enabled lightweight Linux for popular development boards. Optimised for embedded usage.

  • 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 ★ 341 ⧗ 3 - Huawei LiteOS Kernel.

  • Hypriot ★ 253 ⧗ 62 - HypriotOS for the Raspberry Pi is a Debian-based Container OS optimized for Docker.

  • 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.

  • Lua-RTOS-ESP32 ★ 131 ⧗ 2 - is a real-time operating system designed to run on embedded systems, with minimal requirements of FLASH and RAM memory.

  • 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.

  • pikoRT ★ 164 ⧗ 5 - A tiny Linux-like real-time kernel optimized for ARM Cortex-M chips.

  • 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

  • RMP ★ 19 ⧗ 8 - A single-file rapid development RTOS for IoT with integrated graphics.

  • 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.

  • TinyAra ★ 35 ⧗ 1 - is a lightweight RTOS-based platform to support low-end IoT devices.

  • 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 ★ 352 ⧗ 5 - is a small, scalable real-time operating system for use on resource-constrained systems supporting multiple architectures.

Android Things

Voice Controller

Platform

  • [thing-it-node] ★ 20 ⧗ 3 - A device-independent IoT platform including support of complex event processing, storyboards, and a mobile app.
  • ActorCloud ★ 32 ⧗ 0 - ActorCloud is an IoT platform that provides one-stop platform services for enterprises with low-power IoT networks. It provides multiple protocol access, message flow management, data parsing and data processing capabilities for devices on a secure and reliable basis.
  • Astarte ★ 19 ⧗ 0 - Astarte is an Open Source IoT platform written in Elixir. It is a turnkey solution which packs in everything you need for connecting a device fleet to a set of remote applications. It performs data modeling, automated data reduction, real-time events, and provides you with any feature you might expect in a modern IoT platform. Right now, Linux and ESP32 devices are supported out of the box using the provided SDKs.
  • Blynk ★ 716 ⧗ 0 - is a platform with iOS and Android apps to control Arduino, ESP8266, Raspberry Pi and the likes over the Internet.
  • 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.
  • DeviceHive - IoT Data Platform. Wide range of connectivity options, device management, security and data processing.
  • embARC Open Software Platform (OSP) ★ 23 ⧗ 9 - is a software distribution aimed at facilitating the development of embedded systems based on ARCv2 Processors.
  • flowchain-app ★ 22 ⧗ 50 - A Flowchain plugin that provides the flow-based programming (FBP) engine.
  • GrovePi ★ 330 ⧗ 0 - is an open source platform for connecting Grove Sensors to the Raspberry Pi.
  • HiveMQ ★ 329 ⧗ 0 - is an open source MQTT platform and MQTT broker.
  • Hologram - Open source, full stack platform with standalone devices and usb plug in. Offers a free developer tier.
  • 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.
  • KERBEROS.IO Web ★ 176 ⧗ 16 - a GUI to configure the machinery and to view events that were detected by the machinery.
  • Kitnic ★ 124 ⧗ 0 - A registry for ready to build open hardware electronics projects.
  • Lan ★ 105 ⧗ 0 - Internet of Things Server Layer with CoAP, WebSocket, MQTT, HTTP f
  • Mainflux ★ 33 ⧗ 3 - Mainflux is an open source and patent-free IoT cloud platform based on microservices.
  • Mobius ★ 46 ⧗ 2 - is the open source IoT server platform based on the oneM2M standard.
  • Mongoose IoT ★ 487 ⧗ 0 - is a full-stack IoT platform including firmware and cloud components available for ESP8266.
  • Nebula - A docker orchestrator designed to manage IoT devices
  • 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.
  • PharoThings ★ 37 ⧗ 29 - is a Live programming platform for IoT projects based on Pharo.
  • PlatformIO ★ 980 ⧗ 0 - PlatformIO is a cross-platform code builder and the missing library manager.
  • Siemens MindSphere - Open, cloud-based IoT operating system (uses OPC UA as communication standard) from Siemens which is extensible with services.
  • ThingEngine ★ 3 ⧗ 0 - An open source platform for IoT rules that you can execute anywhere you want.
  • Thingsboard ★ 5102 ⧗ 1700 - Open-source IoT Platform - Device management, data collection, processing and visualization.
  • Toit ★ 961 ⧗ 67 - The Toit platform combines the functionality of serving your devices in a robust, resilient way, and letting you have control over your devices and your data, as well as ready-to-use over-the-air firmware and application updates on your network-connected embedded devices.
  • United Manufacturing Hub ★ 9 ⧗ 0 - The Open-Source Manufacturing App Platform (combines various open source solutions and packages them in a Helm chart, for example nodered, VerneMQ and timescaleDB)
  • Fuxa SCADA/HMI/Dashboard ★ 2115 ⧗ 632 - FUXA is a web-based Process Visualization (SCADA/HMI/Dashboard) software. With FUXA you can create modern process visualizations/dashboards with individual designs for your machines/IOT application with real-time data display. Supports MQTT, OPC-UA, Modbus RTU/TCP, Siemens S7 Protocol, BACnet IP, Ethernet/IP (Allen Bradley), WebAPI

IoT Clouds

IIoT Clouds

APIs

  • OGC SensorThings API ★ 21 ⧗ 15 - The OGC SensorThings API is an OGC standard specification for providing an open and unified way to interconnect IoT devices, data, and applications over the Web
  • Qeo Tinq ★ 6 ⧗ 392 - Tinq is completely based on the Qeo publish/subscribe framework produced by Technicolor as explained in the license section.
  • OpenCage - provide a reverse geocoding API based on open data for high volume conversion of device coordinates (lat,lon) into useful location information (address, timezone, etc).

Middleware

  • Kaa ★ 234 ⧗ 0 - Kaa open-source middleware platform for building, managing, and integrating connected products with the Internet of Everything.
  • Kuzzle ★ 502 ⧗ 0 - An open-source backend with advanced features like real-time pub/sub or geofencing and a multiprotocol interface that supports MQTT, LoRaWAN and more. (Website)
  • 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.
  • t6 ★ 21 ⧗ 4 - Data-first IoT platform to connect physical Objects with time-series DB and perform Data Analysis.
  • 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.\
  • Shifu ★ 312 ⧗ 0 - Shifu is a Kubernetes native IoT development framework that supports multi-protocol device access.
  • Zilla - A Multi-protocol event-native edge/service proxy that supports standard protocols such as HTTP, SSE, gRPC, MQTT and the native Kafka protocol.

Toolkits Include Non-OS

Layered architecture of JTAG interface and TAP support

  • IoT Toolkit ★ 39 ⧗ 41 - Reference implementation of the smart object API
  • iot-adk-addonkit ★ 8 ⧗ 1 - Contains command line scripts for package creation and image creation process and samples for iot products based on RPi2/MBM.
  • KinomaJS ★ 293 ⧗ 0 - A JavaScript runtime optimized for the applications that power IoT devices.
  • macchina.io ★ 144 ⧗ 0 - An open-source toolkit for building embedded IoT applications that connect sensors, devices and cloud services.
  • OpenOCD ★ 10 ⧗ 34 - OpenOCD provides on-chip programming and debugging support with a layered architecture of JTAG interface and TAP support
  • pyOCD ★ 112 ⧗ 0 - Open source python library for programming and debugging ARM Cortex-M microcontrollers using CMSIS-DAP.
  • Renode ★ 81 ⧗ 0 - a virtual development tool for multinode embedded networks.

Data Visualization

Real-time Data

  • Streamdal - An IoT-ready, Wasm-powered workflow engine you embed directly into application code for ridiculously fast, real-time data transformations.

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.
  • Floorplan for Home Assistant ★ 949 ⧗ 0 - the Home Assistant front end provides a great way of viewing and interacting with your entities.
  • 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.
  • Lumos ★ 70 ⧗ 1 - aims to change that by pairing with WiFi and uses Machine Learning to adjust the light to match your sleep schedule.
  • 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
  • MyController ★ 110 ⧗ 0 - is automation controller for home, office or any place.
  • 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.
  • 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.
  • Sonoff-HomeAssistant ★ 336 ⧗ 1 - is alternative firmware for the brilliant & cheap ($ not quality) range of Sonoff range of ESP-8266 based WiFi controlled switches.
  • 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.
  • Node-RED - Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways.
  • hkontroller - Apple HomeKit Controller implemented in Go programming language.
  • hkmobile - Apple HomeKit Controller for Android.

IDE

Robotics

Others

for embedded systems (IoT in mind).

  • AWS IoT Button logger to git ★ 4 ⧗ 2 - A beginner-friendly AWS Lambda function that logs events from IoT devices into a git repository of your choice. Written in TypeScript, tested with Jest, compiled with Parcel. Uses Azure Pipelines for CI/CD.
  • 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.
  • ESP8266 Deauther ★ 3806 ⧗ 0 - allows you to perform a deauth attack with an ESP8266 against selected networks.
  • 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.
  • Node-RED ★ 2513 ⧗ 0 - A visual tool for wiring the Internet of Things.
  • OpenMQTTGateway - BLE, 433Mhz, LoRa to MQTT gateway with hundreds of devices supported. Integrate with Home-Assistant, OpenHAB, Jeedom, Domoticz, FHEM and many more.
  • Parlay ★ 8 ⧗ 160 - is software that brings visibility and accessibility to embedded devices.
  • redzilla ★ 13 ⧗ 37 - is a service which allow to create easily instances of node-red.
  • RemoteDebug ★ 17 ⧗ 11 - A library to remote debug over telnet connection!
  • rio ★ 68 ⧗ 0 - An open source library allowing you to create an internet connected LED wall
  • Sonoff-Tasmota ★ 4869 ⧗ 0 - Provide ESP8266 based itead Sonoff with Web, MQTT and OTA firmware using Arduino IDE.
  • tinyVP ★ 12 ⧗ 48 - is a very small and lean hypervisor using MIPS R5 hardware VZ option
  • 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

  • AtomVM ★ 390 ⧗ 0 - AtomVM is a tiny portable virtual machine that allows Erlang and Elixir code to run on microcontrollers with less than 500KB of RAM such as the ESP32.
  • 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.
  • ESP Basic ★ 144 ⧗ 0 - Basic Interpreter for the ESP8266
  • 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.
  • szl ★ 100 ⧗ 0 - is a tiny, embeddable scripting engine inspired by Tcl and shell.
  • Terra ★ 1248 ⧗ 0 - is a low-level system programming language that is embedded in and meta-programmed by the Lua programming language.
  • Toitlang ★ 961 ⧗ 0 - is a high-level language that’s made to have a syntax very close to Python. As it’s built from first principles for microcontrollers, it’s at least 20x faster than MicroPython. They’ve also built a slick IDE integration.
  • V7 ★ 576 ⧗ 0 - V7 is a JavaScript engine written in C. It makes it possible to program Internet of Things (IoT) devices in JavaScript.
  • PikaScript ★ 660 ⧗ 36 - PikaScript is a extremely lightweight python engine that can run with less than 4KB of RAM such as stm32g030c8 and stm32f103c8. It is zero dependency, zero configuration, easy to deploy and expand.

Others

Protocol Library

MQTT

CoAP

Spark

WeMo

SMCP

  • SMCP ★ 55 ⧗ 0 - is an experimental CoAP-based machine-to-machine (M2M) protocol that is in the early stages of development.

Lora

OSGP

  • OSGP Platform ★ 35 ⧗ 7 - is an open, generic, scalable and independent 'Internet of Things' platform, which enables various connected smart objects in the public space to be easily controlled and monitored.

OpenThread

Others

  • Anjay ★ 16 ⧗ 23 - is a C library that aims to be the reference implementation of the OMA Lightweight Machine-to-Machine (LwM2M) device management protocol.
  • libimobiledevice ★ 2294 ⧗ 0 - A library to communicate with services of Apple iOS devices using native protocols.
  • MeQ ★ 920 ⧗ 1 - is a real-time communication service for connecting online devices.
  • OSS-7 ★ 44 ⧗ 37 - is an open source implementation of the DASH7 Alliance protocol for ultra low power wireless sensor communication.

Fork

Hardware Com

Bluetooth

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
  • Toit ★ 961 ⧗ 67 - The Toit platform combines the functionality of serving your devices in a robust, resilient way, and letting you have control over your devices and your data, as well as ready-to-use over-the-air firmware and application updates on your network-connected embedded devices.
  • ThingsOn MQTT Bench - ThingsOn MQTT Bench is a simple Cross-platform .NET Core benchmark tool for MQTT brokers. It measures the maximum number of messages that can be sent to the broker in a specified amount of time.
  • MQTT File Uploader - MQTT File Uploader is a simple Cross-platform .NET Core application that watches local directories for changes and uploads new or modified files to an MQTT broker.

Voice

  • chelexa ★ 2 ⧗ 25 - Natural voice recognition IoT cloud chess solution via the Amazon Echo platform.
  • Mycroft - Mycroft is the world’s first open source voice assistant.

Resources-Websites-Projects

Course

WebSite

  • Eclipse IoT - Eclipse Foundation IoT top level project and working group.
  • Hackaday - 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.
  • Makezine - DIY Projects and Ideas for Makers.
  • Explore IoT - A search engine 🔎 tool to discover & find a curated list of popular & new IoT libraries across all languages, top authors, trending project kits, discussions, tutorials & learning resources.

Blog

Group

GitHub Org.

Free Book

Related Resources Projects

Tutorial

Edge

  • AREG SDK ★ 15 ⧗ 0 - AREG SDK is a developer-friendly, an interface-centric real-time asynchronous communication engine to enable distributed- and mist-computing, where connected Things interact and provide services, as if they act like thin distributed servers.
  • Eden ★ 25 ⧗ 0 - CLI for Edge Virtualization Engine (EVE)
  • Project Flogo ★ 207 ⧗ 0 - is an Open Source Framework for IoT Edge Apps & Integration.

AI

  • ELL ★ 1859 ⧗ 0 - allows you to build and deploy machine-learned pipelines onto embedded platforms, like Raspberry Pis, Arduinos, micro:bits, and other microcontrollers.
  • libdeep - A deep learning library for C/C++.
  • Machinery ★ 174 ⧗ 0 - is a low-budget video surveillance solution, that uses computer vision algorithms to detect changes, and that can trigger other devices.
  • TensorFlow for Raspberry Pi ★ 317 ⧗ 0 - step-by-step instructions for installing TensorFlow from source using Bazel (which is also compiled from-scratch), as well as pre-built TensorFlow binaries.

Analytics

  • Bistro ★ 321 ⧗ 0 - light-weight batch and stream analytics engine which radically changes the way data is processed. Bistro relies on a novel column-oriented data model and is intended for IoT applications and data processing at the edge.
  • NetData ★ 18973 ⧗ 0 - is a system for distributed real-time performance and health monitoring.
  • Piwik ★ 5374 ⧗ 0 - Piwik is the leading Free/Libre open analytics platform.
  • Samsara ★ 64 ⧗ 1 - is a real-time analytics platform.

Digital Twins

  • Eclipse Ditto is the open-source project of Eclipse IoT that provides a ready-to-use functionality to manage the state of Digital Twins.

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.