# Awesome IoT

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
- Library
  - SDK
  - Arduino
  - Low Level
- App
- Storage
- Security
- OS
  - Android Things
- Voice Controller
- Platform
- IoT Clouds
- IIoT Clouds
- APIs
- Middleware
- Toolkits Include Non-OS
- Data Visualization
- Real-time Data
- Hardware
- Home Automation
- IDE
- Robotics
- Others
- Language
  - Others
- Protocol Library
  - MQTT
  - CoAP
  - Spark
  - WeMo
  - SMCP
  - Lora
  - OpenThread
  - Others
- Fork
- Hardware Com
  - NFC
  - Serial
  - Others
- Software
- Tools
- Voice
- AI
- Resources-Websites-Projects
  - Course
  - WebSite
  - Blog
  - Group
  - GitHub Org.
  - Free Book
  - Related Resources Projects
  - Tutorial
- Edge
- Analytics
- Others

## 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

- Armbian build SDK ★ 630 - for creating customized kernel and Debian based userspace for popular development boards.

- AWS IoT Arduino Yún SDK ★ 63 ⧗ 4 - SDK for connecting to AWS IoT from an Arduino Yún.

- Azure IoT Gateway SDK ★ 26 ⧗ 2 - contains the infrastructure and modules to create IoT gateway solutions.

- Cylon.js For Intel IoT ★ 29 ⧗ 40 - is a JavaScript framework for robotics, physical computing, and the Internet of Things (IoT).

- Electron ★ 41 ⧗ 16 - The Electron is a tiny cellular development kit based around U-Blox’s SARA U-series (3G) or G-series (2G) cellular modem module and a STM32F205 ARM Cortex M3 microcontroller.

- ESP8266 Arduino Core ★ 2588 ⧗ 0 - Arduino core for ESP8266 WiFi chip.

- EZ-Connect Lite SDK ★ 67 ⧗ 16 - Marvell’s Starter SDK for AWS IoT Service.

- Microsoft Azure IoT SDK ★ 203 ⧗ 1 - SDKs for a variety of languages and platforms that help connect devices to Microsoft Azure IoT services.

### Arduino

- ArduinoJson ★ 873 ⧗ 0 - An elegant and efficient JSON library for embedded systems.
- Ino ★ 874 ⧗ 1 - Ino is a command line toolkit for working with Arduino hardware.
- PJON ★ 427 ⧗ 4 - Digital communication framework for Arduino and IOT.
- Windows Remote Arduino ★ 98 ⧗ 13 - Remote “Arduino Wiring” interface for Windows 8.1, Windows Phone 8.1 and Windows 10. Used to control an Arduino from a Universal Windows Platform application.
- WiringPi ★ 455 ⧗ 11 - Gordon’s Arduino wiring-like WiringPi Library for the Raspberry Pi.
- Theengs decoder Lightweight parsing library compatible with multiple OS and platforms.

### 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.
- aWOT ★ 69 ⧗ 8 - Web server library for Arduino, Teensy, ESP8266 and ESP32
- 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 ★ 37 ⧗ 8 - A library that allows to easily interact with Windows 10 IoT Core features like GPIO, I2C and SPI devices.
- IoTit Flashing tool ★ 18 ⧗ 2 - is an open source command-line utility for flashing (initializing) IoT 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.
- libui ★ 8021 ⧗ 1 - Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.
- 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.
- MATRIX OS ★ 29 ⧗ 12 - is a platform for running applications on the MATRIX Creator.
- matrixssl ★ 36 ⧗ 0 - is an embedded SSL and TLS implementation designed for small footprint IoT devices requiring low overhead per connection.
- MCUBoot ★ 43 ⧗ 3 - is a secure bootloader for 32-bit MCUs.
- nexmon ★ 885 ⧗ 2 - is our C-based firmware patching framework for Broadcom/Cypress WiFi chips.
- Pelion Device Management Client ★ 19 ⧗ 41 - a library that connects devices to Pelion Device Management service and to Mbed-enabled cloud services from our partners.
- 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.
- polymcu ★ 57 ⧗ 3 - an open framework for micro-controller software.
- 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.
- SwiftyGPIO ★ 407 ⧗ 1 - a Swift library to interact with Linux GPIO/SPI on ARM.
- 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.
- xfrp ★ 14 ⧗ 2 - frp client for openwrt&LEDE, frp is a fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
- XiPKI ★ 34 ⧗ 10 - eXtensible sImple Public Key Infrastructure consists of CA and OCSP responder.
- xkcptun ★ 104 ⧗ 25 - xkcptun is kcp tunnel for OpenWRT&LEDE, implemented in c language

