Open-source embedded software
741 open-source libraries, tools and applications tagged embedded, ranked by how closely embedded 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.
741 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| contiki-ng/contiki-ng Contiki-NG is an open-source, cross-platform operating system for next-generation IoT devices, forked from the original Contiki OS. It focu… | 84 | 1532 | active |
| hybridgroup/go-haystack A Go/TinyGo library and toolset for tracking personal Bluetooth devices through Apple's Find My network, using OpenHaystack and Macless-Hay… | 66 | 1529 | active |
| Wren6991/PicoDVI PicoDVI is a library that bitbangs DVI/HDMI video output directly from RP2040 and RP2350 microcontrollers using PIO, DMA, and overclocked C… | 71 | 1508 | active |
| Core Flight System (cFS) NASA's Core Flight System (cFS) is a generic flight software architecture framework written in C, used on spacecraft ranging from flagship … | 86 | 1507 | stable |
| dRoninFlight/dRonin dRonin is open-source autopilot/flight controller firmware for OpenPilot/Tau Labs family boards, supporting multirotors, planes, and helico… | 44 | 1506 | active |
| ToanTech/Deng-s-foc-controller An open-source dual-channel brushless motor FOC (field-oriented control) driver board based on ESP32, with full hardware design files (BOM,… | 32 | 1505 | active |
| usbarmory/usbarmory USB armory is an open source hardware design for a compact secure computer built into a USB stick form factor, based on ARM SoCs. This repo… | 74 | 1499 | active |
| OLIMEX/OLINUXINO OLinuXino is a family of fully open-source, open-hardware (OSHW certified) industrial-grade ARM single board computers from Olimex, with pu… | 66 | 1493 | active |
| fhdm-dev/scoppy Scoppy turns a Raspberry Pi Pico and an Android phone or tablet into a low-cost oscilloscope and logic analyzer. The Pico firmware samples … | 39 | 1492 | active |
| dekuNukem/bob_cassette_rewinder An open-source hardware/firmware project that defeats the DRM on Bob dishwasher detergent cassettes, allowing users to reset and refill the… | 29 | 1492 | active |
| markondej/fm_transmitter A C++ command-line tool that turns a Raspberry Pi (up to Pi 4) into an FM radio transmitter by modulating the GPIO clock output. It broadca… | 58 | 1491 | active |
| GxEPD2 Arduino Display Library An Arduino library for driving SPI e-paper (e-ink) displays from Good Display and Waveshare, built on Adafruit_GFX for graphics and text. I… | 72 | 1490 | active |
| Time-Appliances-Project/Time-Card Time Card is an open-source PCIe card design (with schematics, BOM, Gerbers, firmware, and Linux driver code) that serves as a precision ti… | 76 | 1485 | active |
| espressif/vscode-esp-idf-extension An official Visual Studio Code extension from Espressif for developing, building, flashing, monitoring, and debugging firmware for Espressi… | 94 | 1471 | active |
| devbis/z03mmc Open-source Zigbee 3.0 firmware for the Xiaomi LYWSD03MMC Bluetooth temperature and humidity sensor, written in C for Telink hardware. It c… | 47 | 1471 | active |
| ShlkOfTheRa/scarab-osd MWOSD (scarab-osd) is an open-source multipurpose on-screen display (OSD) firmware for UAVs and FPV drones, written in C for Arduino-compat… | 55 | 1469 | active |
| tinygs/tinyGS TinyGS is an open-source firmware for ESP32-based LoRa ground stations that form a distributed network to receive transmissions from LoRa s… | 76 | 1463 | active |
| fossasia/magic-epaper-firmware Magic ePaper Firmware is open-source C firmware for controlling FOSSASIA's e-ink (e-paper) displays on microcontrollers. It acts as a bridg… | 42 | 1462 | active |
| coredevices/PebbleOS PebbleOS is the open-source operating system firmware for Pebble smartwatches, maintained by Core Devices in C. It provides the watch platf… | 82 | 1460 | active |
| dRehmFlight dRehmFlight is an Arduino-compatible flight controller and stabilization codebase for small-scale VTOL aircraft, built on the Teensy 4.0 mi… | 32 | 1456 | active |
| showmewebcam/showmewebcam A firmware image that turns a Raspberry Pi Zero (or Pi 4) with a Raspberry Pi camera module into a high-quality USB webcam using UVC gadget… | 23 | 1450 | active |
| rockchip-linux/kernel A fork of the Linux kernel source maintained by Rockchip as the Board Support Package (BSP) kernel for their SoCs. It provides Rockchip-spe… | 64 | 1444 | active |
| aolofsson/oh OH! is an open-source library of silicon-proven Verilog hardware building blocks for ASIC and FPGA design, containing over 150 modules such… | 10 | 1442 | active |
| BigTreeTech TFT TouchScreen Firmware Open-source firmware for BigTreeTech TFT touchscreen 3D printer controllers, written in C. It provides a touch interface and Marlin mode fo… | 34 | 1435 | active |
| system76/launch The System76 Launch Configurable Keyboard repository contains open source mechanical (FreeCAD) and electrical (KiCad) designs, firmware, an… | 32 | 1435 | active |
| nRF Connect SDK Nordic Semiconductor's nRF Connect SDK, the main repository containing subsystems, libraries, samples, and applications for developing firm… | 93 | 1431 | active |
| ZhaJiHu/Cubli_Mini An open-source hardware and firmware project that recreates ETH Zurich's Cubli as a low-cost, 10x10x10 cm self-balancing cube that balances… | 32 | 1426 | active |
| Vial Vial is an open-source cross-platform GUI application (with a web version) and a QMK firmware fork for configuring mechanical keyboards in … | 68 | 1423 | active |
| schoolpost/CinePI CinePI V2 is an open-source cinema camera design built around a Raspberry Pi 4B and the Sony IMX477 High Quality Camera module, with CAD fi… | 10 | 1422 | active |
| solosky/pixl.js Pixl.js is an open-source hardware emulator for Nintendo Amiibo figures, based on a replica of the Espruino Pixl.js board. It emulates NTAG… | 77 | 1415 | active |
| htx-studio/One-Handed-Keyboard An open-source one-handed mechanical keyboard project with an integrated trackball, released under MIT license. It provides PCB designs (LC… | 25 | 1413 | active |
| analogdevicesinc/no-OS Analog Devices' bare-metal C software framework providing device drivers for ADI components on systems without an operating system. It incl… | 89 | 1410 | active |
| eclipse-mraa/mraa Eclipse MRAA is a C/C++ library with bindings for Python, Node.js, and Java for controlling low-speed I/O (GPIO, I2C, SPI, UART) on GNU/Lin… | 72 | 1409 | active |
| pftf/RPi4 Installable UEFI firmware images for the Raspberry Pi 4, built from the official EDK2 (edk2-platforms) Raspberry Pi 4 firmware. It enables … | 87 | 1408 | active |
| Smoothie Smoothieware is a modular, open-source G-code interpreter and CNC controller firmware written in object-oriented C++ for 32-bit controller … | 72 | 1408 | active |
| ashinn/chibi-scheme Chibi-Scheme is a minimal Scheme implementation designed to be embedded as an extension and scripting language in C programs. It supports R… | 76 | 1405 | stable |
| skuep/AIOC AIOC is open-source firmware and hardware design for a Ham Radio All-in-one-Cable, a USB-C adapter based on STM32F302 that enumerates as a … | 45 | 1405 | active |
| TWiLight Menu++ nds-bootstrap is an open-source homebrew application that loads Nintendo DS/DSi ROMs and homebrew natively from an SD card on DSi/3DS conso… | 99 | 1404 | active |
| SkeletonMan03/FZEasyMarauderFlash A Python CLI script that simplifies flashing the Marauder (and Evil Portal) firmware onto a Flipper Zero WiFi Devboard or various ESP32 boa… | 66 | 1404 | active |
| nofeletru/UsbAsp-flash AsProgrammer is a desktop application for programming flash and EEPROM memory chips over SPI, I2C, and MicroWire protocols. It supports a r… | 71 | 1386 | active |
| google/pebble The open-sourced PebbleOS firmware source code that runs on Pebble smartwatches, released by Google after Pebble Technology. Proprietary co… | 21 | 4960 | maintenance |
| QuantumLeaps/qpc QP/C is a lightweight real-time event framework (RTEF) for C that implements the event-driven Active Object (Actor) model combined with hie… | 92 | 1384 | stable |
| UV-K5 Custom Firmware A feature-rich custom open-source firmware for the Quansheng UV-K5/K6 handheld ham radio, built in C/C++ by merging multiple open-source fi… | 93 | 1382 | active |
| ducalex/retro-go Retro-Go is a firmware for ESP32-based handheld devices (ODROID-GO, MRBC-G32, and others) that provides a launcher and heavily optimized em… | 53 | 1378 | active |
| bladeRF bladeRF is the complete source code for the Nuand bladeRF USB 3.0 Software Defined Radio, including FX3 USB controller firmware, Cyclone IV… | 66 | 1374 | active |
| ObKo/stm32-cmake A set of CMake toolchain files and modules for developing STM32 (ARM Cortex-M) firmware with GCC, newlib, and STM32Cube. It provides device… | 62 | 1374 | active |
| skot/bitaxe Bitaxe is a fully open source hardware Bitcoin ASIC miner design (KiCad files, BOM, gerbers) built around Bitmain's BM1366 SHA256 ASIC and … | 37 | 1372 | active |
| GUIslice GUIslice is a lightweight C GUI framework for embedded touchscreen TFT displays, supporting a drag & drop builder to generate layouts. It r… | 61 | 1370 | active |
| LiteOS/LiteOS Huawei LiteOS is a lightweight real-time operating system kernel for IoT devices, written in C for ARM Cortex-M/A architectures. It provide… | 23 | 4900 | maintenance |
| FIRST Tech Challenge SDK The official FIRST Tech Challenge (FTC) SDK for building the Android app that controls a competition robot. It provides the robot controlle… | 91 | 1365 | active |
| Flutter for Embedded Linux A non-official Flutter embedder for embedded Linux systems, implemented in C++ without X11 or GTK dependencies. It supports Wayland and DRM… | 45 | 1353 | active |
| raspberrypi/usbboot rpiboot is the official Raspberry Pi USB device boot tool that loads firmware onto a Raspberry Pi over USB to expose its storage as a mass-… | 80 | 1350 | active |
| cecio/USBvalve USBvalve is a firmware application for cheap RP2040-based hardware (Raspberry Pi Pico) that emulates a fake USB mass-storage filesystem and… | 83 | 1347 | active |
| STMicroelectronics/STM32CubeF4 STMicroelectronics' official STM32Cube firmware package for the STM32F4 series of microcontrollers. It bundles HAL and LL drivers, CMSIS co… | 75 | 1342 | stable |
| Nicholas3388/LuaNode LuaNode is a Lua SDK/firmware for ESP32, ESP32-C2/C3/C6, ESP8266, and STM32L4 microcontrollers, built on ESP-IDF and ESP8266_RTOS_SDK. It l… | 32 | 1334 | active |
| ratatui/mousefood Mousefood is a no-std embedded-graphics backend for Ratatui, the Rust terminal UI library. It lets Ratatui widgets render onto embedded dis… | 80 | 1332 | active |
| RustSBI RustSBI is a RISC-V Supervisor Binary Interface (SBI) implementation library written in Rust, running in M-mode or HS-mode on bare-metal RI… | 80 | 1330 | active |
| dekuNukem/duckyPad duckyPad is an open-source 15-key mechanical macropad with per-key RGB, an OLED screen, and a custom turing-complete duckyScript engine for… | 56 | 1328 | active |
| EEVengers/ThunderScope ThunderScope is an open-source, low-cost four-channel 1GSPS oscilloscope that streams data over Thunderbolt/USB4 to a PC for processing and… | 77 | 1321 | active |
| espressif/esp-box ESP-BOX is Espressif's AIoT development framework for the ESP32-S3-BOX series of development boards, built on the ESP32-S3 Wi-Fi + Bluetoot… | 57 | 1321 | active |
| wuxx/nanoDAP nanoDAP is an open-source hardware and firmware project for a small CMSIS-DAP compatible debug probe used to program and debug ARM microcon… | 32 | 1320 | active |
| wiredopposite/OGX-Mini OGX-Mini is C++ firmware for RP2040/RP2350 microcontrollers that emulates USB gamepads for multiple consoles, including the original Xbox, … | 47 | 1315 | active |
| LVGL ESP32 integration A reference project demonstrating LVGL (Light and Versatile Graphics Library) ported to ESP32 microcontrollers using the ESP-IDF framework.… | 66 | 1314 | active |
| ionutdecebal/rsvpnano RSVP Nano is an open-source pocket-sized speed-reading device built on ESP32 that presents text one word at a time using Rapid Serial Visua… | 78 | 1312 | active |
| openhwgroup/cv32e40p CV32E40P is an open-source 32-bit RISC-V processor core (RV32IMFC with PULP extensions) implemented in SystemVerilog, maintained by the Ope… | 67 | 1312 | active |
| BlueOS Kernel BlueOS kernel is an operating system kernel written in Rust by Vivo, emphasizing security, lightweight design, and generality. It is POSIX-… | 63 | 1310 | active |
| n0xa/m5stick-nemo NEMO is a firmware for M5Stack ESP32 devices (M5StickC, Cardputer) that implements high-tech pranks and digital self-defense tools such as … | 84 | 1306 | active |
| alibaba/AliOS-Things AliOS Things is Alibaba's open-source, highly scalable IoT operating system built around the Rhino RTOS kernel, supporting ARM, C-Sky, MIPS… | 23 | 4629 | maintenance |
| mjbots/moteus moteus is an open-source brushless DC servo motor controller project containing firmware, PCB hardware designs, and client-side libraries f… | 95 | 1299 | active |
| espressif/esp-at ESP-AT is Espressif's official AT command firmware and framework that turns ESP32-series and ESP8266 SoCs into wireless connectivity add-on… | 88 | 1290 | active |
| floooh/chips A toolbox of 8-bit chip and complete system emulators written as dependency-free C99 header files. Chip emulators communicate via a pin bit… | 75 | 1289 | active |
| EttusResearch/uhd UHD is the official open-source driver and API for Ettus Research USRP software-defined radio hardware. It includes user-space driver code,… | 86 | 1288 | stable |
| pierrechevalier83/ferris Ferris is an open-source, 34-key low-profile split keyboard design with KiCad PCB files, firmware contributed to QMK, and build scripts. It… | 23 | 1271 | active |
| makermoekoe/Picoclick-C3 Picoclick-C3 is an open-source tiny WiFi and BLE IoT button based on the ESP32-C3 RISC-V processor, available in standard and ultra-small (… | 32 | 1260 | active |
| raspberrypi/debugprobe Firmware source and binaries for the Raspberry Pi Debug Probe, an RP2040-based USB-to-SWD/UART debugging accessory. It can also run on a Ra… | 81 | 1253 | active |
| menloresearch/asimov-1 Asimov 1 is an open-source 1.2 m, 35 kg humanoid robot with 25 actuated degrees of freedom, released under CERN-OHL-S for hardware and GPL-… | 59 | 1252 | active |
| genodelabs/genode Genode is an open-source C++ framework for building highly secure, component-based operating systems using capability-based security and a … | 10 | 1249 | active |
| Marus/cortex-debug A Visual Studio Code extension that enhances debugging for ARM Cortex-M microcontrollers and other embedded targets via GDB servers like J-… | 83 | 1248 | active |
| DIGImend/digimend-kernel-drivers A collection of out-of-tree Linux kernel drivers for graphics tablets, maintained by the DIGImend project. It provides newer drivers for ol… | 23 | 1242 | active |
| Xilinx/embeddedsw Xilinx's official embedded software repository providing bare-metal drivers, board support packages, and first-stage bootloader firmware fo… | 75 | 1240 | active |
| sedmenti/Orbion_3D_Space_Mouse Orbion is an open-source DIY 3D Space Mouse (6-DOF input device) that users build at home with 3D-printed parts, a joystick, encoder, and A… | 23 | 1237 | active |
| peng-zhihui/ESP32-PicoDK An open-source miniature development board based on the ESP32-PicoD4 SiP module, including PCB design files, schematics, and documentation.… | 32 | 1236 | stable |
| EliasKotlyar/Xiaomi-Dafang-Hacks Custom firmware (CFW) for the Xiaomi Dafang, Xiaofang 1S, Wyzecam V2/Pan, and other Ingenic T10/T20-based IP cameras. It replaces the stock… | 32 | 4325 | maintenance |
| DSPi DSPi is a fully featured audio DSP firmware that turns a Raspberry Pi Pico (RP2040) or Pico 2 (RP2350) into an inexpensive USB sound card w… | 82 | 1230 | active |
| TriForceX/MiyooCFW MiyooCFW is a GPL-2.0 custom firmware for BittBoy, PocketGo, PowKiddy V90/Q90/Q20 and other Miyoo-based retro handheld consoles. It unlocks… | 66 | 1228 | active |
| RQNG/WouoUI WouoUI is a C library implementing a silky-smooth menu UI for small OLED displays (128x128, 128x64, 128x32), inspired by Zhihui Jun's MonoU… | 31 | 1228 | stable |
| mz-automation/libiec61850 libiec61850 is an open-source (GPLv3) C library implementing the IEC 61850 client and server protocols MMS, GOOSE, Sampled Values, and R-Se… | 82 | 1226 | stable |
| PSLab Mini Firmware for the PSLab Mini, an open-source pocket science lab instrument built on the Raspberry Pi Pico (RP2350). It exposes SCPI commands… | 73 | 1225 | active |
| maxritter/diy-thermocam DIY-Thermocam is an open-source, self-assembly thermal imaging camera based on the FLIR Lepton sensor and a Teensy 4.1 microcontroller, wit… | 45 | 1223 | active |
| RamboRogers/rfhunter RFHunter is a DIY hardware device built on an ESP32 and AD8317 RF power detector that scans for RF signals to help locate hidden cameras, w… | 23 | 1221 | active |
| SciresM/boot9strap Boot9strap is a custom firmware bootloader for the Nintendo 3DS that achieves Boot9/Boot11 code execution via a bootrom exploit. It loads a… | 44 | 1220 | stable |
| NawfalMotii79/PLFM_RADAR AERIS-10 is an open-source, low-cost 10.5 GHz pulse linear frequency modulated (PLFM) phased array radar system with full schematics, PCB l… | 64 | 25349 | experimental |
| blinker-iot/blinker-nRF52 A Blinker support library for Nordic nRF52xx series chips, built on the nRF5 SDK v16.0.0 and nRF5 SDK for Mesh v4.0.0. It enables BLE 5.0 a… | 32 | 4234 | maintenance |
| cmsis-svd/cmsis-svd A Python library that parses ARM CMSIS-SVD (System View Description) files into easy-to-use data structures. It enables building code gener… | 57 | 1209 | active |
| rsd-devel/rsd RSD is a 32-bit RISC-V out-of-order superscalar processor core written in SystemVerilog. It is designed for high performance with aggressiv… | 66 | 1204 | active |
| Cylon.js Cylon.js is a JavaScript/Node.js framework for robotics, physical computing, drones, and IoT. It offers a unified robot definition API with… | 32 | 4209 | maintenance |
| GEIGEIGEIST/KLOR KLOR is an open-source 36-42 key column-staggered split keyboard design, including KiCad PCB files, Gerbers, case files, switchplates, and … | 32 | 1199 | stable |
| brandonlw/Psychson A toolkit for creating custom firmware and firmware patches for Phison 2251-03 (2303) USB controller chips, enabling BadUSB attacks via HID… | 23 | 4186 | maintenance |
| orangepi-xunlong/orangepi-build Official Orange Pi build framework (based on Armbian build) for creating custom Linux OS images for Orange Pi single-board computers. It su… | 75 | 1196 | active |
| rusEFI rusEFI is a GPL open-source internal combustion engine control unit (ECU) project, including STM32 firmware, KiCAD hardware designs, a Java… | 88 | 1194 | active |