Open Source Embedded Projects

Showing 542 projects

Plume — M5Cardputer ADV Edition

Plume — M5Cardputer ADV Edition

A passive RF scanner for the M5Cardputer ADV that detects Flock Safety ALPR cameras and Raven surveillance devices. It utilizes WiFi promiscuous mode and BLE scanning on the ESP32-S3, running entirely locally without cloud connectivity. Detections are logged to an SD card with GPS coordinates and signal strength visualizations.

freertos littlefsspiffsnimbleh2zero-esp-nimble-cpp
ehRadio

ehRadio

ehRadio is a feature-rich internet radio firmware for the ESP32 platform, specializing in the ESP32-S3 for high-performance audio streaming. It features a mobile-first WebUI, supports multiple audio decoders like I2S and VS1053, and integrates seamlessly with Home Assistant via MQTT.

freertos spiffs
Animated GIF with Push Button on ILI9341 LCD

Animated GIF with Push Button on ILI9341 LCD

This project provides firmware for the ESP32-S3 to display and cycle through animated GIFs stored in flash memory on a 320x240 ILI9341 LCD. It utilizes the bb_spi_lcd and AnimatedGIF libraries to manage display control and image decoding, allowing users to switch animations via a physical push button.

Gingoduino

Gingoduino

A high-performance music theory engine for embedded systems that provides advanced analysis of notes, chords, scales, and harmonic progressions. It features a zero-heap architecture and supports MIDI 1.0 and MIDI 2.0 UMP serialization across Arduino, ESP-IDF, and PlatformIO platforms.

tft-espi
Astronomy Micro Station

Astronomy Micro Station

A standalone astronomy display for the LILYGO T-Display S3 Pro powered by an ESP32-S3. It tracks solar and lunar conditions using the ipgeolocation.io API, featuring a touch-enabled interface, LittleFS caching for offline use, and seamless Home Assistant integration via MQTT.

freertos littlefstft-espi
Pomodoro Timer Dial for M5Stack Dial

Pomodoro Timer Dial for M5Stack Dial

An efficient and modular Pomodoro timer implementation specifically designed for the M5Stack Dial v1.1. It leverages the ESP32-S3 to provide a smooth rotary-based user interface, smart break calculations, and a high-performance display engine with SPIFFS-based asset management.

spiffs
iMX RT1011 Nano Kit

iMX RT1011 Nano Kit

A high-performance development board featuring the NXP iMX RT1011 Crossover MCU with an ARM Cortex-M7 core running at 500MHz. It supports the Zephyr RTOS and Python environments, offering 128 KB RAM, 128 Mb QSPI Flash, and a compact USB-C form factor for rapid prototyping.

zephyr littlefslvglmicropython
Crypto Price Viewer

Crypto Price Viewer

A standalone DIY cryptocurrency price display built around the Seeed Studio XIAO ESP32C6 and a 240x320px TFT screen. The project leverages Wi-Fi connectivity to fetch real-time market data and provides a captive portal for easy configuration via smartphone.

tft-espi
ESP32 Network Scanner

ESP32 Network Scanner

An energy-efficient network discovery tool for the ESP32 that utilizes ARP (Address Resolution Protocol) to identify devices on a LAN. Built using ESP-IDF and lwIP, it provides a real-time web interface to monitor device connectivity, bypassing the limitations of traditional ICMP ping scans.

freertos lwip
Raccoon Flash Explorer Demo

Raccoon Flash Explorer Demo

A high-performance USB flash memory programmer firmware for the STC8H8K64U microcontroller. It implements custom USB drivers and SCSI command parsing to provide a fast alternative to common CH341-based programmers for SPI flash chips up to 512 Mbit.

CrumBLE

CrumBLE

CrumBLE is an advanced e-reader firmware for the Xteink X4 and X3, built on the ESP32-C3 platform using the Arduino framework and NimBLE. It provides enhanced Bluetooth Low Energy (BLE) remote support, a customizable collections system, and optimized e-ink rendering through specialized image pre-caching.

freertos nimbleh2zero-esp-nimble-cpp
Retro-Zero

Retro-Zero

Retro-Zero is a Libretro-based emulator frontend designed for the Cardputer Zero running ARM64 Linux. It utilizes the LVGL graphics library for its user interface and supports a wide variety of retro gaming systems through on-demand core loading and hardware-accelerated graphics.

lvgl
OpenAirScope

OpenAirScope