## 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

- hypergolix ★ 72 ⧗ 11 - 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.
- HStreamDB ★ 172 - The streaming database built for IoT data storage and real-time processing.

## 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

- Android Things user-space drivers ★ 140 ⧗ 2 - Sample peripheral drivers for Android Things.

## Voice Controller

- alexa-rubykit ★ 109 ⧗ 6 - implements a quick back-end service for deploying applications for Amazon’s Echo (Alexa).
- AlexaPi ★ 17 ⧗ 1 - Turn a Raspberry Pi into an Alexa Client.
- flask-ask ★ 946 ⧗ 0 - is a Flask extension that makes building Alexa skills for the Amazon Echo easier and much more fun.

## 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

- Agile IoT Platform - Ayla Networks IoT Platform (with cloud services).
- AlibabaCloud - “A cloud computing solution”
- ARM Pelion - “Arm Pelion IoT Platform including Connectivity, Device and Data management service”
- Artik Cloud - Samsung cloud for the IoT.
- AWS IoT - Amazon cloud for the IoT.
- Azure IoT Hub - Microsoft cloud for the IoT.
- Bosch IoT Cloud - Highly scalable cloud infrastructure based on Cloud Foundry.
- CloudPlugs IoT - “An end-to-end Fog Computing Platform for IoT.”
- Exosite murano - IoT platform by Exosite.
- Google Cloud IoT - Google Cloud Platform IoT solutions.
- Huawei Cloud IoTDA - Huawei cloud for the IoT.
- IBM Watson - IBM cloud for the IoT.
- Oracle IoT Cloud - ORACLE Cloud for the Internet of Things.
- Rightech IoT Cloud - IoT platform.
- Salesforce IoT Cloud - Salesforce cloud for the Internet of Things.
- SAP HANA - SAP cloud for the Internet of Things.
- Siemens MindSphere - Open IoT ecosystem as PaaS.
- Xively IoT Cloud - IoT platform.
- Yaler - “Relay infrastructure for secure access to embedded systems”.
- Zatar - “Zatar is the first ARMmbed standards-based IoT cloud service”.
- EMQX Cloud - Fully managed MQTT service for IoT. Connect your IoT devices to any cloud without the burden of maintaining infrastructure.
- IoTSharp - IoTSharp is an open-source IoT platform.

## IIoT Clouds

- DataXChange - Cloud manufacturing.
- deviceWISE for Factory - Telit IIoT cloud.
- Predix - Industrial IoT cloud (by General Electric).
- Space-Time Insight IIoT - Industrial IoT cloud (formerly go-factory.com).
- Thingworx - Industrial IoT cloud.
- Voice of the Machine - Industrial IoT cloud (by Parker Hannifin, based on Exosite).

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

## 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

- Arbela ★ 12 ⧗ 2 - Rich, Extensible, Customizable, and Configurable Dashboard.
- Crouton ★ 75 ⧗ 0 - is a dashboard that lets you visualize and control your IOT devices with minimal setup.
- D3.JS ★ 49188 ⧗ 0 - A JavaScript visualization library for HTML and SVG
- Dashing ★ 10067 ⧗ 0 - Dashing is a Sinatra based framework that lets you build beautiful dashboards.
- DevicePilot - Operational analytics for connected devices (includes free-forever tier).
- ECharts ★ 11457 ⧗ 0 - Echarts is a commercial charting solution originally intended to address the report need of the Company’s various business systems.
- Freeboard ★ 3034 ⧗ 0 - A damn-sexy, open source real-time dashboard builder for IOT and other web mashups. A free open-source alternative to Geckoboard.
- HighCharts ★ 4949 ⧗ 0 - Highcharts JS, the JavaScript charting framework
- iotdashboard ★ 7 ⧗ 14 - Fast Django server for IOT Devices.
- Shelloid ★ 20 ⧗ 1 - is an open source IoT-ready real-time big data web application platform built using Node.js and Clojure.

