Open-source hardware software
1351 open-source libraries, tools and applications tagged hardware, ranked by how closely hardware 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.
1351 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| simh/simh SIMH is a collection of highly portable simulators for historically significant computer systems such as the DEC PDP series, VAX, IBM mainf… | 66 | 1882 | active |
| jaypipes/ghw ghw is a Go library for discovering and inspecting host hardware, covering CPU, memory, block storage, network, PCI, GPU, topology, BIOS, a… | 97 | 1880 | active |
| DDT4All DDT4ALL is a cross-platform Python diagnostic application for vehicle CAN bus networks that communicates with ECUs over OBD-II interfaces s… | 96 | 1879 | active |
| emsec/ChameleonMini ChameleonMini is a freely programmable, portable NFC device that can emulate and clone contactless smartcards, read RFID tags, and sniff/lo… | 23 | 1877 | active |
| 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 |
| HawaiiBeach/TinyNvidiaUpdateChecker A lightweight, open-source Windows utility that checks for NVIDIA GPU driver updates and lets users download and install them. It also supp… | 98 | 1863 | 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 |
| Bastardkb/Charybdis Charybdis is an open-source ergonomic split keyboard design with an integrated trackball, intended as a full mouse replacement. The reposit… | 74 | 1861 | 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 |
| Fluidd Fluidd is a free, open-source web interface (built with Vue) for managing 3D printers running the Klipper firmware via the Moonraker API se… | 98 | 1839 | 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 |
| OpenBoardView/OpenBoardView OpenBoardView is a Linux/macOS SDL/ImGui application for viewing .brd board files, intended as a drop-in replacement for Test_Link/Landrex … | 78 | 1830 | active |
| JesseCHale/HaleHound-CYD HaleHound-CYD is a multi-protocol offensive security toolkit firmware for the ESP32 Cheap Yellow Display, offering 40+ attack modules acros… | 83 | 1819 | active |
| MakeYourPet/hexapod An open-source project providing 3D-printable STL files, wiring diagrams, and build instructions for constructing a hexapod (six-legged) ro… | 32 | 1817 | 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 |
| Part-DB Part-DB is an open-source, self-hosted web application for managing inventories of electronic components, tracking parts with categories, f… | 100 | 1801 | active |
| acidanthera/VirtualSMC VirtualSMC is an advanced Apple SMC (System Management Controller) emulator implemented as a macOS kernel extension, requiring the Lilu kex… | 93 | 1800 | active |
| libxzr/KonaBess KonaBess is an Android application that lets users customize GPU frequency and voltage tables on various Snapdragon chips without recompili… | 40 | 1800 | 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 |
| ultraembedded/riscv A 32-bit RISC-V CPU core (RV32IMZicsr) written in synthesizable Verilog 2001, accompanied by an instruction set simulator. It supports user… | 32 | 1798 | stable |
| 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 |
| feelfreelinux/octo4a An Android app that installs and runs OctoPrint on an old Android phone, turning it into a 3D printer control server without needing a Rasp… | 37 | 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 |
| rsheldiii/KeyV2 A parametric keycap and keyset construction library for mechanical keyboards, written in OpenSCAD. It lets users programmatically generate … | 32 | 1792 | active |
| memtest86plus/memtest86plus Memtest86+ is a free, open-source, stand-alone memory tester for x86, x86-64, ARM AArch64, and LoongArch64 computers. It boots directly fro… | 78 | 1788 | active |
| libimobiledevice/usbmuxd usbmuxd is an open-source socket daemon that multiplexes TCP connections over USB between a host computer and iOS devices. It exposes a soc… | 44 | 1787 | 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 |
| 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 |
| Fr4nkFletcher/ESP32-Marauder-Cheap-Yellow-Display A port of the ESP32-Marauder WiFi/Bluetooth testing firmware to the Cheap Yellow Display (CYD) family of ESP32 boards with ILI9341/ST7789/S… | 44 | 1773 | 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 |
| itaybre/CameraController A macOS application for controlling USB (UVC) camera settings like exposure, zoom, and focus without vendor software. Built in Swift with S… | 26 | 1763 | active |
| 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 |
| Maassoft/ColorControl A Windows desktop application for changing NVIDIA and AMD display settings (color depth, format, refresh rate, dithering, HDR) via configur… | 70 | 1756 | active |
| OpenPrinting/cups OpenPrinting CUPS is the standards-based, open source printing system for Linux and other Unix-like operating systems, supporting AirPrint,… | 89 | 1753 | active |
| cowtoolz/webcamize Webcamize is a command-line tool that turns almost any modern camera—DSLRs, mirrorless cameras, camcorders, point-and-shoots, and some smar… | 65 | 1752 | active |
| PocketLCD PocketLCD is an open-source hardware project for a DIY 5.5-inch 1080p portable monitor that doubles as a power bank. It includes PCB design… | 32 | 6534 | maintenance |
| 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 |
| vlachoudis/bCNC bCNC is a cross-platform Python desktop application for sending G-code commands to GRBL/GrblHAL CNC controllers. It combines a G-code edito… | 54 | 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 |
| charlie0129/batt batt is a Go-based tool that controls and limits battery charging on Apple Silicon MacBooks by setting maximum charge levels via SMC keys. … | 92 | 1741 | active |
| samyk/poisontap PoisonTap is a USB-based attack tool built on a Raspberry Pi Zero and Node.js that exploits locked, password-protected computers by emulati… | 32 | 6476 | maintenance |
| oerg866/win98-quickinstall A framework and automated installer that rapidly installs Windows 98/ME on hardware ranging from 486-era PCs to modern systems. It provides… | 87 | 1736 | active |
| Pupil Pupil is an open source eye tracking platform consisting of applications (Pupil Capture, Player, Service) that work with Pupil Labs wearabl… | 64 | 1735 | active |
| elder-plinius/V3SP3R V3SP3R (Vesper) is an Android application that turns a Flipper Zero into an AI-controlled hardware hacking tool, driven by natural language… | 45 | 1735 | active |
| Valkirie/HandheldCompanion A touch-optimized Windows GUI application that enhances handheld gaming PCs with motion (gyro) controls, virtual controller emulation, and … | 97 | 1734 | active |
| google-research/circuit_training AlphaChip (circuit_training) is Google's open-source framework for generating chip floorplans using distributed deep reinforcement learning… | 59 | 1730 | 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 |
| Umio-Yasuno/amdgpu_top amdgpu_top is a Rust-based tool that displays AMD GPU utilization and statistics, similar to radeontop or intel_gpu_top. It gathers data fr… | 85 | 1721 | active |
| Original Prusa i3 Open-source firmware for the Original Prusa i3 MK3S/MK3/MK2.5S/MK2.5 line of 3D printers, based on Marlin 1.0.x and written in C++ for AVR … | 23 | 1720 | active |
| 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 |
| jfedor2/hid-remapper HID Remapper is an open-source programmable USB dongle, built on RP2040-based boards like the Raspberry Pi Pico, that remaps inputs from mi… | 89 | 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 |
| Paparazzi UAV Paparazzi is a free and open-source hardware and software suite for unmanned air vehicles, providing autopilot firmware, ground control sta… | 82 | 1714 | 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 |
| KtzeAbyss/Easy-Virtual-Display A Windows desktop application for creating and managing virtual display drivers through a friendly GUI, supporting up to 8 virtual monitors… | 87 | 1704 | active |
| Denvi/Candle Candle is a GRBL controller application with a G-Code visualizer written in Qt/C++. It lets users control GRBL-based CNC machines via conso… | 79 | 1699 | 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 |
| Brandawg93/PeaNUT PeaNUT is a self-hosted web dashboard for monitoring UPS devices via Network UPS Tools (NUT). It provides real-time statistics, charts, dev… | 82 | 1694 | active |
| crystalidea/macs-fan-control Macs Fan Control is a desktop application for monitoring and controlling fan speeds on Apple computers, including Macs running Windows via … | 78 | 1694 | 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 |
| 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 |
| devbisme/skidl SKiDL is a Python library for describing electronic circuits in code instead of a schematic editor. It performs electrical rules checking a… | 94 | 1690 | active |
| aws/aws-fpga The official AWS EC2 FPGA Hardware and Software Development Kit for building hardware accelerators on EC2 F2 instances. It provides tools, … | 95 | 1689 | active |
| probonopd/MiniDexed MiniDexed is a frequency-modulation (FM) synthesizer emulating the Yamaha DX7, running up to eight tone generators like a TX816/TX802, on a… | 57 | 1684 | active |
| uPesy/easyeda2kicad.py A Python CLI tool that converts electronic components from EasyEDA or LCSC into KiCad libraries, including symbols, footprints, and colored… | 64 | 1683 | active |
| lwfinger/rtw88 A downstream backport of the Realtek rtw88 series WiFi 5 drivers from the Linux wireless-next repository, supporting PCIe, SDIO, and USB ch… | 66 | 1672 | active |
| flipperdevices/qFlipper qFlipper is an open-source Qt-based desktop application for managing the Flipper Zero multi-tool device from a PC. It handles firmware upda… | 23 | 1671 | active |
| libfive/libfive libfive is a C++ framework and geometry kernel for solid modeling using functional representations (f-reps), with a C API, Scheme and Pytho… | 77 | 1668 | active |
| stm32-rs/stm32-rs A collection of Rust peripheral access crates (PACs) for all STM32 microcontroller families, generated from SVD files via svd2rust with com… | 66 | 1666 | active |
| alexforencich/verilog-pcie A collection of Verilog PCI Express components including PCIe-to-AXI/AXI-Lite bridges and a high-performance DMA subsystem for FPGA designs… | 32 | 1666 | active |
| tttapa/Control-Surface An Arduino C++ library for building MIDI controllers and control surfaces, with a flexible MIDI abstraction layer supporting 5-pin DIN, USB… | 89 | 1665 | active |
| emukidid/swiss-gc Swiss is an all-in-one homebrew utility for the Nintendo GameCube that acts as a file browser and loader for games and applications across … | 94 | 1663 | active |
| wh201906/SerialTest A cross-platform GUI tool for debugging and testing serial port, Bluetooth SPP/LE, TCP, and UDP connections. It provides data transceiving,… | 23 | 1662 | active |
| arkypita/LaserGRBL LaserGRBL is a free, open-source Windows GUI for controlling GRBL-based laser cutters and engravers. It converts images (raster, vector, SV… | 37 | 1660 | active |
| Pocket Science Lab (PSLab) Pocket Science Lab (PSLab) is an open-source hardware and software ecosystem that turns a phone or desktop into a portable science lab with… | 70 | 1656 | active |
| jankae/LibreVNA LibreVNA is an open-source 100kHz to 6GHz two-port USB vector network analyzer, including device firmware and a Qt-based cross-platform con… | 83 | 1655 | active |
| sb-ocr/diy-spacemouse A DIY hardware project for building a low-cost 3D navigation device (spacemouse) using magnets, primarily designed for Autodesk Fusion 360.… | 29 | 1652 | active |
| avr-hal A Rust Hardware Abstraction Layer (HAL) implementing embedded-hal traits for AVR microcontrollers and common boards like Arduino. It provid… | 74 | 1640 | active |
| revtel/react-native-nfc-manager A React Native library that exposes NFC functionality on Android and iOS to JavaScript apps. It supports reading and writing NFC tags acros… | 94 | 1638 | active |
| nophead/NopSCADlib NopSCADlib is an OpenSCAD library of parametric part models ('vitamins') for 3D printers and electronics enclosures, plus a project framewo… | 49 | 1636 | active |
| sn4k3/UVtools UVtools is a cross-platform desktop application for analyzing, repairing, calibrating, and converting MSLA/DLP resin 3D printer files. It p… | 99 | 1635 | active |
| AllskyTeam/allsky Allsky is an open-source application that turns a Raspberry Pi and a compatible camera (ZWO or Pi/Arducam sensors) into an all-sky camera f… | 94 | 1635 | active |
| psalias2006/gpu-hot GPU Hot is a lightweight, self-hosted web dashboard for real-time NVIDIA GPU monitoring, deployed via a single Docker command. It polls NVM… | 76 | 1633 | active |
| VIA VIA is an open-source web application for configuring QMK-powered mechanical keyboards directly from the browser. It lets users remap keys,… | 75 | 1628 | active |
| FlashFloppy FlashFloppy is open-source firmware that turns Gotek hardware into a floppy drive emulator for retro computers, synths, and industrial mach… | 75 | 1626 | stable |
| cnlohr/ch32fun A minimal open-source development environment (headers, examples, and tooling) for WCH RISC-V microcontrollers like the CH32V003, built aro… | 66 | 1622 | active |