Open Source Embedded Projects

Page 2 of 16 — 542 projects total

Serial VGA Controller

Serial VGA Controller

A high-performance VGA controller built around the 8-bit PIC18F47K42 microcontroller, capable of 360x480 resolution with 16 colors. It utilizes hardware peripherals like DMA, PWM, and SPI to generate signals with minimal CPU overhead, accepting ANSI-style escape sequences over a UART interface.

Paper Pi

Paper Pi

Paper Pi is a modular, asynchronous dashboard designed for Waveshare E-Ink displays, built with Python 3.14+. It targets Raspberry Pi and other Linux-based boards, providing a variety of widgets such as GitHub stats, weather, and HackerNews with support for 4-level grayscale rendering.

Tasmota SML Images

Tasmota SML Images

This project provides pre-compiled Tasmota firmware binaries specifically optimized for smart meter reading via SML and advanced scripting on ESP32 and ESP8266 platforms. It features a dual-track approach offering both the classic Tasmota Scripter and the high-performance TinyC VM, utilizing FreeRTOS for background processing and LittleFS for filesystem management. The firmware supports energy monitoring, Google Charts visualization, and emulation of smart battery interfaces like Shelly Pro 3EM.

freertos littlefslwiplvglplatformio-platformio-core
PaperSat

PaperSat

PaperSat is a standalone satellite tracking application for the M5Paper S3 e-ink tablet, providing real-time orbital predictions and polar sky plots. It utilizes SGP4 propagation for high-accuracy tracking and features an offline-first design with LittleFS for TLE data caching. The project is designed for amateur radio operators and observers, offering on-device configuration for location and time.

freertos littlefs
Z906 Remote

Z906 Remote

An ESP8266-based IoT solution for remote management of the Logitech Z906 5.1 surround sound system. It provides a web interface and MQTT integration for volume control, input switching, and status monitoring via the system's DE-15 console port.

littlefslwip
Pixel Pets

Pixel Pets

Pixel Pets is an open-source virtual pet ecosystem built for the M5Stack hardware family, featuring interactive digital companions with adaptive behaviors. It utilizes FreeRTOS for task management and the M5Unified library for hardware abstraction, supporting advanced features like ESP-NOW inter-device communication, offline LLM-based voice control, and real-time environment syncing. The project targets various ESP32 platforms including the CoreS3, Core2, and M5StickC PLUS2.

freertos littlefslwip
Ukr_GFX_fonts

Ukr_GFX_fonts

A specialized collection of fonts and utilities designed to add Ukrainian character support to popular Arduino graphics libraries like Adafruit GFX and TFT_eSPI. It includes a variety of serif, sans-serif, and monospace typefaces along with a conversion function to handle UTF-8 string encoding for embedded displays.

tft-espi
ESP32 Bit Pirate

ESP32 Bit Pirate

ESP32 Bit Pirate is an open-source firmware that transforms ESP32-S3 development boards into multi-protocol hardware hacking tools. It provides extensive support for digital protocols like I2C, SPI, and UART, as well as radio communications including Wi-Fi, Bluetooth, and Sub-GHz, utilizing FreeRTOS and LittleFS for robust device interaction.

freertos littlefslwipnimble
ESPHome Plant Watering

ESPHome Plant Watering

An automated irrigation system built with ESPHome for the M5Stack AtomS3-Lite and Unit Watering modules. It supports up to six plants via I2C expansion and features moisture-based automation and safety limits through Home Assistant integration.

freertos platformio-platformio-core
BETTA HA Panel

BETTA HA Panel

BETTA HA Panel is a runtime-configurable Home Assistant dashboard firmware for ESP32-P4 and ESP32-S3 touchscreen devices. Built on the ESP-IDF framework using LVGL and LittleFS, it allows users to design complex, multi-page layouts via a web-based drag-and-drop editor without requiring YAML configuration or firmware rebuilds.

freertos littlefslvgllwip
Claude Buddy Pico

Claude Buddy Pico

Claude Buddy Pico is a hardware mascot for Claude Desktop, ported from the original M5Stack version to the Raspberry Pi Pico 2 W. It features a 2.8-inch landscape display, Bluetooth Low Energy connectivity via BTstack, and physical buttons for approving or denying AI tool calls. The project utilizes the Pimoroni Pico library for peripheral management and includes custom 3D-printable CAD files for the enclosure.

