Open-source embedded-systems software
1075 open-source libraries, tools and applications tagged embedded-systems, ranked by how closely embedded-systems is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
1075 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| Amaranth HDL Amaranth is a Python-based hardware definition language and toolchain for designing synchronous digital logic, including a standard library… | 91 | 2102 | active |
| joeycastillo/Sensor-Watch Sensor Watch is an open-source replacement main board for the classic Casio F-91W wristwatch, built around a Microchip SAM L22 ARM Cortex-M… | 77 | 2098 | active |
| Wasm3 Wasm3 is a fast WebAssembly interpreter and universal WASM runtime written in C, usable as a CLI tool or embedded library with bindings for… | 97 | 8037 | maintenance |
| cage-kiosk/cage Cage is a Wayland kiosk compositor that runs a single maximized application and prevents user interaction with anything else. It is built o… | 82 | 2082 | active |
| redballoonsecurity/ofrak OFRAK is a binary analysis and modification platform that identifies, unpacks, analyzes, modifies, and repacks binaries, with first-class s… | 63 | 2070 | active |
| usbarmory/tamago TamaGo is a framework that enables compilation and execution of Go applications directly on bare metal processors, without any underlying o… | 96 | 2060 | active |
| ScenicFramework/scenic Scenic is a client application UI framework for Elixir/Erlang/OTP that renders 2D retained-mode interfaces directly on top of OpenGL. It ta… | 42 | 2059 | active |
| libretro/Lakka-LibreELEC Lakka is a lightweight open-source Linux distribution built on LibreELEC that turns small computers like the Raspberry Pi into a dedicated … | 72 | 2056 | active |
| wb2osz/direwolf Dire Wolf is a software soundcard AX.25 packet modem/TNC and APRS encoder/decoder written in C. It replaces hardware TNCs, decoding radio s… | 80 | 2053 | active |
| v4l2rtspserver A C++ RTSP streaming server that captures video from V4L2 devices (H264, HEVC, JPEG, VP8, VP9) and optionally audio from ALSA devices, serv… | 81 | 2052 | active |
| cherry-embedded/CherryUSB CherryUSB is a portable, high-performance USB host and device stack written in C for embedded systems with various USB IPs. It provides cla… | 86 | 2051 | active |
| mongoose-os-apps/shelly-homekit Open-source Apple HomeKit firmware for Shelly smart home devices, written in C++ on Mongoose OS. It exposes Shelly relays, sensors, and shu… | 92 | 2047 | active |
| SpinalHDL SpinalHDL is an open-source Scala-based hardware description language (HDL) library for describing digital hardware at the register-transfe… | 87 | 2045 | active |
| rust-embedded/heapless A Rust crate providing `static`-friendly data structures (vectors, queues, maps, etc.) that don't require dynamic memory allocation. It is … | 80 | 2023 | stable |
| analogdevicesinc/hdl Analog Devices' HDL (Verilog/VHDL) libraries and FPGA reference design projects for their evaluation boards, built with AMD Xilinx Vivado o… | 87 | 2022 | active |
| pConst/basic_verilog A collection of reusable, synthesizable Verilog/SystemVerilog modules for FPGA projects, including UART, SPI, FIFO, PWM, debounce, synchron… | 61 | 2021 | active |
| CANopenNode CANopenNode is a free and open-source CANopen protocol stack written in ANSI C, implementing the standardized CiA301 (EN 50325-4) higher-la… | 60 | 2020 | stable |
| TailsmanDesign/PocketMage_PDA PocketMage is an open-source E-Ink PDA built on an ESP32-S3, running a custom C++ operating system (PocketMageOS) developed with PlatformIO… | 81 | 2019 | active |
| flutter-pi A lightweight Flutter Engine embedder for Linux embedded systems, primarily the Raspberry Pi, that runs Flutter apps directly on the frameb… | 73 | 2003 | active |
| peng-zhihui/L-ink_Card An open-source hardware and firmware project for a smart NFC card with an e-ink display, built on an STM32L051 MCU and ST25DV NFC chip. It … | 32 | 7646 | maintenance |
| ESP3D ESP3D is open-source firmware for ESP8266/ESP8285 and ESP32 boards that adds WiFi connectivity to 3D printers, CNC machines, and sand table… | 89 | 1998 | active |
| mborgerding/kissfft KISS FFT is a mixed-radix Fast Fourier Transform library written in C that supports fixed-point and floating-point data types. It is design… | 65 | 1984 | stable |
| Linzaer/Ultra-Light-Fast-Generic-Face-Detector-1MB An ultra-lightweight face detection model (~1MB FP32, ~300KB quantized) designed for edge computing devices, with slim and RFB variants tra… | 32 | 7548 | maintenance |
| Jailhouse Jailhouse is a Linux-based partitioning hypervisor that splits hardware resources into isolated cells running bare-metal applications or ad… | 32 | 1967 | stable |
| Blackymas/NSPanel_HA_Blueprint A Home Assistant Blueprint and ESPHome-based firmware configuration for the Sonoff NSPanel smart wall panel, allowing full customization th… | 81 | 1957 | active |
| Epsilon Epsilon is a high-performance operating system for the NumWorks graphing calculator, written in C++, with eleven apps covering the high sch… | 61 | 1957 | active |
| jerryscript-project/jerryscript JerryScript is an ultra-lightweight JavaScript engine written in C99 for resource-constrained devices like microcontrollers, running in und… | 40 | 7418 | maintenance |
| EPDiy EPDiy is a driver board and accompanying software library for driving affordable E-Paper (E-Ink) display modules, typically salvaged from e… | 92 | 1946 | active |
| FPGAwars/icestudio Icestudio is a visual editor for designing digital circuits for open-source FPGA boards using a drag-and-drop block interface, with optiona… | 92 | 1943 | active |
| OP-TEE OP-TEE Trusted OS is the secure-world operating system implementation of the OP-TEE project, running on ARM TrustZone-enabled hardware. It … | 75 | 1935 | active |
| egzumer/uv-k5-firmware-custom An open-source custom firmware for the Quansheng UV-K5/K6/5R handheld radio, merging OneOfEleven's custom firmware with fagci's spectrum an… | 19 | 1932 | active |
| rp-rs/rp-hal rp-hal is a Rust Hardware Abstraction Layer (HAL) implementing embedded-hal for the Raspberry Pi RP2040 and RP235x series microcontrollers.… | 84 | 1928 | active |
| CoreELEC/CoreELEC CoreELEC is a lightweight 'Just enough OS' Linux distribution built to run Kodi media center software on low-cost Amlogic-based hardware. I… | 70 | 1926 | active |
| Hummingbirdv2 E203 Hummingbirdv2 E203 is an open-source ultra-low power 32-bit RISC-V processor core and SoC written in Verilog, developed by Nuclei System Te… | 75 | 1925 | stable |
| Tuya Cloudcutter Tuya Cloudcutter is a Python-based toolchain that exploits a wireless vulnerability in Tuya smart devices using Beken BK7231 and Realtek ch… | 75 | 1919 | active |
| pascallanger/DIY-Multiprotocol-TX-Module An open-source firmware for a DIY 2.4GHz multiprotocol transmitter module that lets almost any RC transmitter control many different receiv… | 83 | 1904 | active |
| cesanta/elk Elk is a tiny embeddable JavaScript engine written in C that implements a small subset of ES6, designed for microcontrollers with footprint… | 52 | 1902 | active |
| NevermindZZT/letter-shell letter shell is an embeddable shell written in C for embedded devices, allowing command-line invocation of C functions within a running pro… | 23 | 1901 | stable |
| Nicholas-L-Johnson/flip-card A business card built on an RP2350 microcontroller that runs a FLIP (fluid-implicit-particle) fluid simulation on its display, including Ki… | 54 | 1900 | active |
| cifertech/RF-Clown RF-Clown is an open-source BLE and Bluetooth jammer built on ESP32 and multiple nRF24L01 radio modules, with an OLED display, NeoPixel feed… | 60 | 1894 | active |
| jgarff/rpi_ws281x A userspace C library for controlling WS281X LED strips (WS2812, SK6812 RGB/RGBW) from a Raspberry Pi via PWM, PCM, or SPI with DMA. It inc… | 55 | 1889 | stable |
| olofk/serv SERV is an award-winning bit-serial RISC-V CPU core written in Verilog, claimed to be the world's smallest RISC-V CPU at around 200 LUTs on… | 66 | 1887 | active |
| sbabic/swupdate SWUpdate is a Linux update agent for safely updating embedded Linux devices in the field, supporting local and OTA updates with multiple st… | 81 | 1876 | stable |
| collin80/SavvyCAN SavvyCAN is a Qt-based cross-platform CAN bus analysis tool for capturing, visualizing, saving, and loading CAN frames. It supports many lo… | 67 | 1867 | active |
| joric/nrfmicro nRFMicro is an open-source hardware project providing a DIY drop-in Pro Micro replacement controller based on the nRF52840, designed to con… | 35 | 1867 | active |
| okalachev/flix Flix is an open-source ESP32-based quadcopter flight controller and firmware built from scratch in Arduino C++, designed for education and … | 82 | 1864 | active |
| 0x23/MicroManipulatorStepper An open-source, low-cost motorized XYZ micro-manipulator motion control platform achieving sub-micrometer precision, built with 3D-printed … | 61 | 1862 | active |
| OpenEPaperLink OpenEPaperLink is an open-source alternative firmware and 802.15.4-based protocol for repurposing commercial electronic shelf labels (e-pap… | 93 | 1857 | active |
| ThorVG ThorVG is a lightweight, production-ready C++ vector graphics engine for rendering SVG, Lottie animations, and vector scenes across embedde… | 97 | 1849 | stable |
| eez-open/studio EEZ Studio is a free, open-source, cross-platform low-code visual tool for designing desktop and embedded GUIs with LVGL support. It includ… | 96 | 1847 | active |
| trezor/trezor-firmware The official open-source firmware monorepo for Trezor hardware wallets, containing firmware for Trezor One and Trezor T/Safe devices, a sta… | 76 | 1837 | active |
| OpenCCU/OpenCCU OpenCCU (formerly RaspberryMatic) is a free, Buildroot-based open-source operating system that turns CCU3/ELV-Charly hardware, Raspberry Pi… | 93 | 1833 | active |
| lds133/weather_landscape A Python application that renders weather forecasts as a stylized landscape image instead of numeric dashboards, encoding time, temperature… | 53 | 1828 | active |
| FortySevenEffects/arduino_midi_library A C++ library that adds MIDI input/output communication to Arduino boards, supporting all MIDI message types including System messages, Sys… | 23 | 1813 | stable |
| Hoverboard FOC Firmware Open-source firmware that replaces the stock software on hoverboard mainboards with Field Oriented Control (FOC) for BLDC motors. It delive… | 69 | 1807 | active |
| Vitis AI AMD Vitis AI is an integrated development environment and stack for accelerating AI inference on AMD/Xilinx adaptable platforms, including … | 65 | 1805 | active |
| GValiente/butano Butano is a modern C++ high-level game engine for the Game Boy Advance, offering one-line APIs for sprites, backgrounds, text, and raster e… | 99 | 1802 | active |
| stack-chan/stack-chan Stack-chan is an open-source, JavaScript/TypeScript-driven desktop robot built on M5Stack (CoreS3) hardware, with firmware, MOD application… | 96 | 1799 | active |
| speeduino/speeduino Speeduino is an open-source engine management system (ECU) firmware built on the Arduino platform, controlling fuel injection and ignition … | 85 | 1797 | stable |
| oreboot/oreboot oreboot is a downstream fork of coreboot rewritten mostly in Rust (with assembly where needed), serving as a firmware/bootloader for variou… | 70 | 1797 | active |
| MiczFlor/RPi-Jukebox-RFID Phoniebox (RPi-Jukebox-RFID) is a contactless jukebox application for Raspberry Pi that plays local music, podcasts, web radio, streams and… | 72 | 1795 | active |
| k2-fsa/sherpa-ncnn A C++ library for real-time offline speech recognition, text-to-speech, and voice activity detection built on the ncnn inference framework … | 52 | 1794 | active |
| fulldecent/system-bus-radio A C program that transmits AM radio signals from computers and phones that lack radio transmitting hardware by generating precisely timed e… | 52 | 6726 | maintenance |
| LovyanGFX A fast display graphics library for ESP32, ESP8266, and ATSAMD51 supporting SPI, I2C, and parallel-connected LCD/OLED/EPD panels. It offers… | 100 | 1793 | active |
| peng-zhihui/HoloCubic HoloCubic is an open-source DIY desktop device that creates a pseudo-holographic transparent display effect using a beam splitter prism, bu… | 32 | 6724 | maintenance |
| buserror/simavr simavr is a lean, hackable Atmel AVR microcontroller simulator written in C, loading ELF/HEX firmware directly and emulating peripherals li… | 75 | 1790 | active |
| immortalwrt-mt798x An ImmortalWrt (OpenWrt fork) variant targeting MediaTek MT798x family routers, providing a full embedded Linux firmware build system with … | 55 | 1788 | active |
| OMOTE OMOTE-Firmware is the ESP32 Arduino firmware for the OMOTE open-source universal remote, providing an LVGL touchscreen UI that controls TVs… | 73 | 1782 | active |
| rmk-rs/rmk RMK is a feature-rich, async Rust keyboard firmware framework built on the Embassy ecosystem. It supports many microcontrollers (STM32, nRF… | 93 | 1780 | active |
| rcore-os/zCore zCore is a reimplementation of Google's Zircon microkernel written in safe Rust, runnable both as a userspace libos program and on bare met… | 83 | 1779 | active |
| mnh-jansson/open-battery-information Open Battery Information is an Arduino firmware plus browser-based tool for reading status, cell voltages, temperatures, charge cycles, and… | 85 | 1775 | active |
| Skythinker616/foc-wheel-legged-robot A complete open-source wheel-legged balancing robot project covering mechanical design (SolidWorks), physics simulation (MATLAB/Simulink/Si… | 29 | 1769 | stable |
| OSS CAD Suite nextpnr is a vendor-neutral, timing-driven, open-source FPGA place and route tool written in C++. It supports multiple FPGA architectures i… | 87 | 1765 | active |
| lwip-tcpip/lwip lwIP is a lightweight, independent implementation of the TCP/IP protocol suite written in C, designed to minimize RAM and ROM usage. It pro… | 74 | 1764 | stable |
| micronucleus/micronucleus Micronucleus is a compact USB bootloader for AVR ATtiny microcontrollers, built on V-USB with all configurations under 2KB. It includes a c… | 49 | 1761 | active |
| sekigon-gonnoc/Pico-PIO-USB A C library that implements USB full-speed/low-speed host and device protocols using the PIO (Programmable I/O) blocks of the Raspberry Pi … | 72 | 1756 | active |
| pikasTech/PikaPython PikaPython is an ultra-lightweight Python interpreter written in C that runs on microcontrollers with as little as 4KB of RAM and 64KB of f… | 81 | 1755 | active |
| trabucayre/openFPGALoader openFPGALoader is a universal open-source command-line utility for programming FPGAs. It supports loading bitstreams into SRAM or writing t… | 82 | 1746 | active |
| Lopaka Lopaka is a browser-based graphics editor for designing pixel-perfect UIs for embedded displays, with code generation for libraries like U8… | 72 | 1746 | active |
| OSS CAD Suite OSS CAD Suite is a multi-platform binary distribution of open-source digital logic design and verification tools, including Yosys, GHDL, AB… | 94 | 1745 | active |
| xioTechnologies/Fusion Fusion is a C library for sensor fusion on Inertial Measurement Units (IMUs), implementing an AHRS algorithm that combines gyroscope, accel… | 75 | 1744 | stable |
| waveshareteam/e-Paper Waveshare's official driver and example code library for their e-Paper (e-ink) display modules, supporting Raspberry Pi, Jetson Nano, Ardui… | 73 | 1743 | active |
| s60sc/ESP32-CAM_MJPEG2SD An ESP32/ESP32-S3 camera application that detects motion and records JPEG frames to SD card as AVI files, optionally with WAV audio from a … | 93 | 1739 | active |
| sector07-dev/RPI_DEV An open-source cyberdeck/cyberstation hardware project built around Raspberry Pi 4/5, providing 3D-printable enclosures, KiCad PCB files, a… | 32 | 1730 | active |
| kitesurfer1404/WS2812FX An Arduino/ESP8266/ESP32 library providing 55+ animation effects for WS2811/WS2812/NeoPixel LED strips, designed as a drop-in replacement f… | 75 | 1727 | stable |
| armink/SFUD SFUD is an open-source universal driver library in C for serial SPI/QSPI flash chips, based on the JEDEC SFDP standard parameter table. It … | 30 | 1726 | stable |
| ghaerr/elks ELKS is an embeddable subset of the Linux operating system targeting 16-bit Intel IA16 processors (8086, 8088, 80186, 80286, NEC V20/V30). … | 92 | 1719 | active |
| fdivitto/FabGL FabGL is a C++ graphics and input library for the ESP32, providing display drivers for VGA, PAL/NTSC composite video, and I2C/SPI LCDs, plu… | 23 | 1719 | active |
| lede-project/source The LEDE Project source tree, a fork that later reunified with OpenWrt, providing a Linux operating system build system for embedded device… | 77 | 1716 | active |
| pulp-platform/axi A collection of synthesizable SystemVerilog IP modules for building AXI4 and AXI4-Lite on-chip communication networks, including crossbars,… | 92 | 1706 | active |
| openpilot Firmware and Python userspace library for the comma.ai panda, a USB CAN and CAN FD interface device built on the STM32H725 microcontroller.… | 77 | 1705 | active |
| airockchip/rknn-llm RKLLM is Rockchip's software stack for converting, quantizing, and running large language models on Rockchip NPU chips such as RK3588 and R… | 83 | 1704 | active |
| nordicsemi/Android-nRF-Connect nRF Connect for Mobile is an Android application for Bluetooth Low Energy developers that scans for BLE devices, inspects GATT services and… | 37 | 1700 | active |
| schreibfaul1/ESP32-audioI2S An Arduino/ESP32 library that plays audio files and streams (MP3, AAC, FLAC, WAV, Opus, Vorbis) through external I2S DACs like the MAX98357… | 95 | 1697 | active |
| AxxAxx/AxxSolder AxxSolder is an STM32-based open-source soldering iron controller for JBC C115, C210, and C245 cartridges, available as station and portabl… | 88 | 1697 | active |
| webhdx/PicoBoot PicoBoot is an open-source IPL replacement modchip for the Nintendo GameCube built on a Raspberry Pi Pico (RP2040) board. It boots homebrew… | 53 | 1694 | active |
| unifreq/openwrt_packit Flippy's OpenWrt packaging scripts that build flashable .img firmware images for ARM64 SoC TV boxes and development boards (Amlogic, Rockch… | 74 | 1691 | active |
| espressif/esp-csi Espressif's official examples and tools for Wi-Fi Channel State Information (CSI) on ESP32-series chips, enabling non-contact wireless sens… | 64 | 1691 | active |
| ferrocene/ferrocene Ferrocene is a safety-critical Rust toolchain, a downstream fork of the official Rust compiler, qualified for use in safety- and mission-cr… | 73 | 1688 | active |
| IoTClient IoTClient is a C# (.NET Standard 2.0) library implementing clients for common industrial IoT communication protocols, including ModBus (TCP… | 56 | 1685 | active |