Open-source iot software
536 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.
536 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| apple/HomeKitADK Apple's open-source HomeKit Accessory Development Kit implementing the HomeKit Accessory Protocol (HAP) in C. It lets developers prototype … | 10 | 2618 | maintenance |
| armink/EasyFlash EasyFlash is a lightweight open-source embedded Flash storage library written in C, providing key-value (ENV) parameter storage with wear l… | 24 | 2371 | maintenance |
| OOMWOO OOMWOO is an open-source DIY robot vacuum cleaner built with a Raspberry Pi, ESP32, Arduino, 3D-printed chassis, and 2D LiDAR for SLAM-base… | 59 | 12221 | experimental |
| espressif/esp-drone ESP-Drone is open-source firmware for mini drones/quadcopters built on ESP32 and ESP32-S series chips, ported from the Crazyflie project. I… | 72 | 2240 | maintenance |
| br3ttb/Arduino-PID-Library A PID (Proportional-Integral-Derivative) feedback control library for Arduino, written in C++. It provides basic closed-loop control functi… | 23 | 2205 | maintenance |
| andrewjfreyer/monitor A shell-based application that performs passive Bluetooth Low Energy (BTLE) presence detection of beacons, cell phones, and other Bluetooth… | 23 | 2116 | maintenance |
| sui77/rc-switch An Arduino library (also usable on Raspberry Pi) for sending and receiving 315/433MHz radio-controlled codes to operate devices like power … | 23 | 2088 | maintenance |
| Lora-net/LoRaMac-node A reference implementation of a LoRaWAN end-device (node) stack written in C, with example projects for various MCU platforms. It implement… | 23 | 1997 | maintenance |
| BCN3D/BCN3D-Moveo BCN3D Moveo is an open-source, fully 3D-printed robotic arm designed for educational purposes, including CAD files, STL files, firmware, as… | 32 | 1994 | maintenance |
| FluidNC Grbl_ESP32 is a port of the Grbl CNC controller firmware to the ESP32 microcontroller, supporting up to 6 coordinated axes, 12 motors, WiFi… | 32 | 1972 | maintenance |
| jishi/node-sonos-http-api A Node.js HTTP API bridge for controlling Sonos speakers, exposing simple REST-style endpoints for play, pause, volume, grouping, and prese… | 25 | 1963 | maintenance |
| Balanduino A small C++ Kalman filter library for microcontrollers that fuses accelerometer/magnetometer and gyroscope input to estimate angle, rate, a… | 32 | 1950 | maintenance |
| USB Host Shield Library for Arduino Revision 2.0 of the USB Host Shield library for Arduino, driving the MAX3421E USB host controller. It supports USB devices including game c… | 57 | 1941 | maintenance |
| sandeepmistry/arduino-LoRa An Arduino library for sending and receiving data over LoRa radios using Semtech SX1276/77/78/79-based modules. It provides a simple API fo… | 32 | 1925 | maintenance |
| BlueRetro BlueRetro is an open-source multiplayer Bluetooth controller adapter firmware for ESP32 that lets modern Bluetooth gamepads (Wii, Switch, P… | 10 | 1845 | maintenance |
| peng-zhihui/Peak Peak is a tiny smart terminal device kit: a portable ESP32-based firmware and hardware project integrating the LVGL graphics framework, an … | 32 | 1841 | maintenance |
| WHID WHID Injector is an open-source WiFi HID injection tool that combines an ESP8266 with an ATmega32u4 to remotely deliver BadUSB keystroke at… | 32 | 1821 | maintenance |
| kalliope-project/kalliope Kalliope is a modular, always-on voice-controlled personal assistant framework written in Python, designed to run on Linux systems includin… | 23 | 1784 | maintenance |
| SpenceKonde/ATTinyCore An Arduino core providing support for nearly all classic ATtiny AVR microcontrollers, including the x4/x5/x61/x7/x8 series, 1634, 828, and … | 23 | 1771 | maintenance |
| samdenty/Wi-PWN Wi-PWN is ESP8266 firmware for performing WiFi deauthentication attacks with a fast, responsive Material Design web UI. It includes an inte… | 23 | 1747 | maintenance |
| dwhinham/mt32-pi A baremetal kernel that turns a Raspberry Pi 3 or later into a Roland MT-32 emulator and SoundFont-based General MIDI synthesizer, built on… | 23 | 1729 | maintenance |
| MaixPy MaixPy-v1 is a MicroPython port for the Kendryte K210 RISC-V AI chip, letting users program Sipeed Maix boards in Python. It provides APIs … | 23 | 1709 | maintenance |
| bjoernkarmann/project_alias Project Alias is an open-source Raspberry Pi-based device that acts as a 'parasite' on smart home assistants, letting users train custom wa… | 32 | 1698 | maintenance |
| google/aiyprojects-raspbian Google's Python API libraries, samples, and Raspbian system images for the AIY Projects Voice Kit and Vision Kit on Raspberry Pi. It provid… | 10 | 1663 | maintenance |
| Mixiaoxiao/Arduino-HomeKit-ESP8266 An Arduino library implementing a native Apple HomeKit accessory server for the ESP8266 (with an ESP32 variant), allowing microcontroller p… | 23 | 1612 | maintenance |
| SuperHouse/esp-open-rtos An open source FreeRTOS-based software framework for the ESP8266 WiFi microcontroller, developed by the community as an alternative to Espr… | 23 | 1583 | maintenance |
| cnlohr/espusb A software-only USB device stack for the ESP8266/ESP8285, implementing low-speed (1.5 Mbit/s) USB in firmware with just one external resist… | 32 | 1550 | maintenance |
| tinyos/tinyos-main TinyOS is an open-source BSD-licensed operating system for low-power wireless embedded devices, written primarily in nesC. This repository … | 10 | 1500 | maintenance |
| fossasia/MMM-SUSI-AI A MagicMirror² module that integrates the SUSI.AI assistant, providing voice-activated intelligent answers on a smart mirror. It supports h… | 32 | 1482 | maintenance |
| fossasia/neurolab-firmware Firmware for the FOSSASIA Neurolab open-hardware neuroheadset, an EEG headband that measures brainwave signals from the forehead and connec… | 10 | 1460 | maintenance |
| lukevink/hass-config-lajv A personal Home Assistant configuration repository featuring a heavily customized, picture-elements-based Lovelace UI with a dynamic 3D flo… | 32 | 1405 | maintenance |
| jareware/chilipie-kiosk A prebuilt Raspberry Pi OS image that boots directly into full-screen Chrome for kiosk-style displays. It includes convenience features for… | 23 | 1400 | maintenance |
| spacehuhn/esp8266_beaconSpam An Arduino sketch for the ESP8266 that broadcasts fake WiFi beacon frames, making scanners show up to a thousand access points with custom … | 23 | 1377 | maintenance |
| homieiot/homie-esp8266 An Arduino framework for ESP8266 and ESP32 that implements the Homie MQTT convention for IoT devices. It provides configuration, OTA update… | 51 | 1373 | maintenance |
| uraimo/SwiftyGPIO SwiftyGPIO is a Swift library for hardware projects on Linux/ARM single-board computers like the Raspberry Pi, BeagleBone, and Orange Pi. I… | 32 | 1366 | maintenance |
| whitecatboard/Lua-RTOS-ESP32 Lua RTOS is a real-time operating system for embedded systems (ESP32, ESP8266, PIC32MZ) built on FreeRTOS with a Lua 5.3 interpreter on top… | 64 | 1334 | maintenance |
| PaulStoffregen/Time A C++ timekeeping library for Arduino providing date and time functions with synchronization from external sources like RTC modules, NTP, G… | 23 | 1319 | maintenance |
| rocketscream/Low-Power A lightweight Arduino library that provides low-power sleep and power management functions for AVR and SAMD microcontrollers. It supports i… | 23 | 1313 | maintenance |
| neonious/lowjs low.js is an open-source port of the Node.js JavaScript runtime rebuilt with far lower system requirements, running on POSIX systems (Linux… | 32 | 1287 | maintenance |
| Ansem-SoD/Picofly Picofly is firmware and documentation for a Nintendo Switch hardware modchip built on RP2040-based microcontrollers (RP2040-Zero, Pi Pico, … | 31 | 1269 | 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 |
| 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 |
| 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 |
| peng-zhihui/XUAN XUAN-Bike is an open-source self-driving (self-balancing) bicycle project by peng-zhihui, containing hardware design files including contro… | 32 | 5592 | experimental |
| rossumur/esp_8_bit ESP_8_BIT is firmware for the ESP32 that emulates Atari 8-bit computers, NES, and Sega Master System consoles, outputting NTSC/PAL composit… | 32 | 1202 | 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 |
| peng-zhihui/A-Eye A super-mini AI camera development board based on the Kendryte K210 chip, with fully open-source hardware (PCB and enclosure designs) and f… | 32 | 1190 | maintenance |
| Spooks4576/Ghost_ESP Ghost ESP is open-source ESP32 firmware (written in C on ESP-IDF) that turns 45+ ESP32 boards into a wireless security testing platform cov… | 10 | 1180 | 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 |
| Timthony/self_drive A self-driving RC car project based on Raspberry Pi and TensorFlow/Keras. It collects camera images while a human drives the car on a taped… | 32 | 1137 | maintenance |
| Disaster Radio Disaster Radio is a work-in-progress long-range, low-bandwidth wireless mesh network project for disaster recovery, powered by solar energy… | 57 | 1132 | maintenance |
| samyk/keysweeper KeySweeper is an open-source, open-hardware Arduino-based device disguised as a USB wall charger that passively sniffs, decrypts, and logs … | 32 | 1126 | maintenance |
| EricJMarti/inventory-hunter A Python-based stock monitoring bot that watches retail websites for inventory of items like CPUs, GPUs, and game consoles, and sends notif… | 32 | 1122 | maintenance |
| cathery/sys-con A Nintendo Switch homebrew sysmodule written in C++ that adds support for third-party USB game controllers like Xbox and DualShock pads. It… | 23 | 1114 | 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 |
| G4lile0/ESP32-WiFi-Hash-Monster A firmware for M5Stack/ESP32 devices that captures WPA2 EAPOL handshake and PMKID packets over WiFi and stores them on an SD card for later… | 32 | 1100 | maintenance |
| kriswiner/MPU9250 Arduino sketches and supporting code for the MPU-9250 9-DoF motion sensor, including calibration, self-test, and AHRS sensor fusion using M… | 32 | 1090 | 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| otem/Raspberry-Pi-Looper-synth-drum-thing A DIY Raspberry Pi-based looper/synth/drum machine running a custom Pure Data patch, with a Teensy 3.6 controller, custom button/drum-pad h… | 32 | 1028 | maintenance |
| T-vK/ESP32-BLE-Mouse An Arduino-compatible C++ library that turns an ESP32 into a Bluetooth LE (BLE) HID mouse. It exposes an Arduino Mouse-like API for moving … | 23 | 1027 | maintenance |
| rossumur/espflix ESPFLIX is an open-source video streaming set-top box that runs entirely on an ESP32 microcontroller, outputting NTSC/PAL video and audio o… | 32 | 1019 | maintenance |
| RyanZotti/Self-Driving-Car A hobby project that turns a toy Ferrari into a self-driving car using a Raspberry Pi, a PS3 controller for data collection, and a locally-… | 32 | 1017 | 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 |
| microsoft/devicescript DeviceScript is a TypeScript-based language and toolchain from Microsoft Research for programming low-resource microcontrollers like ESP32 … | 10 | 3446 | experimental |
| openairplay/airplay2-receiver A Python implementation of an AirPlay 2 receiver that can accept audio streams from Apple devices and other AirPlay senders. It supports Ho… | 69 | 2421 | experimental |
| Ildaron/Laser_control An open-source hardware and software project that uses a camera, deep learning object detection (Darknet/YOLO via OpenCV), and galvanometer… | 62 | 1625 | experimental |
| kaansenol5/VibeOS VibeOS is a hobby operating system written from scratch in C for ARM64 (aarch64), built collaboratively with Claude Code over 64 sessions. … | 42 | 1537 | experimental |
| zhouxiyu1997/friendmaker Friend Maker is a desktop application (macOS/Windows) that converts images into pixel grids and controller action scripts, then drives an E… | 77 | 1287 | 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 |
| dannymcc/bluehood Bluehood is a self-hosted Bluetooth scanner that passively detects nearby BLE and Classic Bluetooth devices, identifies them by vendor and … | 79 | 1149 | experimental |
| grbl/grbl Grbl is an open-source, embedded, high-performance g-code parser and CNC milling controller written in optimized C for AVR microcontrollers… | 32 | 6295 | 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 |
| Grbl Grbl is an open-source, high-performance g-code parser and CNC milling controller firmware written in optimized C for AVR-based Arduino boa… | 23 | 4566 | 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 |
| 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 |
| openfans-community-offical/Debian-Pi-Aarch64 Debian-Pi-Aarch64 is a 64-bit Debian-based operating system image for the full range of 64-bit Raspberry Pi hardware (Pi 2Bv1.2, 3B/B+/A+, … | 10 | 2574 | 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 |
| googlecreativelab/coder Coder is a free, open-source Node.js application that turns a Raspberry Pi into a simple web development platform for teaching HTML, CSS, a… | 10 | 2424 | 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 |
| secgroundzero/warberry WarBerryPi is a tactical exploitation toolkit built to run on a Raspberry Pi, acting as a drop-box/implant for red-team engagements to scan… | 32 | 2221 | abandoned |
| pimusicbox/pimusicbox Pi MusicBox is a bootable SD-card image that turns a Raspberry Pi into a headless streaming music player based on Mopidy, supporting Spotif… | 10 | 2033 | 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 |
| samyk/skyjack SkyJack is a drone hacking tool that autonomously seeks out, disconnects the owner of, and takes wireless control of nearby Parrot AR.Drone… | 32 | 1835 | abandoned |
| Onju Voice A hackable AI home assistant platform that replaces the internals of a Google Nest Mini with a custom ESP32-S3 PCB, paired with a server th… | 60 | 1732 | 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 |
| fossasia/susi_smart_box SUSI.AI Smart Box is an open-source smart speaker / voice assistant hardware project built around the SUSI.AI assistant. It provides the so… | 10 | 1529 | abandoned |
| Adafruit Blinka Adafruit's legacy monolithic Python library for Raspberry Pi hardware, including sensor drivers like the BMP085 and TCS34725 and character … | 10 | 1447 | 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 |
| 叮当 (Dingdang) Dingdang is an open-source Chinese voice conversation robot / smart speaker project that runs on Raspberry Pi and other Linux hosts. It use… | 10 | 1330 | 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 |