Open Source Embedded Projects

Showing 360 projects

Home Assistant ePaper Remote

Home Assistant ePaper Remote

A dedicated e-Ink remote control for Home Assistant built for ESP32-S3 devices like the M5Paper and Lilygo T5. It utilizes the Home Assistant WebSocket API for real-time state updates and control without requiring additional server-side plugins.

freertos platformio-platformio-core
osillyscope

osillyscope

A compact, inexpensive digital oscilloscope built around the CH32V003 RISC-V microcontroller and an SSD1306 OLED display. It features a maximum sample rate of 1.6MSa/s and an analog frontend supporting signal ranges from -3.3V to +3.3V. The project leverages the ch32fun framework and utilizes DMA and analog watchdog features for efficient signal processing.

EPD-nRF5: E-Paper Display Calendar and Photo Frame

EPD-nRF5: E-Paper Display Calendar and Photo Frame

An embedded firmware for nRF51 and nRF52 microcontrollers designed to drive e-paper displays for calendar and digital photo frame applications. It features Bluetooth image transmission, Chinese lunar calendar support, and a Web Bluetooth interface for cross-platform configuration.

nanopbu8g2
RoBart: Autonomous LLM-controlled Robot

RoBart: Autonomous LLM-controlled Robot

RoBart is an autonomous mobile robot that uses an iPhone Pro for compute and sensing, controlled by Large Language Models like Claude and GPT-4. It features a custom mobile base built from a salvaged hoverboard and an Adafruit Feather nRF52, leveraging ARKit for SLAM, spatial mapping, and navigation.

Custom 5x7 Dactyl Manuform with Integrated Trackball

Custom 5x7 Dactyl Manuform with Integrated Trackball

An ergonomic split keyboard project featuring a 5x7 Dactyl Manuform layout and an integrated PMW3610 trackball. It runs on ZMK Firmware powered by the Zephyr RTOS and utilizes an nRF52840 microcontroller for wireless connectivity.

zephyr
Kawaii Useless Robot

Kawaii Useless Robot

An ESP32-powered interactive robot that combines the classic 'useless box' concept with mobility and facial expressions. It leverages FreeRTOS to coordinate dual-core operations for LED matrix animations, servo-controlled mechanical arms, and stepper-driven movement.

freertos
Pico USB Blaster

Pico USB Blaster

This firmware transforms Raspberry Pi Pico or other RP2040/RP2350-based boards into an Altera USB-blaster compatible JTAG/AS/PS programmer. It leverages the tinyUSB stack for USB communication, making it compatible with Intel Quartus, OpenOCD, and other standard FPGA programming tools. The project supports various programming modes and includes optional support for level shifters and RGB status LEDs.

okhi - Open Keylogger Hardware Implant

okhi - Open Keylogger Hardware Implant

okhi is an open-source hardware implant designed to sniff and log keystrokes from USB and PS2 keyboards. It utilizes an RP2040 microcontroller for data parsing and an ESP32-C2 (ESP8684) for real-time WiFi transmission to a web interface. The project features advanced hardware design choices like TCXO oscillators and custom PIO programs to handle non-standard keyboard signals.

freertos
Tibber Price E-Ink Display

Tibber Price E-Ink Display

An ESP32-based project designed to fetch and display real-time electricity prices from the Tibber API on a Lilygo T5 4.7-inch E-Ink display. It utilizes the Arduino framework and focuses on providing an accessible, low-cost hardware solution for energy price monitoring.

freertos
SmartTrack RFID Attendance System

SmartTrack RFID Attendance System

An IoT-based attendance tracking system built with an ESP32 microcontroller, an MFRC522 RFID reader, and an OLED display. It captures unique card IDs and transmits them to a remote server via HTTP for logging and processing. The system provides real-time user feedback through a local display and manages Wi-Fi connectivity for seamless data synchronization.

Universal Maker Sensor Kit

Universal Maker Sensor Kit

A comprehensive educational resource and code repository for the SunFounder Universal Maker Sensor Kit, supporting Arduino and ESP32 development. It features over 50 technical lessons covering a wide array of sensors, actuators, and integrated projects like smart trashcans and automated dispensers. The project also emphasizes IoT connectivity, providing implementations for MQTT, Blynk, ThingSpeak, and Adafruit IO.

Speech Recognition on STM32 using Machine Learning

