Open Source Embedded Projects

Page 4 of 15 — 505 projects total

QBIT

QBIT

QBIT is an open-source desktop companion robot and personal IoT avatar based on the ESP32-C3. It features a custom monochrome animation system, integrated Wi-Fi management via NetWizard, and seamless Home Assistant integration through MQTT. The project includes a full-stack web platform for remote interaction, device claiming, and community animation sharing.

freertos littlefssqliteu8g2
STM32N6 Camera Capture Application

STM32N6 Camera Capture Application

This computer vision application demonstrates high-performance video streaming using USB UVC on STM32N6 series microcontrollers. It utilizes FreeRTOS for multi-threaded management and the Azure RTOS USBX stack to stream YUV422 video at various resolutions up to 800x480 at 30 FPS.

freertos
Image Classification Getting Started for STM32N6

Image Classification Getting Started for STM32N6

This project provides a real-time bare-metal environment for STM32N6 microcontrollers to execute image classification models accelerated by the on-chip NPU. It features a complete camera-to-display pipeline using STEdgeAI, DCMIPP, and ISP hardware blocks for high-performance edge AI.

PicoLM

PicoLM

PicoLM is a minimal, zero-dependency LLM inference engine written in C11 designed to run 1-billion parameter models on resource-constrained hardware. It features a tiny binary footprint of approximately 80KB and a runtime memory requirement of just 45MB, enabling local AI on devices like the Raspberry Pi Zero and LicheeRV Nano. The engine supports GGUF format models and utilizes memory-mapping and SIMD acceleration for efficient performance without internet connectivity.

PixelRoot32 Game Engine

PixelRoot32 Game Engine

PixelRoot32 is a lightweight, modular 2D game engine written in C++17 for ESP32 microcontrollers and PC simulation. It features a scene-based architecture, NES-style audio synthesis, and a high-performance rendering pipeline optimized for embedded hardware using DMA transfers.

tft-espiu8g2
Power-Pico

Power-Pico

Power-Pico is a high-precision, low-power analysis tool and USB ammeter designed for embedded developers. It features an STM32F411 MCU running FreeRTOS and the LVGL graphics library, enabling real-time waveform display and current measurement from 1μA to 5A through multi-range automatic switching.

freertos lvgl
zbot

zbot

zbot is an open-source embedded AI agent powered by Zephyr RTOS that implements a ReAct (Reason + Act) loop. It enables hardware control, persistent memory, and multi-step skills by connecting to OpenAI-compatible LLM APIs, targeting the nRF7002-DK and Linux simulation.

zephyr
PicoSound Audio Library for RP2040

PicoSound Audio Library for RP2040

PicoSound is a dual-core audio engine for the Raspberry Pi Pico (RP2040) that offloads audio processing to Core1 to ensure glitch-free playback. It supports an 8-channel mixer, synthesized waveforms, and WAV file streaming via LittleFS or PROGMEM, targeting both Arduino IDE and PlatformIO environments.

littlefsplatformio-platformio-core
FOC_Pocket

FOC_Pocket

FOC_Pocket is a compact, coin-sized brushless motor controller based on the ESP32-S3 and the SimpleFOC library. It utilizes highly integrated MPS chips, including the MP6541A driver and MA600A magnetic encoder, to provide precise position, speed, and torque control for small gimbal motors.

freertos
ATtiny85 MNIST RNN EEPROM

ATtiny85 MNIST RNN EEPROM

This project implements a Recurrent Neural Network (RNN) on an ATtiny85 microcontroller to perform MNIST digit recognition with approximately 95% accuracy. It utilizes the device's internal 512-byte EEPROM to store quantized model weights and biases, enabling deep learning inference on a highly resource-constrained 8-bit platform.

ESP32 MP3

ESP32 MP3

A custom-built portable MP3 player based on the ESP32 that features Bluetooth A2DP audio streaming and a dedicated OLED user interface. It utilizes a modular C++ architecture and a custom-designed PCB to manage media playback from a MicroSD card.

freertos u8g2
ESP32-P4 Home Assistant Display

ESP32-P4 Home Assistant Display

A tile-based firmware for ESP32-P4 devices that creates a touch-first Home Assistant dashboard. It utilizes FreeRTOS and LVGL for the user interface, supporting MQTT integration and web-based configuration. The system targets ESP32-P4 hardware like the Waveshare B4 and M5Stack Tab5, featuring OTA updates and internal storage management via LittleFS.