OpenAirScope is a high-performance, open-source environmental monitoring platform built on the STM32H743 and ESP32-C3 microcontrollers. It features multi-protocol wireless connectivity including LoRaWAN, Wi-Fi, and Bluetooth, alongside a sophisticated sensor suite for comprehensive air quality and acoustic analysis.

platformio-platformio-core
CRose (China Rose) Lightweight Data Engine

CRose (China Rose) Lightweight Data Engine

CRose is an integrated industrial data platform designed for manufacturing and modern agriculture, providing a full-stack solution from hardware protocol collection to statistical analysis. It leverages a containerized architecture featuring Node-RED, IoTDB, and AI-driven flow generation to simplify edge device management and data orchestration.

DeskPet

DeskPet

DeskPet is a pixel-art companion for the M5Stack Cardputer that synchronizes with Claude Code sessions via Bluetooth Low Energy. Built on the ESP32-S3 using the Arduino framework and NimBLE, it provides real-time visual feedback on AI agent states, including task progress, token usage, and permission approvals directly from the device's keyboard.

freertos littlefsnimbleplatformio-platformio-core
Quntis LED Controller

Quntis LED Controller

A DIY remote controller for the Quntis Monitor Light Bar PRO+ that enables smart home integration using an ESP32 and NRF24L01 module. It features a dedicated sniffer to capture proprietary remote addresses and supports both standalone MQTT and native ESPHome configurations.

freertos spiffs
TankSync

TankSync

TankSync is a solar-powered, local-first smart water monitoring system built on ESP32 and ESP32-C3 hardware using the ESP-IDF framework. It utilizes long-range LoRa communication to bridge rooftop sensors with an indoor hub, offering Home Assistant integration and offline reliability via FreeRTOS-based firmware.

freertos spiffslwip
DS5 Bridge

DS5 Bridge

DS5 Bridge is a firmware and software suite that enables wireless Sony DualSense controller support on Windows via a Raspberry Pi Pico 2 W. It utilizes the TinyUSB and BTstack libraries to bridge Bluetooth HID reports to USB, featuring advanced support for HD haptics, adaptive triggers, and integrated audio. The project includes a dedicated Windows companion app for real-time configuration and profile management.

AirMouseS3

AirMouseS3

AirMouseS3 is an ESP32-S3 based gesture-controlled mouse that uses an onboard gyroscope and accelerometer to translate physical movement into cursor actions. Designed for the M5Stack StickS3, it utilizes the NimBLE library for Bluetooth HID connectivity and the M5Unified framework for hardware management.

freertos nimble
Open-Source LDAT (Latency Analyser)

Open-Source LDAT (Latency Analyser)

High-performance firmware for a DIY 'click-to-photon' latency tester built on the Teensy 4.1. It utilizes an 8kHz USB polling rate and a light sensor to measure the delay between a mouse click and on-screen visual changes with microsecond precision.

ASCII Aquarium

ASCII Aquarium

ASCII Aquarium is a live-rendered fish tank simulation and clock designed for the ESP32-2432S028R 'Cheap Yellow Display.' It uses the TFT_eSPI library to animate fish, bubbles, and seaweed using ASCII characters, featuring complex schooling behaviors and touch-to-feed interactivity. The project supports Wi-Fi time synchronization, persistent settings via ESP32 Preferences, and unique hardware expansions like beam splitter cubes.

tft-espi
DCF77 Transmitter

DCF77 Transmitter

An ESP8266-based signal generator that synchronizes radio-controlled clocks by mimicking the German DCF77 longwave time station. It fetches precise time via NTP over Wi-Fi and uses PWM harmonics to broadcast a localized 77.5 kHz signal.

lwip
Filtered Inertial Rotation Module (FIRM)

Filtered Inertial Rotation Module (FIRM)

FIRM is a high-powered rocketry flight computer firmware designed for accurate attitude and position tracking. Built for the STM32F405 microcontroller, it utilizes FreeRTOS and advanced Kalman filtering to process data from an array of inertial and environmental sensors.

freertos
Japi Base

Japi Base

Japi Base is a hackable retro computer platform for the Raspberry Pi Pico 2 (RP2350) that provides integrated VGA, PS/2 keyboard, SD storage, and audio capabilities. It utilizes a dual-core architecture where I/O management is isolated to one core and a single PIO block, leaving the second core and remaining peripherals entirely available for user applications. The system features a unified file API using littlefs for internal flash and FatFs for external SD cards.