Speech Recognition on STM32 using Machine Learning

A bare-metal application for the STM32L475VGT that performs real-time keyword recognition using TensorFlow Lite for Microcontrollers. It utilizes a quantized convolutional neural network to classify audio commands, supported by hardware-accelerated CMSIS libraries.

tensorflow-micro
hsdaoh-rp2350: High Speed Data Acquisition over HDMI

hsdaoh-rp2350: High Speed Data Acquisition over HDMI

A high-performance data acquisition framework for the Raspberry Pi Pico 2 (RP2350) that leverages the HSTX peripheral to stream up to 175 MByte/s via HDMI. It enables real-time data transfer to a PC using low-cost USB3 HDMI capture sticks, supporting applications like logic analyzers, SDR, and high-speed ADC sampling.

OpenSpool

OpenSpool

OpenSpool is an open-source filament management system that uses NFC tags to automatically sync spool settings with 3D printers. Built on the ESPHome framework for ESP32 microcontrollers, it integrates with printers via MQTT to automate filament identification and configuration.

freertos platformio-platformio-core
Leta

Leta

Leta is an open-source smartwatch project built on the STM32F103 microcontroller, featuring a custom-written mini RTOS and a sophisticated monochrome GUI library. It integrates a variety of sensors including an IMU, magnetometer, and environmental sensors, alongside Bluetooth connectivity and a 1.3-inch OLED display.

STM32 Pocket Game/Dev Console

STM32 Pocket Game/Dev Console

An open-source handheld console based on the STM32F042 microcontroller, featuring a 2.4-inch SPI TFT display and programmable inputs. It is designed for portability with 2xAAA batteries and serves as a versatile platform for gaming or data acquisition projects.

XIAO ESP32C6 Sketches

XIAO ESP32C6 Sketches

A comprehensive collection of Arduino and PlatformIO examples for the Seeed Studio XIAO ESP32C6 development board. The repository covers essential hardware features including WiFi benchmarking, BLE, Zigbee, Matter protocol integration, and low-power deep sleep configurations.

2D LIDAR Edge Detection using Raspberry Pi Pico

2D LIDAR Edge Detection using Raspberry Pi Pico

This project implements an edge detection system for mobile robots using a 2D LIDAR sensor and a Raspberry Pi Pico. It processes real-time scan data to calculate distances to upcoming edges or 'holes' by comparing measured values against a geometric model of the floor surface.

Focus Dial

Focus Dial

Focus Dial is an ESP32-based productivity tool designed to manage focus sessions through physical hardware interaction. It integrates with Home Assistant to trigger environmental changes like lighting scenes and network-level distraction blocking while managing phone notifications via Bluetooth.

freertos
embedded-kf Library

embedded-kf Library

A lightweight, statically-allocated C library for implementing Kalman filters on resource-constrained embedded systems. It features asynchronous measurement updates and automatic code generation from JSON configurations, facilitating sensor fusion for robotics and IoT devices without dynamic memory allocation.

PICO TTL2VGA

PICO TTL2VGA

A Raspberry Pi Pico-based signal converter that translates legacy TTL video signals (MDA, CGA, and EGA) into modern VGA output at 720x400 @ 70Hz. It leverages the RP2040's PIO state machines and DMA for high-speed pixel capture and signal generation, supporting various legacy resolutions and frequencies.

Hexapod

Hexapod

A 3D-printed, 18-servo hexapod robot platform designed for agility and flexibility, supporting both ESP32 and Raspberry Pi Pico controllers. The project features WiFi-enabled remote control via UDP, Over-the-Air (OTA) firmware updates, and a modular mechanical design optimized for 3D printing.

ESP32 Remote for Victron

ESP32 Remote for Victron

An open-source monitoring and control solution for Victron Multiplus II systems using the LilyGo T-Display S3 AMOLED. Built on the ESP32 platform, it provides real-time data on solar power, grid status, and battery health while allowing users to toggle charger and inverter functions.

freertos
Smart Keymap

Smart Keymap

A library for building advanced keyboard firmware that uses the Nickel configuration language to define complex keymap behaviors. It supports Rust-based firmware using the RTIC and Embassy frameworks, as well as C-based firmware for WCH RISC-V microcontrollers. The project enables sophisticated features like layers, tap-hold keys, and chords across various hardware platforms including RP2040, STM32F4, and CH32X.

