Open Source Embedded Projects

Page 9 of 10 — 343 projects total

ESP32-S3 USB to BLE Keyboard Bridge

ESP32-S3 USB to BLE Keyboard Bridge

This project transforms standard USB keyboards into wireless Bluetooth Low Energy (BLE) devices using the ESP32-S3's native USB-OTG hardware. It features multi-device switching for up to three paired hosts and utilizes the NimBLE stack for low-latency HID report forwarding.

freertos nimble
30
ESP32-Lepton

ESP32-Lepton

A high-performance ESP-IDF driver for FLIR Lepton 3.5 thermal imaging cameras. It provides full support for VoSPI frame capture and CCI camera control, optimized for ESP32 and ESP32-S3 microcontrollers.

freertos
Hypnos

Hypnos

A Zephyr-based firmware for the PineTime and P8 smartwatches. It provides a complete open-source operating environment featuring BLE time synchronization, LVGL-powered graphics, and over-the-air firmware updates via MCUBoot.

zephyr lvglmcuboot
77
LVGL for PinePhone and WebAssembly with Zig and Apache NuttX RTOS

LVGL for PinePhone and WebAssembly with Zig and Apache NuttX RTOS

A project demonstrating the development of a feature phone user interface using the Zig programming language and the LVGL graphics library. It targets the PinePhone running Apache NuttX RTOS while providing a WebAssembly-based simulation environment for rapid UI development in the browser.

nuttx lvgl
24
LY Steering Wheel MeterBox

LY Steering Wheel MeterBox

A comprehensive racing steering wheel and dashboard system based on the STM32F407 and FreeRTOS. It supports real-time CAN bus data acquisition for Formula Student race cars and integrates with PC simulators via USB HID and Simhub.

freertos lvgl
113
NeoPixel Library for Raspberry Pi Pico

NeoPixel Library for Raspberry Pi Pico

A MicroPython library for controlling WS2812B and SK6812 LEDs on the Raspberry Pi Pico. It leverages the RP2040's Programmable I/O (PIO) and DMA capabilities to provide efficient, non-blocking LED control for both RGB and RGBW strips.

micropython
300
NoteIt UART Datalogger

NoteIt UART Datalogger

A portable datalogger for UART-based devices featuring micro-SD storage with FatFs and an OLED display. It supports automatic baud rate detection, 3.3V/5V logic levels, and USB-C connectivity for data access and charging.

OBJEX Link

OBJEX Link

OBJEX Link is a modular IoT development platform designed for sustainability, repairability, and ease of recycling. It features a unique two-part architecture comprising a mainboard and interchangeable modules, allowing for rapid prototyping and customization. The project supports various hardware iterations, including versions based on the ESP32-C3 microcontroller.

117
OMOTE - Open Universal Remote

OMOTE - Open Universal Remote

An ESP32-based open-source universal remote firmware utilizing the Arduino framework and LVGL for its graphical user interface. It supports device control via Infrared, Bluetooth Low Energy keyboard emulation, and MQTT for smart home integration, featuring a cross-platform simulator for desktop-based UI development.

freertos lvglh2zero-esp-nimble-cpp
1,687
openHASP

openHASP

A comprehensive firmware for ESP32 and STM32F4 microcontrollers that provides a customizable touchscreen UI controlled via MQTT. It utilizes the LVGL graphics library to drive various commodity displays, enabling home automation control through a flexible JSONL-based configuration.

freertos lvglspiffslittlefstft-espi
919
OpenSK

OpenSK

An open-source Rust implementation of a FIDO2 security key. It runs as a Tock OS application or a standalone library, targeting Nordic nRF52840-based hardware to provide secure, hardware-backed authentication.

tock
3,265
OV-Watch

OV-Watch

A feature-rich open-source smartwatch based on the STM32F411CEU6 microcontroller. It utilizes FreeRTOS for task management and LVGL v8.2 for its graphical user interface, supporting health tracking, environmental sensing, and Bluetooth connectivity.

freertos lvgl
1,949
Python For Kids

Python For Kids