## 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

- Angular 2 IoT ★ 10 ⧗ 4 - is an experimental technology that allows you to program physical hardware (buttons, LEDs, etc.) using Angular 2.
- DevIoT ★ 70 ⧗ 1 - Sublime Text plugin for IoT development.
- Platformio Atom IDE ★ 108 ⧗ 2 - The next generation integrated development environment for IoT.
- Stino ★ 1280 ⧗ 1 - is a Sublime Text plugin that provides an Arduino-like environment for editing, compiling and uploading sketches.
- WyliodrinSTUDIO ★ 25 ⧗ 2 - Wyliodrin STUDIO is a Chrome based IDE for software and hardware development for IoT and Embedded Linux systems.

## Robotics

- AirSim ★ 2606 ⧗ 1 - is a simulator for drones (and soon other vehicles) built on Unreal Engine.
- artoo ★ 1269 ⧗ 0 - Ruby framework for robotics and the Internet of Things.
- hubot ★ 10481 ⧗ 0 - A customizable life embetterment robot.

## 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

- ESP8266-Wifi-Relay ★ 31 ⧗ 19 - ESP8266-ESP12e Wifi Doppel Relay IOT Unterputz Montage möglich / Schaltaktor.

- K3PO ★ 22 ⧗ 9 - is a network driver and language agnostic testing tool.

- LittleD ★ 545 ⧗ 3 - A relational database for embedded devices and sensors nodes.

- mbed TLS ★ 601 ⧗ 0 - An open source, portable, easy to use, readable and flexible SSL library

- Mongoose Flashing Tool ★ 36 ⧗ 7 - Mongoose Flashing Tool (also called MFT) is the Mongoose IoT Platform flashing tool.

- UniK ★ 593 ⧗ 0 - is a tool for compiling application sources into unikernels (lightweight bootable disk images) rather than binaries.

## Protocol Library

### MQTT

- Aphid ★ 58 ⧗ 4 - A lightweight MQTT 3.1.1 client written in pure Swift 3.
- arduino-mqtt ★ 95 ⧗ 6 - MQTT library for Arduino based on the Eclipse Paho projects.
- Eclipse Paho JavaScript client ★ 510 ⧗ 1 - The Paho JavaScript Client is an MQTT browser-based client library written in Javascript that uses WebSockets to connect to an MQTT Broker.
- Eclipse Paho MQTT C client ★ 142 ⧗ 3 - This code builds libraries which enable applications to connect to an MQTT broker to publish messages, and to subscribe to topics and receive published messages.
- EMQX ★ 10300 ⧗ 1800 - An ultra-scalable open-source MQTT broker. Connect 100M+ IoT devices in one single cluster, move and process real-time IoT data with 1M msg/s throughput at 1ms latency.
- ESP8266 MQTT ★ 440 ⧗ 0 - MQTT client library for ESP8266 Soc
- Espruna - Firmware for ESP8266 based smart switches. Includes Web GUI, MQTT and AOT software updates.
- gLeam ★ 50 ⧗ 108 - A operation cluster based on MQTT.
- HiveMQ - a MQTT broker and MQTT client in Java.
- Homie for ESP8266 ★ 115 ⧗ 1 - An Arduino for ESP8266 implementation of Homie, an MQTT convention for the IoT.
- Homie Server ★ 45 ⧗ 3 - A Web server for Homie, an MQTT convention for the IoT.
- Java mqtt-client ★ 405 ⧗ 2 - A Java MQTT Client.
- LightMQTT ★ 32 ⧗ 11 - is a lightweight MQTT client, written in Swift.
- m2mqtt ★ 69 ⧗ 11 - MQTT Client Library for .Net and WinRT.
- microTT ★ 673 ⧗ 1 - is a lightweight and efficient MQTT broker designed to raise the bar for pub/sub performance.
- moquette ★ 2239 ⧗ 2 - Java MQTT lightweight broker.
- mosca ★ 1097 ⧗ 0 - Mosca is a node.js mqtt broker.
- Mosquitto ★ 158 ⧗ 0 - An Open Source MQTT v3.1/v3.1.1 Broker.
- MQTT Explorer - Tool to visualize your MQTT topics in a topic hierarchy, a MQTT swiss-army knife.
- MQTT Kafka Bridge ★ 28 ⧗ 35 - Bridge which consumes MQTT messages and republishes them on Kafka on the same topic.
- MQTT-C ★ 52 ⧗ 2 - A portable MQTT C client for embedded systems and PCs alike.
- MQTT.js ★ 1359 ⧗ 0 - The MQTT client for Node.js and the browser.
- neurite ★ 4 ⧗ 5 - A serial to MQTT bridge, an easier way to build IoT product with esp8266 Arduino.
- paho.mqtt.wxapp ★ 196 ⧗ 0 - paho.mqtt.javascript可以让你在微信小程序里连接MQTT broker，实现在小程序里控制硬件，也可用于游戏。
- PubSub Client ★ 684 ⧗ 0 - A client library for the Arduino Ethernet Shield that provides support for MQTT.
- strong-pubsub ★ 97 ⧗ 1 - PubSub for Node.js, Browser, Mobile and IoT
- SurgeMQ ★ 776 ⧗ 1 - is a high performance MQTT broker and client library that aims to be fully compliant with MQTT 3.1 and 3.1.1 specs.
- VerneMQ ★ 561 ⧗ 1 - A distributed MQTT message broker.
- WolfSSL MQTT ★ 155 ⧗ 14 - A C MQTT library that works with WolfSSL.
- Waterstream - MQTT broker leveraging Apache Kafka as its own storage and distribution engine.
- NanoMQ - A light-weight and Blazing-fast MQTT Broker for IoT Edge platform.