littlefs
DSSH: Nintendo 3DS SSH Client with Pinyin IME and Voice Input

DSSH: Nintendo 3DS SSH Client with Pinyin IME and Voice Input

DSSH is a sophisticated SSH client for the Nintendo 3DS featuring a full ANSI terminal, Pinyin input method, and voice-to-text integration. Built with libssh2 and mbedTLS, it allows users to manage remote servers and interact with AI tools like Claude Code directly from their handheld console.

FlightRadar24-TTGO

FlightRadar24-TTGO

FlightRadar24-TTGO is an ESP32-based firmware that provides a real-time aircraft tracking display on TTGO and LilyGo-T-Display-S3 modules. It leverages the FlightRadar24 API for live updates and uses the LVGL library to render detailed flight information and carrier logos. The project includes a web-based configuration portal for setting location parameters, units, and traffic filters.

freertos lvgltft-espispiffs
E-Paper Climate Logger (Weathergotchi)

E-Paper Climate Logger (Weathergotchi)

A comprehensive environmental monitoring system built on the ESP32-S3 platform, featuring an e-paper display for high-visibility, low-power data visualization. The project integrates the GxEPD2 library for display management and includes full PCB schematics and CAD designs for a complete hardware-software solution.

freertos
Plane Radar

Plane Radar

An embedded flight tracking application for the ESP32-C3 Super Mini and a 1.28-inch round GC9A01 display. It visualizes live ADS-B aircraft data from adsb.fi on a sonar-style interface, providing real-time updates on aircraft headings, altitudes, and speed vectors with a captive portal for easy configuration.

freertos
ESP32 Morse Keyer

ESP32 Morse Keyer

A single-button wireless keyboard built on the ESP32-C5 that translates Morse code patterns into HID keystrokes over Bluetooth Low Energy. It features a real-time LVGL UI on a tiny 0.85-inch display and implements secure BLE bonding using the NimBLE stack.

freertos lvglnimble
StackChan Minimal

StackChan Minimal

An AI companion robot project for the M5Stack AtomS3R that connects an ESP32-based body to local AI services. It supports speech recognition, local LLM chat, and text-to-speech integration while providing a hardware interface for sensors and servos.

freertos platformio-platformio-core
PomoDesk - Physical Pomodoro Timer

PomoDesk - Physical Pomodoro Timer

PomoDesk is an ESP32-S3-based physical Pomodoro timer designed to help users maintain a flow state while ensuring they take regular breaks. It uses a NeoPixel LED ring for visual feedback and features power-saving optimizations by disabling unused wireless radios.

Melody Machine

Melody Machine

Melody Machine is a feature-rich MP3 player and internet radio firmware designed for the LilyGO T-LoRa Pager (ESP32-S3). It leverages FreeRTOS for dual-core audio processing and the LVGL library to provide a responsive graphical interface with support for local microSD playback and WiFi-based streaming.

freertos lvgl
Shrike FPGA Development Boards

Shrike FPGA Development Boards

Shrike is a family of low-cost, open-source FPGA development boards paired with microcontrollers like the RP2040, RP2350, and ESP32-S3. These boards feature a Renesas FPGA with 1120 LUTs, designed to bridge the gap between embedded microcontrollers and reconfigurable logic for learners and hobbyists.

micropython
Galagino for PlatformIO

Galagino for PlatformIO

Galagino is an ESP32-based arcade emulator ported to PlatformIO, supporting 24 classic games like Galaga, Pac-Man, and Donkey Kong. It is specifically optimized for the 'Cheap Yellow Display' (CYD) and designed to be retrofitted into commercial micro-arcade cabinets using the Arduino framework on FreeRTOS.

freertos
ESP32 Marauder for ESP32-3248S035C

ESP32 Marauder for ESP32-3248S035C

A specialized port of the ESP32 Marauder firmware for the ESP32-3248S035C development board, featuring a 3.5-inch capacitive touchscreen. It provides mobile tools for Wi-Fi security auditing, network scanning, and wardriving, leveraging FreeRTOS and the Arduino framework for efficient hardware management.

freertos
Chess Pro — Smart Hardware Chess Board

Chess Pro — Smart Hardware Chess Board

A sophisticated physical chess board utilizing Hall effect sensors for piece detection and dual displays for game status and clock. It runs on Go-powered Raspberry Pi or Orange Pi hardware, featuring deep Lichess integration, local Stockfish analysis, and a custom DietPi-based OS image with power-loss protection.

sqlite