Xiaozhi AI Desk Buddy (ESP32-S3)

Xiaozhi AI Desk Buddy (ESP32-S3)

An expressive AI desk companion based on the Seeed Xiao ESP32-S3 that features a fully animated face system. It utilizes the ESP-IDF framework with FreeRTOS, LVGL for rendering display interfaces, and SPIFFS for asset storage. The project integrates I2S audio components for listening and speaking capabilities, creating a dynamic interactive experience.

freertos lvglspiffs
Multi-Firmware-ESP

Multi-Firmware-ESP

A custom bootloader for the ESP32 that enables switching between multiple firmware versions using hardware switches. It integrates Over-The-Air (OTA) update capabilities and the ESP-Serial-Flasher library to facilitate remote firmware management and master-slave device flashing.

freertos lwip
Oh My Clawd

Oh My Clawd

A real-time monitoring tool for Claude Code usage, designed for the ESP32-2432S028R (CYD) hardware. The project uses a Go-based daemon to track Anthropic API rate limits and displays animated pixel art sprites that react to the user's coding activity.

freertos tft-espi
OpenTimeWatch-OS

OpenTimeWatch-OS

An open-source watch operating system designed for ESP32-S3 microcontrollers, specifically targeting the LILYGO T-QT Pro. It provides a customizable environment for watch faces and applications, utilizing the TFT_eSPI library for display management and FreeRTOS for task handling. The system includes features like WiFi time synchronization, motion sensing via MPU6050, and integrated games.

freertos tft-espi
KompressorKlock

KompressorKlock

An embedded controller for the KompressorKlock project, built on the STM32G071G8Ux microcontroller. It manages user input via a rotary encoder and controls peripheral hardware using I2C and PWM signals. The system is developed using the STM32Cube G0 firmware package and standard HAL drivers.

IV-11 VFD Tube Clock

IV-11 VFD Tube Clock

A custom-built 6-digit clock utilizing Soviet-era IV-11 vacuum fluorescent display tubes and an Arduino Nano Every. The project features a static drive architecture for maximum brightness, integrated power conversion for high-voltage rails, and a robust finite state machine for user configuration and timekeeping.

M5_Crystal

M5_Crystal

M5_Crystal is a modular firmware for M5Stack devices like the M5StickCPlus2 and Cardputer, providing a suite of tools for Wi-Fi, NFC, and Bluetooth interaction. It utilizes the M5Unified and M5GFX libraries for hardware abstraction and is built on a custom wrapper system designed for rapid feature development.

freertos h2zero-esp-nimble-cpplittlefsu8g2
Edge AI on Embedded Linux — i.MX 8M Plus

Edge AI on Embedded Linux — i.MX 8M Plus

A full-stack embedded Linux project for the NXP i.MX 8M Plus EVK featuring real-time NPU-accelerated object detection and NIR spectral monitoring. It demonstrates a complete development workflow from Yocto BSP bring-up and custom kernel module development to high-level Python applications using TensorFlow Lite and GStreamer.

USB-C Multimeter Hack

USB-C Multimeter Hack

This project details the reverse engineering and firmware development for repurposing a YOJOCK/Kowsi USB-C multimeter as a PY32F002A development board. It features a custom firmware implementation that provides power sensing, a stopwatch, and games, leveraging a bit-banged SPI interface for its 160x180 color display.

Clawdmeter

Clawdmeter

Clawdmeter is an ESP32-S3-powered desk dashboard that monitors Claude Code token usage and displays it on a 2.16" AMOLED screen. It uses the LVGL library for its high-resolution UI and the NimBLE stack to communicate with a host daemon via BLE, while also functioning as a HID keyboard for shortcuts. The project features dynamic pixel-art animations that react to real-time API utilization rates.

freertos lvglnimbleplatformio-platformio-core
ESP CAN-Analyzer

ESP CAN-Analyzer

An ESP32-based bridge that interfaces CAN bus systems with IoT environments using the Lawicel (SLCAN) protocol. It supports real-time CAN data monitoring and transmission via a web interface, Serial, or WebSockets, and is designed for automotive and industrial applications.

freertos spiffslwip
ESP32 Virtual Cat Project

ESP32 Virtual Cat Project

An interactive virtual pet built with Rust on the ESP32-C3, featuring environmental sensing and a state-driven animation system. It utilizes DHT and LDR sensors for environmental awareness and NVS for persistent statistics.

