30 open-source projects similar to esphome/esphome, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Tasmota is a universal firmware platform for ESP8266 and ESP32 microcontrollers, designed to provide local control and management of smart home hardware. It functions as an event-driven automation controller that replaces proprietary factory firmware, allowing users to manage relays, sensors, and lighting systems without relying on external cloud services. The system is built on a modular driver architecture that enables dynamic hardware configuration and peripheral support through a web-based management interface. The platform distinguishes itself through a template-driven hardware mapping s
WLED is a web-based firmware designed for ESP8266 and ESP32 microcontrollers to manage addressable LED strips and matrices. It functions as a comprehensive IoT lighting automation system, providing the tools to control individual pixels, define logical segments, and execute dynamic lighting effects. The platform supports a wide range of hardware configurations, including matrix panels and non-addressable LED arrays, while offering granular control over brightness, color palettes, and animation speed. The project distinguishes itself through its extensive support for networked orchestration an
TinyGo is a specialized compiler and development toolkit designed to bring the Go programming language to resource-constrained microcontrollers and WebAssembly environments. It provides a bare-metal runtime environment that enables high-level code execution without the need for a traditional operating system, utilizing an LLVM-based backend to generate efficient machine instructions. The project distinguishes itself through aggressive optimization techniques tailored for small hardware, including a static memory allocation strategy and whole-program dead code elimination that significantly re
This project is a community-curated directory of open-source software designed for deployment in private server environments and home labs. It serves as a comprehensive resource for discovering independent, self-hosted alternatives to mainstream cloud services, enabling users to maintain full data ownership and control over their digital infrastructure. The directory is structured through a hierarchical taxonomy that organizes a vast collection of applications into logical categories, ranging from media management and data analytics to private communication and team productivity tools. It dis
Home Assistant is a home automation platform and IoT device orchestrator that serves as a central hub for controlling smart devices and executing automated routines. It functions as a local smart home controller, managing device states and automation logic on a local network to provide a private alternative to cloud-based hubs. The system emphasizes privacy-focused IoT management by prioritizing local control to reduce reliance on external cloud services. It enables multi-vendor device integration, translating diverse third-party hardware signals into a unified interface for consolidated mana
MicroPython is a lean implementation of Python 3 optimized to run on microcontrollers and other resource-constrained systems. It serves as a cross-platform embedded runtime and hardware abstraction layer, providing a firmware framework that maps high-level software commands to specific microcontroller registers across diverse processor architectures. The project functions as an embedded language interpreter that enables rapid prototyping on hardware through an interactive read-eval-print loop. It supports a wide range of target environments, including ARM, ESP32, STM32, RISC-V, and WebAssembl
Home Assistant is a centralized home automation platform designed to orchestrate diverse internet-connected devices and services. It functions as a local-first control system that normalizes heterogeneous hardware protocols into a unified set of entities, attributes, and services. The core architecture relies on an event-driven state bus and a modular integration model, allowing the system to manage state changes and communicate across decoupled components through standardized interfaces. The platform distinguishes itself through a highly flexible, declarative configuration framework that all
This project is an open-source software development kit and framework for implementing the Matter smart home standard. It provides a universal IPv6-based application layer and a cluster-based data model to ensure interoperability between diverse smart home devices and controllers. The system is distinguished by its multi-transport network abstraction, which maps Bluetooth LE, Thread, and Wi-Fi implementations to a common layer. It includes specialized tooling for secure device commissioning via QR codes and NFC, as well as a comprehensive over-the-air firmware update system for distributing s
Johnny-Five is a JavaScript robotics framework and microcontroller hardware interface designed for programming robots and IoT devices. It provides a standardized library for managing pins, motors, and displays across various microcontroller platforms, allowing developers to control sensors and actuators using a consistent JavaScript API. The framework is distinguished by its use of a plugin-based hardware abstraction system, which enables communication with diverse hardware platforms and protocols. It supports real-time hardware manipulation and debugging through a read-eval-print loop that a
Valetudo is a custom firmware project for robot vacuums that enables local-only control, removing dependencies on cloud servers and protecting user privacy. It replaces proprietary vendor binaries with open source software to ensure that data, including floor plans and images, is not uploaded to external clouds. The project distinguishes itself by providing a rooted firmware installation process that prevents forced vendor updates. It implements a standardized control interface across different hardware brands and utilizes an MQTT-based message bus to facilitate integration with open source a
This project is a software integration designed to connect and control local Xiaomi smart home devices within a centralized home automation environment. It functions as a bridge that enables unified monitoring and management of various connected appliances across a local network, providing a standardized interface for IoT device orchestration. The integration secures communication channels by validating encrypted handshake sequences required to authorize commands between the controller and local hardware. It maintains state consistency by translating proprietary device attributes into standar
Gobot is a robotics framework for the Go programming language designed for developing robotics, drones, and IoT applications. It provides a hardware abstraction layer with standardized drivers to interact with GPIO, I2C, SPI, and PWM interfaces across various single-board computers and microcontrollers. The framework functions as an IoT device orchestrator and BLE device manager, enabling the coordination of multiple sensors, actuators, and Bluetooth Low Energy peripherals. It includes specialized interfaces for drone control, allowing for the management of flight maneuvers and video streams
This project is a smart home automation framework and a library of device drivers and handlers designed to integrate hardware into the SmartThings ecosystem. It functions as an IoT device handler repository that translates proprietary hardware signals into standard commands for a central hub. The system emphasizes a local hub rules engine to execute automation logic and device routines directly on hardware, reducing reliance on cloud processing. It provides a collection of custom drivers specifically for managing Zigbee, Z-Wave, and LAN devices. The framework covers the development of custom
OpenCat-Quadruped-Robot is a development framework and motion control API for building four-legged robots. It provides a comprehensive environment for quadruped robot development, featuring tools for locomotion gait design, inverse kinematics, and a layered control architecture that separates high-level intelligence from low-level motion. The project distinguishes itself as an embedded AI deployment tool, allowing users to train, quantize, and deploy machine learning models to vision modules for tasks such as object detection and visual target tracking. It further supports complex human-robot
The pico-sdk is a software development kit for creating C and C++ applications on RP2040 and RP2350 hardware platforms. It functions as an embedded development kit that provides hardware abstraction layers and drivers to interface with microcontroller peripherals and registers. The project utilizes a CMake build system to manage the compilation of source code into multiple binary formats, including UF2, ELF, and HEX images. This environment coordinates the build and link processes to ensure the resulting firmware is correctly tailored for the target hardware. The toolkit covers embedded hard
This project is an OpenWrt firmware builder and specialized Linux router distribution designed to repurpose Amlogic S9xxx series hardware into functional routers. It provides a hardware adaptation layer consisting of kernel modifications and drivers that enable the operating system to run on Amlogic ARM SoC devices. The project features an automated firmware pipeline for scheduling, building, and distributing custom images. It includes a device recovery toolkit for bootstrapping, flashing, and restoring factory images, and supports the conversion of devices previously running different mobile
Xiaozhi-esp32 is an open-source firmware platform designed for building voice-interactive embedded systems on resource-constrained microcontrollers. It functions as an IoT conversational device platform that manages live audio input, speech synthesis, and conversational state transitions to facilitate real-time natural language interaction. The system distinguishes itself by bridging language models with physical hardware through standardized protocols, allowing for the execution of commands on local peripherals or remote smart home services. It utilizes a specialized architecture to coordina
This project provides a development framework that enables programming Raspberry Pi Pico microcontrollers using the Arduino environment and standard C++ libraries. It serves as a unified platform for compiling, debugging, and deploying firmware to diverse hardware boards based on the RP2040 and RP2350 architectures. The framework distinguishes itself through native support for symmetric multicore execution, allowing developers to distribute independent tasks across multiple processor cores to manage complex workloads. It also includes a specialized library for USB peripheral emulation, enabli
Blynk is an embedded device framework and IoT cloud connectivity library designed to establish secure, bi-directional communication between microcontrollers and a remote management platform. It provides the core identity of an IoT device management tool, enabling the synchronization of device states, remote hardware control, and the mapping of hardware data to cloud-based interfaces. The project distinguishes itself through a virtual-pin system that decouples cloud communication from physical pins, allowing for hardware-independent data exchange. It also supports advanced architectural offloa
This project provides educational resources and technical guides for microcontroller firmware development. It focuses on writing low-level C code that runs directly on hardware without an underlying operating system, covering the fundamentals of hardware registers, memory mapping, and system clocks. The guides detail the creation of hardware abstraction layers to wrap raw memory-mapped registers into structured interfaces and provide walkthroughs for integrating TCP/IP stacks and HTTP servers into bare-metal environments. It also outlines the implementation of embedded systems build pipelines
This project is an OpenWrt firmware build system and embedded Linux build tool designed to create customized router firmware images for NanoPi hardware. It functions as a network OS customization kit, providing a structured environment for compiling tailored operating system images that integrate specific drivers, packages, and kernel optimizations. The system distinguishes itself through deep hardware and performance tuning, including kernel-space flow offloading for traffic acceleration and symmetric multiprocessing interrupt balancing to prevent single-core processing bottlenecks. It enabl
Domoticz is a home automation platform and multi-protocol IoT orchestrator designed for controlling smart home devices and automating routines. It functions as an event-driven automation engine and a centralized system for managing connected sensors and hardware across Linux, Windows, and Raspberry Pi. The system acts as a Zigbee and Z-Wave controller and an MQTT IoT gateway, bridging disparate hardware ecosystems through a flexible plugin system. This allows for the unification of various communication standards into a single management interface. The platform covers broad capabilities incl
This project is flight control autopilot software designed as a real-time operating system for managing the flight dynamics and navigation of autonomous multicopters, fixed-wing aircraft, and rovers. It serves as a multi-vehicle autopilot framework that supports various aircraft configurations, including vertical takeoff and landing platforms across industrial environments. The system includes a MAVLink communication stack for exchanging telemetry and command data between unmanned vehicles and ground control stations. It also provides a software-in-the-loop flight simulator to test autopilot
Grocy is a self-hosted household management system designed to track grocery inventory, chore logs, and equipment manuals within a private home environment. It functions as a grocery inventory manager, a digital recipe and meal planner, and a household chore tracker. The system distinguishes itself through a REST API that exposes all household functions for home automation integration and a barcode-based stock controller that utilizes external databases to identify products and update stock levels. It also features recipe web scraping to automatically extract culinary data from external websi
ZSWatch is a real-time operating system for wearable devices featuring a touch display and Bluetooth Low Energy connectivity. It provides a comprehensive software suite that includes a Bluetooth LE communication stack, an embedded UI framework for round displays, and a complete firmware toolchain for compiling, flashing, and simulating wearable hardware. The project is distinguished by its specialized wearable capabilities, such as a graphical framework for designing reactive screens and watchfaces via a visual editor. It implements a publish-subscribe messaging system to decouple hardware se
Espectre is an edge machine learning framework and motion detection platform that uses Wi-Fi Channel State Information to identify human presence and movement. It functions as a sensing toolkit for ESP32 microcontrollers, enabling the detection of motion through walls without the use of cameras or wearables. The project distinguishes itself by executing compact neural network classifiers and mathematical detection algorithms directly on the microcontroller. It utilizes a MicroPython runtime to allow for the prototyping and deployment of sensing logic and wireless signal processing algorithms
Umbrel is a home server operating system designed to centralize the management of self-hosted applications and personal data services. It provides a unified, web-based graphical dashboard that abstracts complex system administration tasks, allowing users to deploy and maintain private cloud infrastructure, blockchain nodes, and media streaming services without requiring command-line interaction. The platform distinguishes itself through a modular application marketplace that automates the retrieval, configuration, and lifecycle management of containerized software. It integrates local artific
Homebridge is a Node.js home automation server that acts as a bridge to expose non-native smart home devices to Apple HomeKit. It functions as a plugin-based framework that maps proprietary device APIs to standardized home automation services and protocols. The system utilizes a modular plugin architecture and a protocol emulation layer to make third-party hardware appear as native accessories. It further supports cross-platform compatibility by acting as a Matter device bridge, allowing Matter-standard hardware to connect to various home automation controllers. The software includes a web i
ImmortalWrt is an embedded network operating system for routers and network hardware. Built as a Linux distribution based on OpenWrt, it functions as a firmware builder and operating system designed to manage routing, switching, and firewalling. The project extends the OpenWrt base by providing additional drivers and pre-configured software packages. It includes a toolset for compiling tailored system images from source to match specific hardware architectures and chipsets. The system features a web-based management interface for device administration and a modular package manager for instal
Contiki is an operating system designed for resource-constrained embedded devices and the Internet of Things. It provides a lightweight, event-driven kernel that enables multitasking and low-power wireless network connectivity on hardware with extremely limited memory and processing power. The system distinguishes itself through a stackless threading model that allows for a blocking-style programming interface while maintaining a minimal memory footprint. It supports dynamic module and firmware management, enabling the loading and linking of relocatable binary code at runtime to update applic