Open-source iot software
797 open-source libraries, tools and applications tagged iot, ranked by how closely iot is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
797 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| rivermoonlight/gobbledegook Gobbledegook (GGK) is a standalone C/C++ Bluetooth Low Energy GATT server library for Linux, built on BlueZ over D-Bus with Bluetooth Manag… | 32 | 1260 | maintenance |
| BrandonJoffe/home_surveillance A self-hosted home surveillance application that processes streams from multiple IP cameras, performs motion detection and facial recogniti… | 32 | 1260 | maintenance |
| fivdi/onoff onoff is a Node.js library providing GPIO access and interrupt detection on Linux single-board computers like the Raspberry Pi and BeagleBo… | 32 | 1258 | maintenance |
| OpenCat Quadruped Robot OpenCat is an open-source Arduino/Raspberry Pi framework for building and programming quadruped robot pets like the Bittle robot dog and Ny… | 74 | 429 | active |
| 4refr0nt/ESPlorer ESPlorer is a cross-platform Java-based IDE for ESP8266 developers, providing a code editor with Lua and MicroPython syntax highlighting, a… | 23 | 1248 | maintenance |
| Mentra-Community/OpenSourceSmartGlasses An open source smart glasses hardware and software project with display, microphones, wireless phone connection, and prescription lenses, i… | 23 | 1229 | maintenance |
| craigz28/firmwalker Firmwalker is a simple bash script that searches extracted or mounted firmware file systems for security-relevant files and content, such a… | 32 | 1225 | maintenance |
| mit-han-lab/tinyml MIT Han Lab's TinyML research repository containing projects like TinyTL and NetAug for memory-efficient deep learning on microcontrollers … | 32 | 1223 | maintenance |
| aREST aREST is a C++ library that exposes a REST API on Arduino boards and ESP8266/ESP32 WiFi chips, allowing remote control and monitoring of ha… | 61 | 1200 | maintenance |
| softScheck/tplink-smartplug A Python command-line client for the proprietary TP-Link Smart Home protocol that controls HS100, HS110, and KP115 WiFi smart plugs over TC… | 32 | 1200 | maintenance |
| peter-murray/node-hue-api A Node.js library that abstracts the Philips Hue Bridge REST API for controlling lights, sensors, scenes, schedules, groups, and rules. It … | 61 | 1196 | maintenance |
| shadow-1/yi-hack-v3 A collection of Makefiles, config files, and scripts that build alternative custom firmware for Xiaomi Yi cameras based on the HiSilicon Hi… | 23 | 1191 | maintenance |
| eclipse-paho/paho.mqtt.javascript Eclipse Paho JavaScript client is a browser-based MQTT client library that connects to MQTT brokers over WebSockets. It is part of the Ecli… | 23 | 1184 | maintenance |
| Madelena Home Assistant Dashboard A public, redacted Home Assistant dashboard configuration showcasing two dashboard styles: a dense maximalist control-center layout and a s… | 32 | 1175 | maintenance |
| tuanpmt/esp_mqtt A fully functional MQTT client library written in C for the ESP8266 microcontroller, ported from a Contiki MQTT client. It supports subscri… | 23 | 1171 | maintenance |
| esp-homekit A C library implementing an Apple HomeKit accessory server for ESP8266 microcontrollers, built for esp-open-rtos with ESP-IDF 4.x/5.x suppo… | 32 | 1168 | maintenance |
| Estimote/iOS-Fleet-Management-SDK An iOS SDK from Estimote for managing fleets of Estimote beacons, allowing bulk updates of beacon settings via Estimote Cloud-queued pendin… | 10 | 1167 | maintenance |
| paypal/gatt A Go package implementing the Bluetooth Low Energy Generic Attribute Profile (GATT) protocol for building BLE peripherals and centrals. It … | 32 | 1166 | maintenance |
| me-no-dev/EspExceptionDecoder An Arduino IDE plugin that decodes ESP8266/ESP32 exception stack traces into readable function names and line numbers. It is written in Jav… | 23 | 1142 | maintenance |
| rossmann-engineering/EasyModbusTCP.NET A .NET library implementing Modbus TCP, UDP, and RTU client and server communication. It enables fast access to PLCs and other industrial a… | 23 | 1126 | maintenance |
| stanleyhuangyc/ArduinoOBD An open-source Arduino library and collection of sketches for accessing vehicle OBD-II data via Freematics OBD-II adapter hardware. It prov… | 32 | 1109 | maintenance |
| dark-lbp/isf ISF (Industrial Exploitation Framework) is a Python-based exploitation framework modeled after Metasploit, focused on industrial control sy… | 10 | 1108 | maintenance |
| 131/h264-live-player A JavaScript library that plays live H.264 video streams in the browser by wrapping the Broadway WebGL-accelerated decoder, with NAL units … | 32 | 1097 | maintenance |
| NModbus/NModbus NModbus is a C# (.NET) library implementing the Modbus protocol, supporting serial ASCII, serial RTU, TCP, and UDP transports. It enables c… | 69 | 1091 | maintenance |
| njh/EtherCard EtherCard is an Arduino library providing an IPv4 Ethernet driver for the Microchip ENC28J60 chip over SPI. It offers high-level routines f… | 23 | 1082 | maintenance |
| YinHangCode/homebridge-mi-aqara A Homebridge plugin that exposes Xiaomi Aqara smart home devices (sensors, switches, and other accessories connected to an Aqara gateway) t… | 32 | 1075 | maintenance |
| ESP32-Radio An ESP32-based internet radio project that streams MP3/Ogg radio stations using a VS1053 audio decoder and displays info on a TFT screen. I… | 32 | 1075 | maintenance |
| riker-rs/riker Riker is an Actor Model framework for Rust for building concurrent, resilient applications with actor supervision, pub/sub messaging, and e… | 32 | 1073 | maintenance |
| HypriotOS A build pipeline that produces HypriotOS SD card images for Raspberry Pi 1, 2, 3, 4, and Zero — a minimal Debian-based OS optimized to run … | 10 | 1056 | maintenance |
| plasticrake/tplink-smarthome-api A Node.js library and CLI for controlling TP-Link Kasa Smarthome devices (smart plugs, switches, and bulbs) over the local network. It supp… | 32 | 1055 | maintenance |
| DrmagicE/gmqtt Gmqtt is a flexible, high-performance MQTT broker written in Go that fully implements MQTT protocol V3.x and V5. It offers a plugin mechani… | 53 | 1049 | maintenance |
| iobridge/thingspeak ThingSpeak is an open-source IoT analytics platform and API for collecting, storing, visualizing, and analyzing sensor data streams over HT… | 32 | 1049 | maintenance |
| sidoh/esp8266_milight_hub A firmware replacement for the Milight/LimitlessLED WiFi gateway that runs on an ESP8266 or ESP32 with an NRF24L01+ or LT8900 radio. It exp… | 23 | 1048 | maintenance |
| toblum/McLighting McLighting is an ESP8266-based firmware for controlling WS2811/WS2812 LED strips over the internet. It provides a web interface, REST API, … | 10 | 1048 | maintenance |
| Open Home Foundation Matter Server A certified Matter controller server exposing a WebSocket API built on the official Matter (CHIP) SDK, originally created to power Home Ass… | 10 | 1046 | maintenance |
| Hamler Hamler is a strongly-typed, Haskell-style functional programming language that compiles to Erlang VM (BEAM) bytecode. It brings compile-tim… | 23 | 1041 | maintenance |
| adi0x90/attifyos Attify OS is a Linux distribution based on Ubuntu 18.04 pre-configured with tools for security assessment and penetration testing of IoT de… | 32 | 1035 | maintenance |
| fashiontec/openwash-firmware Firmware for the Open Wash project, an open-source washing machine hardware initiative by FashionTec. It controls the embedded hardware of … | 32 | 1028 | maintenance |
| fO-000/bluing Bluing is a Python-based Bluetooth intelligence gathering tool (successor to bluescan) for scanning and probing Bluetooth Classic (BR/EDR) … | 23 | 1022 | maintenance |
| HypriotOS A command-line shell script for flashing SD card images (compressed or uncompressed, local or remote) onto SD cards, primarily for Raspberr… | 23 | 1018 | maintenance |
| thirtythreeforty/neolink Neolink is a Rust application that acts as an RTSP bridge for Reolink IP cameras that only speak the proprietary Baichuan protocol on port … | 23 | 1016 | maintenance |
| gotthardp/lorawan-server An open-source LoRaWAN server written in Erlang that combines network-server and application-server functionality for private LoRaWAN netwo… | 23 | 1005 | maintenance |
| mdhiggins/ESP8266-HTTP-IR-Blaster A firmware for ESP8266 boards (like NodeMCU) that turns them into Wi-Fi enabled infrared blasters controlled via HTTP commands. It includes… | 32 | 1003 | maintenance |
| susiai/susi_device SUSI Device provides sources to install the SUSI AI assistant stack on a Raspberry Pi, combining microphone/speaker, a small display, a loc… | 32 | 1000 | maintenance |
| aily blockly Aily Blockly is an AI-assisted Blockly-based IDE for hardware development supporting 100+ boards including Arduino, ESP32, STM32, RP2040, a… | 85 | 3851 | experimental |
| microsoft/devicescript DeviceScript is a TypeScript-based language and toolchain from Microsoft Research for programming low-resource microcontrollers like ESP32 … | 10 | 3446 | experimental |
| codykociemba/NoLongerEvil-Thermostat No Longer Evil is a right-to-repair firmware and cloud replacement for bricked or sunset Nest Gen 1 and Gen 2 thermostats. It flashes modif… | 61 | 1869 | experimental |
| ariel-os/ariel-os Ariel OS is a library operating system for secure, memory-safe, low-power IoT devices, written in Rust and targeting 32-bit microcontroller… | 76 | 1228 | experimental |
| medusalix/FreeMDU FreeMDU is an open hardware and software project for communicating with Miele appliances through their proprietary optical infrared diagnos… | 54 | 1066 | experimental |
| idootop/mi-gpt MiGPT is a Node.js/Docker application that connects Xiaomi's XiaoAI smart speakers to ChatGPT and Doubao, turning them into custom AI voice… | 10 | 12499 | abandoned |
| hanxi/xiaomusic XiaoMusic is a self-hosted Python application that lets Xiaomi XiaoAI smart speakers play music downloaded via yt-dlp, controlled through v… | 10 | 10036 | abandoned |
| HannahMitt/HomeMirror An Android application that turns an Android tablet mounted behind a two-way mirror into a smart mirror displaying time, weather, calendar … | 32 | 7805 | abandoned |
| Mycroft AI Mycroft Core is the core software of the Mycroft open-source voice assistant platform, providing wake-word listening, speech recognition, n… | 10 | 6616 | abandoned |
| Eddystone The Physical Web is an open approach to letting smart physical objects (beacons, posters, vending machines) broadcast URLs over Bluetooth L… | 10 | 5960 | abandoned |
| easychen/pushdeer PushDeer is an open-source, self-hostable push notification service that lets users send messages to their devices via a simple HTTP API, w… | 47 | 5025 | abandoned |
| Mbed OS Arm Mbed OS is an open-source embedded operating system for IoT devices built on Arm Cortex-M microcontrollers, providing an RTOS, security… | 23 | 4874 | abandoned |
| knolleary/pubsubclient PubSubClient is an Arduino C++ client library providing simple MQTT publish/subscribe messaging over the Arduino Ethernet Client API. It wo… | 58 | 4016 | abandoned |
| Aedes MQTT Broker Mosca is a Node.js MQTT broker that can run standalone or be embedded in any Node.js application. It supports MQTT 3.1/3.1.1 with QoS 0 and… | 10 | 3178 | abandoned |
| apache/horaedb Apache HoraeDB (incubating) was a high-performance, distributed, cloud-native time-series database written in Rust, supporting workloads li… | 10 | 2825 | abandoned |
| idootop/open-xiaoai Open-XiaoAI is a Rust-based client/server project that takes over the audio input and output of Xiaomi XiaoAI smart speakers (LX06 and OH2P… | 10 | 2617 | abandoned |
| jerryscript-project/iotjs IoT.js is a lightweight JavaScript platform for Internet of Things devices, built on the JerryScript engine and written in C. It provides a… | 23 | 2600 | abandoned |
| AWS IoT Device SDK for Embedded C AWS's deprecated reference integrations of FreeRTOS libraries for microcontrollers, providing a full project structure with AWS IoT connect… | 10 | 2532 | abandoned |
| AWTRIX AWTRIX 3 is open-source custom firmware for the Ulanzi Smart Pixel clock TC001, DIY matrix clocks, and old AWTRIX 2 boards, built on ESP32.… | 75 | 2358 | abandoned |
| Dustcloud A research project for reverse engineering and rooting Xiaomi Smart Home devices, including robot vacuums, providing methods to root device… | 23 | 2283 | abandoned |
| wzpan/dingdang-robot Dingdang is an open-source Chinese voice conversation robot / smart speaker project that runs on Raspberry Pi. It uses pluggable STT/TTS en… | 10 | 1872 | abandoned |
| zentures/surgemq SurgeMQ is a high-performance MQTT broker and client library written in Go, aiming for full compliance with MQTT 3.1 and 3.1.1 specs. It pr… | 10 | 1795 | abandoned |
| hap hc is a lightweight Go framework that implements Apple's HomeKit Accessory Protocol (HAP), letting developers build HomeKit accessories wit… | 23 | 1739 | abandoned |
| pkozul/ha-floorplan A Home Assistant custom UI component that renders interactive SVG floorplans and visual diagrams, displaying entity states in real time wit… | 10 | 1736 | abandoned |
| google/periph periph is a Go library for peripherals I/O, providing pure-Go (no cgo) drivers and interfaces for GPIO, I²C, SPI, and 1-wire hardware on bo… | 10 | 1731 | abandoned |
| akexorcist/BluetoothSPPLibrary An Android library simplifying Bluetooth Serial Port Profile (SPP) communication with microcontrollers or other Android devices. It provide… | 10 | 1704 | abandoned |
| UncleRus/esp-idf-lib A collection of ESP-IDF components (drivers for sensors, LED controllers, GPIO extenders, ADC/DAC, and other peripherals) for Espressif ESP… | 10 | 1608 | abandoned |
| thiagoralves/OpenPLC_v3 OpenPLC Runtime version 3 is an open-source Programmable Logic Controller (PLC) runtime that executes ladder logic and other IEC 61131-3 pr… | 10 | 1573 | abandoned |
| easytarget/esp32-cam-webserver An expanded Arduino sketch turning cheap ESP32-CAM boards (especially AI-Thinker) into a webcam with a browser-based control interface, str… | 23 | 1537 | abandoned |
| lelylan/lelylan Lelylan is an open-source IoT cloud platform built on a lightweight microservices architecture, composed of many small services for device … | 32 | 1523 | abandoned |
| t0bst4r/home-assistant-matter-hub A TypeScript application that simulates Matter bridges to publish Home Assistant entities to Matter-compatible controllers like Alexa, Appl… | 10 | 1487 | abandoned |
| idootop/migpt-next MiGPT-Next is a TypeScript library and Docker-runnable service that connects Xiaomi's XiaoAI smart speakers to OpenAI-compatible large lang… | 10 | 1445 | abandoned |
| fritz-smh/yi-hack A collection of shell scripts and binaries that replace parts of the Xiaomi Yi Ants home camera firmware, disabling cloud connectivity and … | 32 | 1444 | abandoned |
| node-red/node-red-dashboard A set of Node-RED nodes for quickly building live data dashboards served at a /ui endpoint. It provides widgets, layout management, and web… | 35 | 1408 | abandoned |
| Clooos/Home-Assistant-Mobile-First A minimalist, mobile-first dashboard design/theme for Home Assistant Lovelace, shared as the author's personal setup with installation inst… | 36 | 1385 | abandoned |
| JamesMcCarthy79/Home-Assistant-Config A fully documented Home Assistant configuration for a personal smart home, including YAML configs, add-ons (Node-RED, AppDaemon, Grafana, I… | 32 | 1336 | abandoned |
| AlexaPi AlexaPi is an open-source Python client for Amazon's Alexa voice service designed to run on devices like Raspberry Pi, Orange Pi, CHIP, and… | 10 | 1326 | abandoned |
| a-voyager/BluetoothHelper A Java Android library that simplifies Bluetooth operations, especially for Smart IoT hardware. It packages common tasks like device discov… | 32 | 1316 | abandoned |
| kidoman/embd embd is a hardware abstraction layer (HAL) for embedded Linux single-board computers such as the Raspberry Pi, BeagleBone Black, and C.H.I.… | 32 | 1280 | abandoned |
| Pi4J Pi4J v1 is a Java I/O library providing object-oriented access to Raspberry Pi hardware interfaces such as GPIO, I2C, SPI, PWM, and UART/se… | 10 | 1280 | abandoned |
| alexa/avs-device-sdk The Alexa Voice Service (AVS) Device SDK is a C++ SDK for commercial device makers to integrate Alexa voice assistant capabilities directly… | 10 | 1251 | abandoned |
| rhasspy/wyoming-satellite A Python application that turns a Raspberry Pi (or similar Linux device) with a microphone and speaker into a remote voice satellite using … | 10 | 1243 | abandoned |
| sbstjn/noduino Noduino is a JavaScript and Node.js framework for controlling Arduino boards from web applications using HTML5, Socket.IO, and WebSockets. … | 32 | 1234 | abandoned |
| YodaOS YodaOS is a Linux distribution built on OpenWrt for voice-enabled IoT devices, using JavaScript as its primary application language. It tar… | 32 | 1227 | abandoned |
| MicrosoftEdge/magic-mirror-demo A smart mirror IoT demo project by Microsoft Edge that displays information on a two-way mirror and recognizes registered users via facial … | 10 | 1223 | abandoned |
| microsoft/vscode-arduino A Visual Studio Code extension for developing, building, and uploading Arduino sketches, with IntelliSense, board/library managers, and a s… | 10 | 1192 | abandoned |
| adafruit/Adafruit_Python_DHT A deprecated Python library for reading DHT series humidity and temperature sensors on Raspberry Pi and Beaglebone Black, with a C extensio… | 10 | 1135 | abandoned |
| ZoneMinder/zmNinja zmNinja is a cross-platform ZoneMinder client app for monitoring CCTV/NVR cameras on mobile and desktop, built with Ionic and AngularJS. It… | 10 | 1076 | abandoned |
| OpenZWave OpenZWave is a C++ library that interfaces with Z-Wave networks via a USB Z-Wave controller, letting applications control Z-Wave devices wi… | 32 | 1058 | abandoned |
| loklak/loklak_IBM_Home_Automation A Python-based IoT home automation integration for the Loklak server that connects a Raspberry Pi to IBM's IoTF (Bluemix) platform. It rela… | 32 | 1050 | abandoned |
| sitewhere/sitewhere SiteWhere is an open-source, multi-tenant IoT application enablement platform built on Java/Spring microservices, offering device and asset… | 10 | 1046 | abandoned |
| shivasiddharth/GassistPi GassistPi is a Python application that turns single board computers like the Raspberry Pi into a Google Assistant-powered voice assistant. … | 40 | 1031 | abandoned |
| yudao (ruoyi-vue-pro) Yudao Ruoyi Vue Pro is a full‑stack, open‑source admin platform built with Spring Boot, MyBatis Plus and Vue. It provides a rich set of ent… | 98 | 39530 | active |
| IceWhaleTech/CasaOS CasaOS is an open-source personal cloud operating system built around the Docker ecosystem, providing a web dashboard for managing self-hos… | 78 | 37315 | active |
| XiaoZhi AI Chatbot XiaoZhi is an open-source MCP-based AI voice chatbot firmware for ESP32-family microcontrollers, connecting large language models like Qwen… | 91 | 31445 | active |
| Unleashed Firmware Unleashed is an open‑source alternative firmware for the Flipper Zero handheld hacking tool. It adds extensive radio protocol support, a la… | 94 | 22491 | active |