freertos littlefslvgl
OpenHaldex — ESP32-C6 Haldex Controller

OpenHaldex — ESP32-C6 Haldex Controller

An open-source AWD controller for Volkswagen and Audi Group vehicles using Haldex Generation 1, 2, 4, and 5 differentials. Built on the ESP32-C6, it utilizes dual CAN interfaces to intercept and modify vehicle signals, enabling custom torque distribution, standalone operation, and wireless tuning via a web interface.

freertos lwip
FPV Drone STM32F411 Flight Controller

FPV Drone STM32F411 Flight Controller

An open-source avionics stack for FPV drones featuring a custom STM32F411 flight computer and an STM32F405 power distribution board. The project includes full KiCad 9.0 hardware designs, STM32 HAL-based firmware, and a robust 3D-printable airframe optimized for 935 KV brushless motors.

FPBInject

FPBInject

FPBInject is a runtime code injection tool for ARM Cortex-M microcontrollers that allows developers to replace functions on a running device without reflashing, rebooting, or using a debugger. It leverages the hardware Flash Patch and Breakpoint (FPB) unit to redirect execution to custom code in RAM, supporting both bare-metal and NuttX environments on STM32F103 hardware.

nuttx
OpenScope 2C53T

OpenScope 2C53T

An open-source firmware replacement for the FNIRSI 2C53T 3-in-1 handheld instrument. Built on FreeRTOS and targeting the Artery AT32F403A MCU, it provides a complete rewrite of the oscilloscope, multimeter, and signal generator functions.

freertos
ToothPaste

ToothPaste

ToothPaste is an ESP32-S3 based hardware receiver that converts Web-BLE signals into AES-128 encrypted USB HID keyboard and mouse commands. It provides a secure, driverless solution for entering complex passwords and executing DuckyScript macros on air-gapped or untrusted systems.

freertos nanopb
Pulse

Pulse

Pulse is a real-time vibration anomaly detection system for microcontrollers that enables predictive maintenance without cloud connectivity. It leverages the Zephyr RTOS and STMicroelectronics NanoEdge AI on an STM32L412RB to provide a standalone, low-cost solution for monitoring industrial machinery.

zephyr
ESP32-S3 Smart Home Control Panel

ESP32-S3 Smart Home Control Panel

A sophisticated touch-screen control interface for the Waveshare ESP32-S3-Touch-LCD-4B, featuring Home Assistant integration and real-time weather tracking. It utilizes the LVGL graphics library for a high-performance UI and implements advanced power management via the AXP2101 PMU.

freertos lvglspiffs
ESP32 Thermal Camera Viewer

ESP32 Thermal Camera Viewer

A real-time thermal imaging system that streams 80x62 resolution frames from an ESP32-S3 to a Node.js web interface via TCP and WebSockets. It features a comprehensive dashboard with temperature overlays, live charting, and multiple color map presets for visual analysis.

freertos lwip
Oscilloscope for STM32F411

Oscilloscope for STM32F411

A dual-channel oscilloscope implementation for the STM32F411CEU6 microcontroller featuring signal acquisition via ADC with DMA and a dedicated ILI9341 display. It supports edge-based triggering and achieves a bandwidth of approximately 1 MHz while leveraging the STM32Cube HAL for peripheral management.

STM32 Synchronous Rectification Buck-Boost Digital Power Supply

STM32 Synchronous Rectification Buck-Boost Digital Power Supply

A high-performance digital power supply based on the STM32G474, featuring a four-switch Buck-Boost architecture for wide-range voltage regulation. It supports up to 450W output (48V 10A) with dual DC and USB-C PD inputs, utilizing high-resolution PWM and PID control for precise power management.

TCBM2SD

TCBM2SD

TCBM2SD is an SD-based mass storage solution and 1551 paddle replacement for the Commodore C16, C116, and Plus/4. It simulates the TCBM bus protocol of the 1551 disk drive using an Arduino Mini Pro and a CPLD, supporting high-speed loading and standard CBM DOS commands.

ESPHome Tesla BLE

ESPHome Tesla BLE

This project enables ESP32 microcontrollers to manage Tesla vehicle charging and monitor telemetry over Bluetooth Low Energy using the ESPHome framework. It supports key pairing, charging current adjustment, and vehicle wake management while utilizing FreeRTOS for task handling on the ESP32 platform.