rtic
T-HMI-C64 Emulator

T-HMI-C64 Emulator

A multi-platform Commodore 64 emulator designed for ESP32-S3 and ESP32 microcontrollers, supporting various display technologies from integrated LCDs to LED matrix panels. It utilizes FreeRTOS for multi-core task distribution and offers versatile input options including custom Android BLE and web-based keyboards.

freertos
Solar Concentrator

Solar Concentrator

An automated solar concentrator system that uses an ESP32-CAM and Arduino Pro Mini to focus sunlight onto a thermal target. It utilizes the ESP-IDF framework and FreeRTOS for computer-vision-based sun tracking and mirror orientation.

freertos lwip
QN8066 FM DSP RX/TX Arduino Library

QN8066 FM DSP RX/TX Arduino Library

A versatile C++ library for the QN8066 FM transceiver, enabling high-quality FM radio transmission and reception with RDS support. It targets a broad range of Arduino-compatible hardware including ATmega328, ESP32, STM32, and ATtiny, providing low-level I2C control and high-level functional abstraction.

Cybergear ROS2 Controller

Cybergear ROS2 Controller

A ROS 2 bridge for controlling Xiaomi Cybergear motors using M5Stack hardware via micro-ROS and Ethernet. The system supports multiple motor configurations, real-time control modes, and parameter tuning through standard ROS 2 interfaces.

freertos lwip
Modbux

Modbux

Modbux is a cross-platform Modbus client and server simulation tool built with Electron and React. It supports both Modbus TCP and RTU protocols, offering advanced data type interpretation, register scanning, and simultaneous client-server operation for industrial automation testing.

InfiniEmu

InfiniEmu

InfiniEmu is a high-fidelity emulator for the PineTime smartwatch, simulating the nRF52832 SoC and its complete peripheral suite including I2C sensors and SPI displays. It enables developers to run production firmware like InfiniTime in both native desktop environments and web browsers using WebAssembly, featuring integrated support for FreeRTOS debugging and LittleFS storage.

freertos littlefs
GNSS LoRaWAN Tracker

GNSS LoRaWAN Tracker

A GNSS-based tracking application built on Zephyr RTOS that transmits location and ignition status over LoRaWAN using ABP authentication. It targets the ESP32 WROOM 32 and utilizes UART-based GNSS modules and Smart Modular LoRaWAN modems for cloud connectivity.

zephyr
ESP8266 OLED HW-364A/B Development Guide

ESP8266 OLED HW-364A/B Development Guide

A comprehensive configuration guide and code repository for the HW-364A and HW-364B ESP8266 modules featuring integrated 0.96-inch OLED displays. It provides corrected I2C pin mappings, implementation examples using the U8g2 library, and specific Arduino IDE configuration settings to ensure reliable operation.

u8g2
CH32V003 USB Meter

CH32V003 USB Meter

An open-source USB power meter based on the CH32V003 RISC-V microcontroller and INA219 sensor. It monitors voltage, current, and power (up to 100W/20V/5A) and displays data on a 0.96-inch OLED screen. The project features a compact design with PD 2.0 pass-through support and includes comprehensive hardware, firmware, and 3D enclosure files.

platformio-platformio-core
dtuGateway for Hoymiles HMS Inverters

dtuGateway for Hoymiles HMS Inverters

dtuGateway is an ESP32-based firmware that bridges Hoymiles HMS-series solar inverters with integrated Wi-Fi to smart home ecosystems. It provides reliable data monitoring and remote control via MQTT, REST API, and openHAB, bypassing the limitations of the official cloud interface. The project supports various local displays and features a captive portal for easy configuration.

freertos nanopbtft-espiu8g2
MicroPython for Flipper Zero

MicroPython for Flipper Zero

This project provides a MicroPython port for the Flipper Zero, enabling native Python script execution on the device. It allows developers to interface with hardware components like GPIO, ADC, PWM, and the internal speaker using Python instead of C. The application is distributed as a Flipper Application Package (FAP) and integrates the standard MicroPython library.

freertos micropython
Pico2Dexed

Pico2Dexed

A technical port of the Dexed FM synthesis engine to the Raspberry Pi Pico 2 (RP2350). The project utilizes the ARM Cortex-M33 cores to achieve 10-note polyphony at 44.1kHz, supporting I2S audio output and standalone MIDI tone playback.