### CoAP

- Californium ★ 36 ⧗ 0 - Californium is a Java implementation of CoAP for the IoT backend and less constrained IoT devices.
- CoAP.NET ★ 47 ⧗ 4 - A C# implementation of the CoAP protocol.
- Copper ★ 46 ⧗ 14 - A Firefox add-on to browse the Internet of Things.
- Go CoAP ★ 110 ⧗ 8 - Implementation of CoAP in go.
- h5.coap ★ 36 ⧗ 26 - Implementation of the Constrained Application Protocol (CoAP) client for node.js.
- iCoAP ★ 28 ⧗ 21 - Objective-C Client Implementation of CoAP.
- java-coap ★ 3 ⧗ 0 - Complete CoAP implementation in java (it is a fork with lots of improvements).
- lobaro-coap ★ 74 ⧗ 4 - Complete CoAP Implementation in C.
- mbed CoAP ★ 23 ⧗ 11 - makes it easy to integrate a Java SE enabled device with coap based services like mbed Cloud.
- microcoap ★ 259 ⧗ 10 - A small CoAP implementation for microcontrollers.
- MQTT Client Framework ★ 312 ⧗ 1 - iOS, OSX, tvOS native ObjectiveC MQTT Client Framework.
- Node CoAP ★ 176 ⧗ 11 - node-coap is a client and server library for CoAP modeled after the http module.
- Python CoAP ★ 36 ⧗ 5 - A CoAP Python library.
- SwiftCoAP ★ 22 ⧗ 12 - Swift Server/Client Implementation of CoAP.
- txThings ★ 48 ⧗ 3 - CoAP library for Twisted framework.

### Spark

- spark-protocol ★ 81 ⧗ 14 - Node.JS module for hosting direct encrypted CoAP socket connections.
- spark-server ★ 371 ⧗ 13 - An API compatible open source server for interacting with devices speaking the spark-protocol

### WeMo

- arduino-esp8266-alexa-multiple-wemo-switch ★ 213 ⧗ 0 - #Arduino Esp8266 Alexa Multiple Belkin wemo switch emulator.
- arduino-esp8266-alexa-wemo-switch ★ 213 ⧗ 5 - Amazon Alexa + WeMos switch made with Arduino D1 Mini.
- fauxmo ★ 430 ⧗ 0 - Emulated Belkin WeMo devices that work with the Amazon Echo.
- homebridge-platform-wemo ★ 106 ⧗ 24 - Belkin WeMo Platform plugin for the awesome Homebridge project.
- ouimeaux ★ 319 ⧗ 0 - Open source control for Belkin WeMo devices.
- wemo.js ★ 19 ⧗ 288 - This library aims to provide a simple interface to a Belkin WeMo Power Sockets.
- wemore ★ 26 ⧗ 10 - A more awesome library for Belkin WeMo interactions.