freertos nimbleplatformio-platformio-core
USB Video Class (UVC) for Raspberry Pi Pico

USB Video Class (UVC) for Raspberry Pi Pico

This project implements a USB Video Class (UVC) firmware for the Raspberry Pi RP2040, enabling video streaming from an OV2640 camera to a host computer. It utilizes the TinyUSB stack for USB connectivity and provides optional FreeRTOS support for task management, while also driving an ILI9341 LCD for local preview using PIO-based drivers.

freertos
Swift Examples for STM32C011

Swift Examples for STM32C011

A collection of example projects demonstrating the use of Embedded Swift on the STM32C011 microcontroller. It targets the STM32C0116-DK development kit, showcasing hardware interaction through direct register access and the swift-mmio library for tasks like LED blinking, ADC joystick input, and USART communication.

picoAVE

picoAVE

picoAVE is a hardware and software HDMI mod for the Nintendo Wii, powered by the Raspberry Pi RP2040 microcontroller. It utilizes a parallel video processing pipeline across both cores to deliver 480p output without information loss, leveraging the RP2040's PIO and DMA capabilities for TMDS encoding and audio serialization.

nrfBlueNullifier

nrfBlueNullifier

A security research tool designed to jam classic Bluetooth signals using ESP32 and NRF24L01+PA/LNA modules. It utilizes high-gain radio modules to broadcast constant carrier waves and perform rapid channel hopping across the 2.4GHz spectrum.

RoArm-M2 Robotic Arm Control Firmware

RoArm-M2 Robotic Arm Control Firmware

A comprehensive ESP32-based control firmware for the Waveshare RoArm-M2, a 4DOF robotic arm. It features high-precision servo management, pneumatic control, and an OLED status display while utilizing LittleFS for data storage and supporting remote operation via Web interface, UART, and ESP-NOW.

littlefs
USB PD Tester

USB PD Tester

A monitoring and triggering device for USB Power Delivery built around the CH32X035 RISC-V microcontroller. It identifies power supply capabilities via PDOs, displays them on an OLED screen, and allows users to select specific voltages for output via a screw terminal. The project leverages the integrated USB PD PHY of the CH32X035 for a compact and low-cost hardware implementation.

USB PD Adapter

USB PD Adapter

A compact variable power supply that utilizes the PPS feature of USB Type-C PD supplies to provide adjustable output voltages and currents. It is powered by the CH32X035 RISC-V microcontroller and includes an INA219 sensor for real-time power monitoring and an OLED display.

USB2NRF - USB Controlled 2.4GHz Transceiver

USB2NRF - USB Controlled 2.4GHz Transceiver

USB2NRF is a hardware and software bridge between a USB interface and the nRF24L01+ 2.4GHz wireless transceiver, powered by the CH32X033 RISC-V microcontroller. It supports wireless serial data transfer via USB CDC and provides a flexible platform for IoT sensor networks, remote actuators, and wireless HID peripherals.

TinyBling - CH32V003 NeoPixel Pendant

TinyBling - CH32V003 NeoPixel Pendant

TinyBling is a wearable electronic pendant featuring 16 WS2812C-2020 addressable LEDs driven by a CH32V003 RISC-V microcontroller. It utilizes custom assembly-optimized bit-banging to control NeoPixels without hardware SPI, supporting various light animations and interactive games. The project is designed for compact PCB manufacturing and runs on a rechargeable LIR2032 coin cell.

platformio-platformio-core
Rotary Encoder with I²C Interface

Rotary Encoder with I²C Interface

This project implements an I2C-based interface for rotary encoders using the low-cost CH32V003 RISC-V microcontroller. It offloads debouncing and interrupt handling from the main controller and supports daisy-chaining multiple encoders via configurable I2C addresses.

CH32V003 FM Radio Receiver with RDS

CH32V003 FM Radio Receiver with RDS

A portable, battery-powered FM radio receiver based on the CH32V003 RISC-V microcontroller and the RDA5807MP tuner IC. It features RDS support, an OLED display, an integrated audio amplifier, and a built-in Li-Ion charging circuit.

ESPer CDP

ESPer CDP

An ESP32-based high-performance CD player firmware and hardware project that interfaces with IDE-based CD-ROM drives. It features a sophisticated audio path using the PCM5102 DAC and Wolfson WM8805, running on FreeRTOS with extensive use of PSRAM for audio buffering.

freertos esp32-targz