freertos
E-ink Meeting Room Schedule Display

E-ink Meeting Room Schedule Display

A wireless e-ink device based on the ESP32-powered Soldered Inkplate 6 platform that displays meeting room schedules. It utilizes the Roombelt backend for data and features a secondary digital photo frame mode that reads images from a microSD card.

freertos
Toyota RAV4 Climate Control Panel LIN Bus Interface

Toyota RAV4 Climate Control Panel LIN Bus Interface

This project provides an STM32 HAL-based implementation for communicating with a Toyota RAV4 climate control panel via the LIN bus. Targeting the STM32G474RE microcontroller, it demonstrates reverse engineering techniques for automotive HMI modules and utilizes DMA for efficient serial data handling.

cmsis
RP2040 DAC-Amp

RP2040 DAC-Amp

An experimental USB DAC and Class-D amplifier implemented on the Raspberry Pi RP2040. The project uses PIO-based H-bridge control and a 4th-order delta-sigma modulator to drive external MOSFETs directly from the microcontroller.

Flexispot Web Controller

Flexispot Web Controller

This project enables remote control and monitoring of Flexispot standing desks using an Arduino Nesso N1 or other M5Unified-compatible ESP32 devices. It emulates the original desk controller by communicating with the LoctekMotion control box via serial protocols, providing both a web-based UI and physical button controls.

freertos
IkeDryBox - Smart 3D Filament Dryer

IkeDryBox - Smart 3D Filament Dryer

IkeDryBox is an advanced ESP32-based DIY filament dryer featuring precision PID temperature control and a responsive LVGL touch interface. It integrates seamlessly with Home Assistant via MQTT and provides a built-in WebUI for real-time parameter tuning and network configuration.

lvgl
pico_fft: FFT Library for Raspberry Pi Pico

pico_fft: FFT Library for Raspberry Pi Pico

A lightweight and efficient wrapper for the KISS FFT library, specifically designed for the Raspberry Pi Pico (RP2040). It provides high-level functions for capturing analog signals via ADC and DMA, processing them into frequency bins, and performing real-time signal analysis.

M5Paper Buddy

M5Paper Buddy

A physical companion device for the Claude Code AI assistant, utilizing the M5Paper V1.1 e-ink display. It features real-time session mirroring, hardware-based tool approval, and touch-screen interactions powered by ESP32 and a Python-based daemon.

freertos littlefsplatformio-platformio-core
Beremiz4uC

Beremiz4uC

Beremiz4uC is a real-time runtime environment that executes Beremiz IDE PLC programs on STM32F4 microcontrollers using Zephyr RTOS. It features dynamic code loading via udynlink, eRPC-based communication, and flexible I/O management for industrial control applications.

zephyr littlefs
M5Dial-LVGL

M5Dial-LVGL

An LVGL port for the M5Stack Dial (M5Dial) based on the ESP-IDF framework. It integrates the Light and Versatile Graphics Library with M5Unified to provide support for the device's circular touch display and rotary encoder.

freertos lvgl
ESP32-8048S050C with LVGL 9.4 and FreeRTOS

ESP32-8048S050C with LVGL 9.4 and FreeRTOS

An implementation for the Sunton ESP32-S3 800x480 capacitive touch display utilizing ESP-IDF 5.5.2 and LVGL 9.4. It features optimized memory management strategies for PSRAM-based framebuffers and leverages FreeRTOS for efficient task orchestration.

freertos lvgl
ESP32 Mesh Control

ESP32 Mesh Control

An ESP-IDF based firmware for creating local mesh networks using ESP32-DevKitV1 hardware. It features a self-hosted web server for configuration, real-time topology visualization via WebSockets, and a custom OTA update mechanism that broadcasts firmware to all nodes in the mesh.

freertos lwipspiffs
Riden Dongle

Riden Dongle

An alternative firmware for Riden WiFi modules that provides Modbus TCP and SCPI support for RD-series power supplies. Built using the Arduino framework for ESP8266, it enables integration with professional lab automation tools and provides a comprehensive web interface for remote monitoring and control.

lwip
TISM - The Incredible State Machine

TISM - The Incredible State Machine

TISM is a cooperative multitasking framework for the Raspberry Pi Pico (RP2040 and RP2350) that enables concurrent task execution through a state-machine architecture. It provides essential system services including dual-core scheduling, a thread-safe messaging system, and hardware abstraction for interrupts and timers.