### SMCP

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

### Lora

- LoRa Gateway Bridge ★ 78 ⧗ 0 - is a service which abstracts the packet_forwarder UDP protocol running on most LoRa gateways into JSON over MQTT.
- LoRa Server ★ 237 ⧗ 0 - LoRa Server is an open-source LoRaWAN network-server.
- LoRaPI ★ 28 ⧗ 31 - Raspberry PI Lora Gateway/Node for RFM92/95/96/98/69HCW Modules.
- LowCostLoRaGw ★ 161 ⧗ 4 - Low-cost LoRa IoT & gateway with SX1272/76, Raspberry and Arduino.

### 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

- OpenThread ★ 1139 ⧗ 2 - OpenThread is an open-source implementation of the Thread networking protocol.
- OpenThread Border Router ★ 64 ⧗ 0 - An open source border router, built to work with 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

- AWS IoT Button ★ 5 ⧗ 4 - Emulate the AWS IoT Button on a Raspberry Pi with a simple push button using this C++ sample.

## Hardware Com

### Bluetooth

- BluetoothLinux is a Pure Swift Linux Bluetooth Stack.
- Theengs gateway BLE to MQTT gateway compatible with over 90 Bluetooth sensors.
- BluetoothSerial ★ 863 ⧗ 0 - Cordova (PhoneGap) Plugin for Serial Communication over Bluetooth
- React Native Bluetooth Serial ★ 299 ⧗ 2 - React Native version of BluetoothSerial plugin. For both android and ios

### NFC

- Adafruit_NFCShield_I2C ★ 110 ⧗ 13 - I2C Driver for Adafruit’s PN532-based NFC Shield
- Chrome App NFC Library ★ 117 ⧗ 4 - With this simple library, you can build a Chrome App that communicates over USB with NFC Readers.
- LibLogicalAccess ★ 53 ⧗ 17 - C++ RFID Library for Windows/Linux/Mac. For PC/SC, NFC, ISO compliant and proprietary hardware.
- libnfc ★ 119 ⧗ 4 - Platform independent Near Field Communication library.
- NFC Tools for Java ★ 183 ⧗ 26 - NFCTools is a collection of libraries and tools for NFC in Java.
- Node NFC ★ 41 ⧗ 38 - A first try at binding libnfc to node.
- RFIDIOt ★ 314 ⧗ 6 - python RFID / NFC library & tools.

### Serial

- rxtx ★ 67 ⧗ 4 - a Java cross platform wrapper library for the serial port

### Others

- Balena ★ 329 ⧗ 3 - is a new container engine purpose-built for embedded and IoT use cases and compatible with Docker containers.
- Drake ★ 500 ⧗ 0 - is a toolbox maintained by the Robot Locomotion Group at the MIT Computer Science and Artificial Intelligence Lab (CSAIL).
- IBM messaging - Community around IBM Messaging products.
- IotWeb ★ 4 ⧗ 9 - A Embedded HTTP and WebSocket Server for UWP/.NET 4.5.
- Mender: Deployment Service ★ 8 ⧗ 14 - Microservice for managing software deployments for IIoT devices within Mender ecosystem.
- meshblu ★ 738 ⧗ 0 - Machine-to-machine instant messaging platform for the internet of things.
- Python Enocean ★ 13 ⧗ 45 - A Python library for reading and controlling EnOcean devices.
- React Native ESP8266 Smartconfig ★ 75 ⧗ 5 - a react-native module for ESP8266 ESPTOUCH Smart config.
- Servo ★ 7821 ⧗ 0 - is a prototype web browser engine written in the Rust language.
- ShellHub ★ 702 ⧗ 70 - Centralized SSH for the the edge and cloud computing.
- The Things Stack ★ 887 ⧗ 4 - The Things Stack, an open source LoRaWAN network server created by The Things Industries. Creators of the global open crowdsourced Internet of Things data network The Things Network.
- The Things Network Arduino Library ★ 82 ⧗ 9 - is an Arduino Library for Arduino devices like The Things Uno and Node to communicate via The Things Network.
- WAMP Protocol ★ 228 ⧗ 1 - The Web Application Messaging Protocol The Web Application Messaging Protocol.