A comprehensive educational series for children to learn Python programming using the BBC micro:bit development board. It covers fundamental concepts from basic I/O and data types to advanced topics like classes and unit testing using MicroPython.

micropython
767
Raspberry Pi Pico Web Server Control

Raspberry Pi Pico Web Server Control

A MicroPython-based web server framework for Raspberry Pi Pico, ESP8266, and ESP32 microcontrollers. It provides a browser-based interface to execute Python functions remotely, serve dynamic content, and manage files, with specific optimizations for memory-constrained devices.

micropython
139
ReadMePaper: ESP32 7-Color e-Paper Display Project

ReadMePaper: ESP32 7-Color e-Paper Display Project

An ESP32-based firmware for displaying 24-bit BMP images on a Waveshare 7-color e-Paper module. It features a REST API to receive image URLs over WiFi, stores them in SPIFFS, and renders them on the display using the Arduino framework.

freertos spiffs
15
μReflow Oven with MicroPython & LVGL

μReflow Oven with MicroPython & LVGL

A PID-controlled reflow oven controller built for the ESP32 using MicroPython and the LVGL graphics library. It features a touch-screen interface for selecting solder profiles, real-time temperature monitoring via thermocouple amplifiers, and remote configuration via FTP.

freertos lvglmicropython
125
Trezor Firmware

Trezor Firmware

The official firmware for Trezor hardware wallets, supporting both the Trezor Model T and Trezor One. It features a modular architecture including a MicroPython-based core for modern devices and a legacy C implementation, backed by custom cryptographic and storage libraries.

nanopbmicropython
1,650
Tulip Creative Computer

Tulip Creative Computer

A portable, self-contained computer powered by the ESP32-S3 and MicroPython, designed for music synthesis, graphics, and coding. It features a dedicated 120-voice synthesizer engine, multi-layer GPU support, and integrated LVGL for user interface elements. The system boots directly into a Python prompt, providing a distraction-free environment for creative programming.

freertos lvglmicropython
542

X-Knob: A Smart Knob Based on LVGL UI Framework

X-Knob is an open-source smart knob project featuring a brushless motor for haptic feedback and a circular LCD for a dynamic UI. It is built using the ESP32-S3 microcontroller, the LVGL graphics library, and the X-TRACK UI framework, supporting features like MQTT integration for Home Assistant and Surface Dial functionality.

freertos lvgl
829
X-TRACK Open Source GPS Bicycle Computer

X-TRACK Open Source GPS Bicycle Computer

An open-source GPS bicycle computer featuring offline maps, real-time track recording, and GPX export. It is built on the high-performance AT32F435 microcontroller and utilizes the LVGL V8 library for a sophisticated graphical interface, supported by custom page management and data distribution frameworks.

lvgl
6,138
XiaoZhi AI Chatbot

XiaoZhi AI Chatbot

An open-source AI chatbot firmware for ESP32 microcontrollers that enables voice interaction using large language models like Qwen and DeepSeek. It features offline wake-up, streaming ASR/TTS, and utilizes the Model Context Protocol (MCP) for IoT device control and cloud-side capability expansion.

freertos lvgllwip
22,862
ZMK Firmware

ZMK Firmware

An open-source keyboard firmware built on the Zephyr Real Time Operating System. It provides a modern, wireless-first platform for mechanical keyboards, supporting Bluetooth Low Energy, split configurations, and extensive customization through a modular system of shields and behaviors.

zephyr lvglnanopb
3,759

NimBLE-Arduino

A lightweight Bluetooth Low Energy (BLE) library for Arduino based on the NimBLE stack. It provides a resource-efficient alternative to the standard Bluedroid-based BLE library for ESP32 and Nordic nRF5 series microcontrollers, significantly reducing flash and RAM usage.

freertos nimble
984

RT-Thread NimBLE

A port of the Apache NimBLE Bluetooth 5.0 stack for the RT-Thread RTOS. It provides full Host and Controller layer support for Nordic nRF51 and nRF52 series microcontrollers, as well as a Host-only mode for external controllers via HCI UART.

