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 |
|---|---|---|---|
| Clooos/Bubble-Card Bubble Card is a minimalist and highly customizable card collection for Home Assistant dashboards, offering modern pop-ups, buttons, slider… | 93 | 4639 | active |
| apache/rocketmq-externals The Apache RocketMQ externals repository is the community home for incubating ecosystem projects around the RocketMQ message broker, such a… | 74 | 4593 | active |
| FreeRTOS The classic FreeRTOS distribution, a real-time operating system for microcontrollers and small microprocessors that submodules the FreeRTOS… | 82 | 4559 | stable |
| blinker-iot/blinker-py Blinker is a Python library for connecting hardware devices like Raspberry Pi and Banana Pi to the Blinker IoT platform. It supports commun… | 34 | 4440 | active |
| dqlite dqlite is a C library implementing an embeddable, replicated SQL database engine that extends SQLite across a cluster of machines using the… | 89 | 4395 | active |
| blinker Blinker is a JavaScript/TypeScript SDK for connecting hardware devices (like Raspberry Pi) to the Blinker IoT platform via MQTT or local ne… | 34 | 4380 | active |
| rytilahti/python-miio A Python library and accompanying miiocli console tool for controlling Xiaomi smart home appliances over the miIO and MIoT protocols. It su… | 62 | 4308 | active |
| blinker-iot/blinker-esp-idf Blinker is an IoT solution library for embedded hardware, provided as ESP-IDF components for ESP8266 and ESP32. It enables devices to conne… | 34 | 4290 | active |
| jrowberg/i2cdevlib A collection of uniform, Doxygen-documented C++ classes providing interfaces to a wide range of I2C peripheral devices such as acceleromete… | 44 | 4272 | stable |
| stephane/libmodbus libmodbus is a free, dependency-free C library for sending and receiving data with devices that speak the Modbus protocol over serial (RTU)… | 75 | 4258 | stable |
| fatihak/InkyPi InkyPi is an open-source E-Ink display application that runs on a Raspberry Pi and is controlled through a web interface. It supports plugi… | 67 | 4254 | active |
| SuperSocket SuperSocket is a high-performance, extensible socket server application framework for .NET. It provides a pipeline-based architecture for b… | 85 | 4236 | active |
| conmon crun is a fast, lightweight OCI container runtime written entirely in C, conforming to the Open Container Initiative runtime specification.… | 94 | 4163 | active |
| 1technophile/OpenMQTTGateway OpenMQTTGateway is an open-source firmware that turns ESP8266/ESP32 boards (and computers) into a unified MQTT gateway bridging many protoc… | 73 | 4100 | active |
| thomasnordquist/MQTT-Explorer MQTT Explorer is a cross-platform desktop MQTT client built with Electron and TypeScript that visualizes broker topics in a structured hier… | 56 | 4077 | active |
| apache/nuttx Apache NuttX is a mature, open-source real-time operating system (RTOS) for embedded systems with an emphasis on POSIX/ANSI standards compl… | 77 | 4071 | stable |
| openthread/openthread OpenThread is Google's open-source, Thread Certified implementation of the Thread networking protocol, covering all Thread networking layer… | 99 | 4051 | stable |
| rtty Remote Terminal System rtty is a remote terminal solution consisting of a lightweight C client for embedded Linux devices and a Go server with a Vue web frontend.… | 95 | 4044 | active |
| Emitter Emitter is a distributed, high-performance publish-subscribe messaging platform built on the MQTT protocol, written in Go. It supports mess… | 55 | 4008 | active |
| Blynk-Technologies/blynk-library Blynk's official C++ client library that connects over 400 IoT hardware boards (Arduino, ESP32, ESP8266, Raspberry Pi, Particle, etc.) to t… | 90 | 3990 | stable |
| MeshCore MeshCore is a lightweight C++ library and firmware implementing a hybrid multi-hop mesh routing protocol for LoRa packet radios, enabling e… | 84 | 3910 | active |
| kalkih/mini-graph-card A minimalistic and customizable graph card for the Home Assistant Lovelace UI, displaying sensor states alongside a line graph of their his… | 68 | 3902 | stable |
| domoticz/domoticz Domoticz is a free, open-source home automation system written in C++ that monitors and controls lights, switches, and sensors for temperat… | 95 | 3822 | stable |
| EMBA EMBA is an open-source firmware security analyzer for embedded Linux devices, written in Bash. It automates firmware extraction, static and… | 94 | 3701 | active |
| Screenly/Anthias Anthias (formerly Screenly OSE) is a free, open-source digital signage platform that turns a Raspberry Pi or x86 PC into a networked media … | 97 | 3677 | active |
| VerneMQ VerneMQ is a high-performance, distributed MQTT message broker built on Erlang/OTP with master-less clustering for horizontal scalability a… | 93 | 3637 | stable |
| crankyoldgit/IRremoteESP8266 An Arduino library for ESP8266 and ESP32 that enables sending and receiving infrared remote control signals using common 940nm IR LEDs and … | 70 | 3626 | stable |
| ESPEasy ESPEasy is open-source firmware for ESP8266 and ESP32 microcontrollers that turns them into easy-to-configure multi-sensor and actuator dev… | 87 | 3617 | active |
| make-all/tuya-local A Home Assistant custom integration that provides local network control of Tuya-based smart home devices without routing through the Tuya c… | 99 | 3583 | active |
| sabeechen/hassio-google-drive-backup A Home Assistant add-on that automatically creates scheduled backups and syncs them to Google Drive, with retention cleanup and restore-fro… | 61 | 3573 | active |
| SpacehuhnTech/esp8266_deauther ESP8266 Deauther is open-source firmware that turns an ESP8266 microcontroller into a WiFi testing tool capable of scanning networks, sendi… | 23 | 14997 | maintenance |
| Eclipse ThreadX Eclipse ThreadX is an advanced real-time operating system (RTOS) for deeply embedded applications, featuring a picokernel architecture, pre… | 90 | 3538 | active |
| basnijholt/adaptive-lighting A Home Assistant custom integration that automatically adjusts light brightness and color temperature based on the sun's position, with man… | 97 | 3493 | active |
| dotintent/react-native-ble-plx A React Native library for Bluetooth Low Energy (BLE) communication on iOS and Android. It supports scanning, connecting, service/character… | 59 | 3443 | active |
| XiaoMi/xiaomi-miloco Xiaomi Miloco is an open-source whole-home intelligence solution that uses Mi Home camera video/audio as a full-modal perception gateway an… | 83 | 3426 | active |
| ZSWatch ZSWatch is a fully open-source smartwatch project covering both hardware (KiCad PCB designs) and firmware written in C on the Zephyr RTOS w… | 83 | 3375 | active |
| atc1441/ATC_MiThermometer Custom open-source firmware for the Xiaomi LYWSD03MMC Bluetooth thermometer/hygrometer, plus a web-based Telink OTA flasher and a Python US… | 34 | 3346 | active |
| WiringPi WiringPi is a fast C library for accessing GPIO pins on Raspberry Pi boards by directly manipulating hardware registers. It also ships with… | 86 | 3344 | active |
| AlexxIT/SonoffLAN A Home Assistant custom component (HACS integration) for controlling Sonoff devices running original eWeLink firmware over both local netwo… | 97 | 3320 | active |
| TTN Tracker Mycodo is an open-source environmental monitoring and regulation system for the Raspberry Pi that connects sensors and outputs to sense and… | 79 | 3295 | active |
| speedyg0nz/MagInkCal MagInkCal is a DIY E-Ink magic calendar application that syncs events from Google Calendar and renders them onto a Waveshare 12.48" tri-col… | 32 | 3271 | stable |
| mrlt8/docker-wyze-bridge A Docker-based bridge that creates local WebRTC, RTSP, RTMP, or HLS/Low-Latency HLS streams from Wyze cameras without firmware modification… | 66 | 3268 | active |
| Eclipse Zenoh Zenoh is a Rust-implemented pub/sub/query protocol and library that unifies data in motion, data at rest, and computations with minimal wir… | 97 | 3259 | active |
| GladysAssistant/Gladys Gladys Assistant is a privacy-first, open-source smart home platform that runs locally via Docker on a mini-PC, NAS, or Raspberry Pi. It of… | 95 | 3237 | active |
| open62541/open62541 open62541 is an open-source C99 implementation of the OPC UA (IEC 62541) communication protocol for building OPC UA clients and servers or … | 96 | 3233 | stable |
| gozfree/gear-lib Gear-Lib is a collection of POSIX C libraries for IoT, embedded, and network service development, covering data structures, networking prot… | 23 | 3228 | active |
| Johnny-Five Johnny-Five is a Firmata protocol-based JavaScript robotics and IoT programming framework for Node.js. It provides composable, consistent A… | 23 | 13409 | maintenance |
| Music Assistant Music Assistant is a free, open-source music library manager that unifies streaming services, local files, radio, podcasts and audiobooks i… | 96 | 3194 | active |
| HeyWillow/willow Willow is an open source, self-hosted voice assistant platform for ESP32-S3-BOX hardware, designed as a privacy-focused alternative to Amaz… | 84 | 3127 | active |
| lindb/lindb LinDB is an open-source distributed time series database written in Go, offering high performance, high availability, and horizontal scalab… | 62 | 3065 | active |
| Home Accessory Architect HAA (Home Accessory Architect) is firmware that adds native Apple HomeKit support and custom configurations to ESP32 and ESP8266 based devi… | 96 | 3005 | active |
| Espruino Espruino is an open-source JavaScript interpreter and firmware for microcontrollers, designed to run on devices with as little as 128kB Fla… | 77 | 2978 | active |
| wolfSSL/wolfssl wolfSSL is a lightweight, portable SSL/TLS library written in ANSI C, supporting TLS 1.3 and DTLS 1.3, powered by the wolfCrypt cryptograph… | 94 | 2961 | stable |
| dalathegreat/Battery-Emulator Battery-Emulator is firmware that lets second-life EV battery packs be reused as stationary home energy storage by translating communicatio… | 94 | 2959 | active |
| Renode Renode is an open-source simulation and virtual development framework for complex embedded systems, letting you run unmodified firmware on … | 85 | 2938 | active |
| kanoqwq/UFI-TOOLS UFI-TOOLS is a multi-functional management and extension tool for ZTE portable WiFi devices (F50, U30 Air) and other Unisoc/Spreadtrum Andr… | 70 | 2913 | active |
| AltBeacon/android-beacon-library An Android library that provides APIs for apps to detect and interact with Bluetooth Low Energy (BLE) beacons. It supports monitoring for b… | 47 | 2909 | active |
| earlephilhower/arduino-pico An Arduino core that ports the Arduino development environment to the Raspberry Pi Pico's RP2040 and RP2350 microcontrollers, built on the … | 99 | 2887 | active |
| armink/FlashDB FlashDB is an ultra-lightweight embedded database written in C that provides two storage modes: a key-value database (KVDB) and a time-seri… | 76 | 2860 | stable |
| sqfmi/Watchy Watchy is a fully open-source E-Ink smartwatch built on ESP32, accompanied by an Arduino library for developing custom watch faces and firm… | 36 | 2840 | active |
| PJON PJON is an experimental, multi-master, software-defined network protocol stack for microcontrollers and general-purpose systems, supporting… | 43 | 2832 | active |
| espressif/esp32-camera Espressif's official camera driver library for ESP32-series SoCs (ESP32, ESP32-S2, ESP32-S3), supporting a wide range of image sensors like… | 93 | 2813 | active |
| AlexxIT/XiaomiGateway3 A Home Assistant custom component (HACS integration) for controlling Xiaomi Multimode Gateway 3, Gateway 2, and Aqara Hub E1 over LAN on de… | 97 | 2791 | active |
| open5gs/open5gs Open5GS is an open-source C-language implementation of the 5G Core (5GC) and Evolved Packet Core (EPC), the core network of LTE and NR mobi… | 85 | 2776 | active |
| pymodbus-dev/pymodbus PyModbus is a full Modbus protocol stack written in Python, providing a client, server, and HTML-based simulator with both synchronous and … | 95 | 2772 | stable |
| Koenkk/Z-Stack-firmware A repository providing compilation instructions and precompiled hex firmware files for Texas Instruments Z-Stack Zigbee firmware, targeting… | 66 | 2770 | active |
| espressif/esp-iot-solution Espressif's official IoT library providing device drivers and code frameworks for ESP series SoCs, extending ESP-IDF with components for se… | 67 | 2691 | active |
| home-assistant-libs/pychromecast PyChromecast is a Python 3.11+ library for discovering and communicating with Google Chromecast and Cast-enabled devices. It supports media… | 80 | 2686 | active |
| Mongoose OS Mongoose OS is an open-source IoT firmware development framework and operating system for low-power microcontrollers such as ESP32, ESP8266… | 66 | 2666 | stable |
| absmach/magistrala Magistrala is an open-source, multi-tenant IoT platform framework written in Go that provides device management, messaging, identity, and a… | 97 | 2645 | active |
| WebThings Gateway WebThings Gateway is a self-hosted web application for monitoring and controlling smart home devices over the web, built on W3C Web of Thin… | 71 | 2645 | active |
| anthropics/claude-desktop-buddy A reference implementation and example firmware for the Bluetooth (BLE) maker API in Claude Cowork and Claude Code Desktop, including an ES… | 46 | 2625 | active |
| nanomq/nanomq NanoMQ is an ultra-lightweight, high-performance MQTT broker and messaging bus written in C for IoT/IIoT edge computing and software-define… | 95 | 2619 | active |
| RadioLib RadioLib is a universal C++ wireless communication library for embedded devices, providing a unified API to drive many radio modules (SX127… | 95 | 2614 | active |
| Neutree/COMTool COMTool is a cross-platform GUI serial/network debug assistant written in Python, supporting serial ports, TCP/UDP client and server, SSH, … | 54 | 2603 | active |
| hbldh/bleak Bleak is a cross-platform Python library providing an asynchronous API for Bluetooth Low Energy (BLE) communication, acting as a GATT clien… | 86 | 2550 | active |
| rtlamr A Go-based software-defined radio receiver that decodes Itron ERT smart meter transmissions in the 900MHz ISM band using an inexpensive rtl… | 73 | 2546 | active |
| No-Chicken/OV-Watch OV-Watch is an open-source smart watch project built on an STM32F411 microcontroller running FreeRTOS with an LVGL-based user interface. It… | 55 | 2504 | active |
| GridDB GridDB is an open-source, high-performance distributed database optimized for time-series IoT and big data workloads, offering both NoSQL a… | 60 | 2474 | active |
| nRF24/RF24 An optimized C++ driver library for the nRF24L01(+) 2.4GHz wireless transceiver, acting as an OSI Layer 2 radio driver. It supports Arduino… | 85 | 2470 | active |
| apache/activemq Apache ActiveMQ is a high-performance, multi-protocol, Java-based open source message broker supporting JMS/Jakarta Messaging, AMQP, MQTT, … | 98 | 2464 | stable |
| moquette-io/moquette Moquette is a lightweight MQTT broker written in Java, compliant with MQTT 5 and MQTT 3, supporting QoS 0-2 and most MQTT 5 features. It is… | 81 | 2458 | active |
| rbaron/b-parasite An open source DIY soil moisture sensor with ambient temperature, humidity, and light sensing, built on nRF52840/nRF52833 hardware and powe… | 79 | 2444 | active |
| eclipse-paho/paho.mqtt.python The Eclipse Paho MQTT Python client library implementing MQTT protocol versions 5.0, 3.1.1, and 3.1. It enables Python applications to conn… | 67 | 2429 | active |
| pauldemarco/flutter_blue FlutterBlue is a Bluetooth LE plugin for Flutter that enables scanning, connecting, and interacting with nearby BLE devices from Dart code.… | 23 | 2428 | active |
| dotnet/iot Official .NET libraries (System.Device.Gpio and Iot.Device.Bindings) for building IoT applications that interact with GPIO pins, serial por… | 80 | 2414 | active |
| jorhelp/Ingram Ingram is a Python-based vulnerability scanning framework targeting network cameras (IP/CCTV devices). It integrates known exploits for com… | 67 | 2400 | active |
| Arduino Audio Tools A header-only C++ audio processing library for Arduino, PlatformIO, and ESP-IDF that provides audio sources, sinks, encoders/decoders (MP3,… | 93 | 2399 | active |
| OPCFoundation/UA-.NETStandard The official OPC Foundation reference implementation of the OPC Unified Architecture (OPC UA) protocol for .NET, providing client, server, … | 93 | 2393 | stable |
| eclipse-paho/paho.mqtt.c The Eclipse Paho C client library for the MQTT protocol, enabling applications to connect to an MQTT broker to publish messages and subscri… | 74 | 2373 | stable |
| Bambu Lab Home Assistant Integration A Home Assistant custom integration for Bambu Lab 3D printers, installed via HACS. It exposes printer sensors and controls inside Home Assi… | 92 | 2371 | active |
| IBM/AssetOpsBench AssetOpsBench is an open-source benchmark and framework from IBM for building, orchestrating, and evaluating domain-specific AI agents for … | 65 | 2362 | active |
| innoveit/react-native-ble-manager A React Native module for Bluetooth Low Energy (BLE) communication that wraps the native iOS and Android BLE APIs. It enables scanning, con… | 98 | 2334 | active |
| codetheweb/tuyapi TuyAPI is a Node.js library that provides an easy-to-use API for communicating with smart devices built on Tuya's protocol, such as plugs, … | 64 | 2325 | stable |
| espressif/esp-adf Espressif's official Advanced Development Framework for building audio and multimedia applications on ESP32-series SoCs. It provides pipeli… | 77 | 2319 | active |
| FastBee FastBee is a lightweight, full-stack open-source IoT platform built on Spring Boot with a built-in Netty MQTT broker, device management, th… | 67 | 2304 | active |
| openshwprojects/OpenBK7231T_App OpenBeken is open-source firmware serving as a Tasmota/ESPHome replacement for Tuya-based and other IoT modules across many chipsets (BK723… | 92 | 2298 | active |
| tphakala/birdnet-go BirdNET-Go is a self-hosted, 24/7 realtime soundscape analyser that classifies birds, bats, and other wildlife using local AI models like B… | 92 | 2250 | active |
| custom-components/ble_monitor A Home Assistant custom component that passively monitors Bluetooth Low Energy sensors from many brands (Xiaomi, Qingping, Govee, Inkbird, … | 97 | 2249 | active |
| AtomVM AtomVM is a lightweight implementation of the BEAM virtual machine that runs Erlang, Elixir, and Gleam bytecode on microcontrollers and oth… | 67 | 2248 | active |