## 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

- Advanced Penetration Testing - Free
- An Introduction to Programming the Internet of Things (IOT) Specialization - Landing page of 6 courses (Introduction to the Internet of Things and Embedded Systems / The Arduino Platform and C Programming / Interfacing with the Arduino / The Raspberry Pi Platform and Python Programming for the Raspberry Pi / Interfacing with the Raspberry Pi / Programming for the Internet of Things Capstone).
- Architecting Smart IoT Devices - Free
- Build an Intelligent System: From Embedded to Cloud (NOT FREE) - None
- Cryptography - Free
- Cyber Security Graduate Certificate - Courses: Operating Systems and Systems Programming, Introduction to Computer Networking, Computer and Network Security, Bitcoin and Crypto Currencies, Introduction to Cryptography, Technology and National Security (Paid).
- Introduction to Architecting Smart IoT Devices - Free
- Low-Level Software Security: Attacks and Countermeassures - None
- Penetration Testing and Ethical Hacking - Free
- Secure Coding - Free
- Serverless Reference Architecture: IoT Backend ★ 134 ⧗ 3 - demonstrates how to use AWS Lambda in conjunction with Amazon Kinesis, Amazon DynamoDB, Amazon Simple Storage Service (Amazon S3), and Amazon CloudWatch to build a serverless system for ingesting and processing sensor data.
- Social Engineering and Manipulation - Free
- Software Architecture for the Internet of Things - Free
- Stanford Advanced Computer Security Certificate - Required courses: Using Cryptography Correctly, Writing Secure Code, Exploiting and Protecting Web Applications; Elective courses: Software Security Foundations, Mobile Security, Network Security, Emerging Threats & Defenses (Paid).
- Web Application Penetration Testing - Free
- Web Connectivity and Security in Embedded Systems - Free
- IOT online courses - Free

### 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

- Arduino Create - None
- http://edi.wang/ - `ASP.NET`, `Windows 10 IoT`
- IBM DeveloperWorks IoT - None
- IBM IoT Blog - None
- Industrial IoT blog - “Industrial IoT/Industrie 4.0 Viewpoints”.
- Intel IoT Blog - None
- Microsoft IoT Blog - None
- 唯笑志在-ServerSuperIO - None
- Bosch ConnectedWorld Blog - IoT articles from the world of Bosch.
- IoT for All - High-quality IoT content, resources, and news.

### Group

- Guokr DIY - A Chinese DIY Group.

### GitHub Org.

- Intel iot-devkit libraries - Official github repo for Intel IoT developer kit libraries & samples
- Microsoft IoT - Microsoft IoT Team
- The Hybrid Group - the create of cylon.js

### Free Book

- Design IoT ★ 594 ⧗ 0 - A Ebook to tech your create IoT System step by step.
- IoT-Firstep ★ 24 ⧗ 9 - A Ebook to tech your create IoT System.
- IPv6-WSN-Book - an easy guide to Wireless Sensor Networks (WSN), IPv6 and the Internet of Things (IoT).
- Using the Web to Build the IoT - A collection of six hand-picked chapters that introduce the key technologies and concepts for building the application layer of the IoT.

### Related Resources Projects

- awesome-embedded-systems ★ 0 ⧗ 29 - The website awesome-embedded-systems.org lists resources about embedded system, software and hardware development.
- awesome-mqtt ★ 668 ⧗ 0 - Curated list of MQTT related stuff.

### Tutorial

- micro-services-tutorial-iot ★ 20 ⧗ 13 - An instructor led microservices workshop.
- Unpacking the Internet of Things - Shows use cases to help to identify possible potential for enterprise specific products.
- Arduino, RaspberryPi and MQTT - Builds an end to end IoT application that ties together several aspects of the MQTT protocol.

## 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

- connectthedots ★ 307 ⧗ 0 - Connect tiny devices to Microsoft Azure services to build IoT solutions
- django-th ★ 275 ⧗ 0 - take the control of your data with this opensource clone of IFTTT, a bridge between your internet services.
- souliss ★ 137 ⧗ 8 - Arduino based Distributed Networking Framework for Smart Homes and IoT.

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