rt-thread nimble
138
EEZ Bench Box 3 (BB3) Modular Power Supply Platform

EEZ Bench Box 3 (BB3) Modular Power Supply Platform

An open-source modular Test and Measurement platform centered around an STM32F769 ARM Cortex-M7 MCU. It provides a complete hardware and software framework for modular power supplies and data acquisition, supporting visual programming via EEZ Flow, SCPI commands, and MicroPython scripting.

micropython
357
MicroPython for Monocle

MicroPython for Monocle

A custom MicroPython firmware deployment specifically designed for the Monocle AR glasses. It integrates the Nordic nRF52832 SoC with support for Bluetooth LE, FPGA-driven displays, and camera modules using the LittleFS file system and Nordic SoftDevice.

micropythonlittlefs
234
MicroPython TM1637 Library

MicroPython TM1637 Library

A MicroPython library for quad 7-segment LED display modules using the TM1637 LED driver. It provides a comprehensive API for controlling brightness, displaying numbers, hex values, temperatures, and scrolling text on various microcontroller platforms.

micropython
223
MicroPython Waveshare e-Paper Drivers

MicroPython Waveshare e-Paper Drivers

A collection of MicroPython drivers for various Waveshare e-Paper displays, supporting a wide range of screen sizes and color configurations. The library provides an interface for controlling these displays using SPI or UART on MicroPython-compatible hardware, including support for partial and full refreshes.

micropython
379
mPython Board

mPython Board

An open-source MicroPython-based firmware and hardware project for the mPython (掌控板) educational board. Powered by the ESP32 dual-core microcontroller, it provides a Python 3 compatible environment designed for STEAM education and maker projects.

freertos micropython
136
Lua RTOS for ESP32

Lua RTOS for ESP32

Lua RTOS is a real-time operating system for embedded systems, featuring a Lua 5.3 interpreter on top of a FreeRTOS-powered micro-kernel. It provides a hardware abstraction layer for ESP32, ESP8266, and PIC32MZ platforms, allowing for programming via Lua or a block-based IDE.

freertos spiffslwip
1,305
MaixPy (v4)

MaixPy (v4)

A Python SDK for edge AI vision and audio applications targeting Sipeed's MaixCAM and MaixCAM2 hardware. It provides high-level APIs for NPU-accelerated AI models, image processing, and peripheral control on RISC-V and ARM-based embedded systems.

rt-thread
637
micropyGPS

micropyGPS

A full-featured GPS NMEA-0183 sentence parser written in pure Python 3.x for MicroPython and embedded platforms. It provides robust parsing for various GPS messages, including position, time, and satellite data, with specific support for the PyBoard and ESP32.

micropython
384
MicroPython Camera Driver for ESP32

MicroPython Camera Driver for ESP32

A specialized driver that adds OV2640 camera support to MicroPython for the ESP32 family. It enables high-resolution image capture by leveraging PSRAM and provides a Pythonic interface for controlling camera parameters like frame size, quality, and special effects.

freertos micropython
546
MicroPython MPU9x50 IMU Driver

MicroPython MPU9x50 IMU Driver

A comprehensive MicroPython library for InvenSense MPU9150, MPU9250, and MPU6050 sensors. It features a robust 3D vector class, sensor calibration tools, and support for vehicle-relative coordinate mapping, specifically optimized for the Pyboard and other MicroPython-compatible hardware.

micropython
273
Arduino Lab for MicroPython

Arduino Lab for MicroPython

A lightweight, Electron-based editor for MicroPython development. It supports serial communication with microcontrollers to provide an interactive REPL, file system management, and direct code execution.

micropython
270
AzureRTOS Dual-Core Implementation for STM32H747

AzureRTOS Dual-Core Implementation for STM32H747

A dual-core embedded application for the STM32H747I-DISCO board utilizing AzureRTOS (ThreadX) and GUIX. It demonstrates a distributed architecture where the Cortex-M4 manages I2C sensor data and peripherals while the Cortex-M7 handles the graphical user interface and display logic.

threadx-rtos guix
11