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 |
|---|---|---|---|
| gusmanb/logicanalyzer An open-source 24-channel, 100Msps logic analyzer combining custom hardware (based on Raspberry Pi Pico) with Python-based capture and anal… | 75 | 5018 | active |
| taigrr/spank A novelty macOS CLI tool that detects physical slaps on a MacBook using the Apple Silicon accelerometer (Bosch BMI286 IMU via IOKit HID) an… | 74 | 5002 | active |
| Raspberry Pi Pico SDK The official C/C++ SDK for Raspberry Pi Pico and other RP-series microcontrollers, providing headers, libraries, and a CMake-based build sy… | 87 | 4972 | stable |
| TFT_eSPI An Arduino and PlatformIO compatible TFT display library optimized for ESP8266, ESP32, RP2040 (Raspberry Pi Pico), and STM32 microcontrolle… | 53 | 4933 | active |
| Fritzing Fritzing is an open-source Electronic Design Automation desktop application for makers and hobbyists, offering a breadboard view, schematic… | 63 | 4823 | active |
| Chisel Chisel is an open-source hardware description language (HDL) embedded in Scala for describing digital electronics at the register-transfer … | 98 | 4807 | stable |
| keylase/nvidia-patch A set of Python/shell patch scripts that remove Nvidia's artificial restriction on the number of simultaneous NVENC encoding sessions on co… | 77 | 4804 | active |
| OSS CAD Suite Yosys is an open-source framework for Verilog/SystemVerilog RTL synthesis, converting hardware description code into gate-level netlists fo… | 97 | 4788 | stable |
| InkboxSoftware/excelCPU A 16-bit CPU implemented entirely within an Excel spreadsheet, featuring 16 registers, 128KB of RAM, and a 128x128 display, driven by Excel… | 26 | 4763 | active |
| SebLague/Digital-Logic-Sim A minimalistic digital logic simulator where users start with a single NAND gate and build increasingly complex custom chips, up to full CP… | 39 | 4725 | active |
| Sesame Robot Sesame is an open-source, 3D-printable mini quadruped robot powered by an ESP32 microcontroller and eight servo motors, featuring an expres… | 59 | 4627 | active |
| openscopeproject/InteractiveHtmlBom A plugin that generates interactive, self-contained HTML Bill of Materials pages for PCB designs from KiCad, EasyEDA, Eagle, Fusion360, and… | 93 | 4590 | stable |
| CalcProgrammer1/OpenRGB OpenRGB is an open-source application that controls RGB lighting across devices from many manufacturers from a single app, without requirin… | 98 | 4578 | active |
| dw-0/kiauh KIAUH is a Python-based interactive installation and update helper script for the Klipper 3D printer firmware ecosystem. It automates insta… | 71 | 4556 | active |
| F5OEO/rpitx rpitx is a general RF transmitter for Raspberry Pi that generates radio signals from 5 KHz to 1500 MHz using only a GPIO-connected wire ant… | 23 | 4553 | active |
| openrazer/openrazer OpenRazer is a collection of open-source Linux kernel drivers plus a user-space DBus daemon and Python bindings for controlling Razer perip… | 87 | 4509 | active |
| blinker-iot/blinker-py Blinker is a Python library for connecting hardware devices like Raspberry Pi and Banana Pi to the Blinker IoT platform. It supports commun… | 34 | 4440 | active |
| YosysHQ/picorv32 PicoRV32 is a size-optimized RISC-V RV32IMC CPU core written in Verilog, configurable as RV32E/I/IC/IM/IMC with optional interrupt controll… | 10 | 4389 | stable |
| hzeller/rpi-rgb-led-matrix A C++ library (with Python bindings) for driving HUB75-style RGB LED matrix panels directly from Raspberry Pi GPIO pins, supporting multipl… | 77 | 4388 | stable |
| blinker Blinker is a JavaScript/TypeScript SDK for connecting hardware devices (like Raspberry Pi) to the Blinker IoT platform via MQTT or local ne… | 34 | 4380 | active |
| PixlOne/logiops LogiOps is an unofficial userspace driver and daemon (logid) for Logitech devices using the HID++ 2.0+ protocol, such as MX Master mice and… | 46 | 4371 | active |
| networkupstools/nut Network UPS Tools (NUT) is an open-source toolkit for monitoring and managing power devices such as UPS units, PDUs, ATS switches, PSUs, an… | 79 | 4366 | active |
| reBot Arm An open-source robotic arm project (hardware and software) from Seeed, with CERN-OHL-W-2.0 licensed hardware designs and Apache-2.0 softwar… | 61 | 4346 | active |
| zmkfirmware/zmk ZMK Firmware is an open source (MIT) keyboard firmware built on the Zephyr RTOS, designed for modern wireless (BLE) and wired mechanical ke… | 74 | 4286 | active |
| jrowberg/i2cdevlib A collection of uniform, Doxygen-documented C++ classes providing interfaces to a wide range of I2C peripheral devices such as acceleromete… | 44 | 4272 | stable |
| INAV INAV is open-source navigation-enabled flight controller firmware for drones, planes, and other RC aircraft. It provides autopilot features… | 86 | 4268 | active |
| byrantech/laptop anyon_e is a fully open-source, high-end laptop design built around the Rockchip RK3588 SoC, including KiCad schematics and layouts for the… | 54 | 4261 | active |
| AsahiLinux/m1n1 m1n1 is a bootloader and experimentation playground for Apple Silicon Macs, part of the Asahi Linux project. It loads Linux kernels, device… | 94 | 4256 | active |
| fatihak/InkyPi InkyPi is an open-source E-Ink display application that runs on a Raspberry Pi and is controlled through a web interface. It supports plugi… | 67 | 4254 | active |
| samhenrigold/LidAngleSensor A small macOS utility that reads the hidden lid angle sensor in modern MacBooks and displays the angle in real time, optionally playing a c… | 59 | 4234 | active |
| Open Duck Mini Open Duck Mini is an open-source project to build a miniature (~42cm) bipedal robot inspired by Disney's BDX droid, with a bill of material… | 51 | 4208 | active |
| fwupd/fwupd fwupd is a system daemon for Linux that enables session software to safely and automatically update device firmware. It provides a D-Bus in… | 98 | 4192 | stable |
| OpenTabletDriver/OpenTabletDriver OpenTabletDriver is an open source, cross-platform, user-mode driver for graphics tablets, with a configurable GUI and daemon architecture.… | 86 | 4159 | active |
| enjoy-digital/litex LiteX is a Python-based framework for building FPGA cores and Systems-on-Chip, providing buses, common cores, CPU integration, and build ba… | 90 | 4155 | active |
| scottbez1/splitflap An open-source DIY split-flap display project based on ESP32, including mechanical designs (OpenSCAD), electronics (KiCad), and firmware (A… | 74 | 4153 | active |
| tmk/tmk_keyboard A collection of keyboard and converter firmware projects built on the tmk_core keyboard library, targeting Atmel AVR and ARM Cortex-M micro… | 72 | 4136 | active |
| SDRangel SDRangel is an open-source software-defined radio (SDR) receiver and transmitter application with a Qt5/OpenGL-based GUI, supporting a wide… | 96 | 4108 | active |
| dekuNukem/daytripper Daytripper is an open-source hardware laser tripwire consisting of a wireless transmitter and a USB receiver that hides windows, locks the … | 46 | 4041 | active |
| verilator/verilator Verilator is an open-source Verilog/SystemVerilog simulator and lint system that compiles RTL designs into fast, multithreaded C++ or Syste… | 77 | 4021 | stable |
| teslamotors/light-show Tesla's official guide and tooling for creating custom light shows on Tesla vehicles using the xLights sequencer. Shows are packaged as .fs… | 32 | 4003 | active |
| Blynk-Technologies/blynk-library Blynk's official C++ client library that connects over 400 IoT hardware boards (Arduino, ESP32, ESP8266, Raspberry Pi, Particle, etc.) to t… | 90 | 3990 | stable |
| atopile/atopile atopile is a language, compiler, and toolchain for designing electronic circuit boards as code using declarative .ato files. It provides de… | 67 | 3976 | active |
| speed47/spectre-meltdown-checker A self-contained shell script that checks Linux and BSD systems for vulnerability to transient execution CPU vulnerabilities such as Spectr… | 96 | 3951 | active |
| Hyperion Hyperion.NG is an open-source ambient lighting (Ambilight) application that captures screen or video content and drives LED strips and smar… | 81 | 3886 | active |
| Rocket Chip Rocket Chip is a Scala/Chisel-based hardware generator that produces parameterizable RISC-V System-on-Chip designs, emitting Verilog RTL fo… | 65 | 3883 | active |
| Limine-Bootloader/Limine Limine is a modern, secure, portable, multiprotocol bootloader and boot manager written in C, and the reference implementation of the Limin… | 96 | 3877 | active |
| misprit7/computerraria Computerraria is a fully compliant RISC-V (rv32i) computer built entirely inside the wiring system of the game Terraria, paired with a Rust… | 70 | 3861 | active |
| StuckAtPrototype Racer An open-source hardware and firmware project for a tiny PCB-based RC car built around the ESP32-H2, including KiCad schematics, gerbers, 3D… | 41 | 3786 | active |
| Black Magic Debug Black Magic Debug is a self-contained in-application debugger for ARM Cortex and RISC-V microcontrollers that requires no configuration fil… | 10 | 3721 | active |
| lowRISC/opentitan OpenTitan is an open-source silicon Root of Trust (RoT) project providing commercial-grade, security-certified hardware IP blocks written i… | 81 | 3707 | stable |
| gqrx-sdr/gqrx Gqrx is an open source software defined radio (SDR) receiver built on GNU Radio and the Qt GUI toolkit. It supports a wide range of SDR har… | 70 | 3706 | active |
| littlekernel/lk LK (Little Kernel) is a small SMP-aware embedded kernel written in C, portable to many 32- and 64-bit CPU architectures including ARM, RISC… | 77 | 3705 | active |
| ckb-next/ckb-next ckb-next is an open-source Linux driver for Corsair keyboards and mice, bringing features of Corsair's proprietary CUE software to Linux. I… | 72 | 3695 | active |
| steveicarus/iverilog Icarus Verilog is an open-source Verilog HDL compilation system that compiles IEEE 1364 Verilog and a growing subset of SystemVerilog (IEEE… | 77 | 3684 | active |
| libopencm3 An open-source firmware library written in C for ARM Cortex-M microcontrollers, supporting families like ST STM32, Atmel SAM, NXP LPC, TI T… | 77 | 3669 | active |
| LumenPnP The LumenPnP is an open source pick and place machine that assembles electronic components onto circuit boards. The repository contains the… | 75 | 3652 | active |
| crankyoldgit/IRremoteESP8266 An Arduino library for ESP8266 and ESP32 that enables sending and receiving infrared remote control signals using common 940nm IR LEDs and … | 70 | 3626 | stable |
| ESPEasy ESPEasy is open-source firmware for ESP8266 and ESP32 microcontrollers that turns them into easy-to-configure multi-sensor and actuator dev… | 87 | 3617 | active |
| OpenArm OpenArm is a fully open-source 7DOF humanoid robot arm (hardware, firmware, and software) designed for physical AI research and deployment … | 67 | 3605 | active |
| MuShibo/Micro-Wheeled_leg-Robot An open-source desktop two-wheeled legged robot project with full mechanical, PCB, and firmware designs. It is built around an ESP32 runnin… | 24 | 3605 | active |
| acidanthera/AppleALC AppleALC is an open-source macOS kernel extension (kext) that enables native HD audio for codecs not officially supported by Apple, without… | 89 | 3579 | active |
| pyserial/pyserial pySerial is a Python library that encapsulates serial port access, providing backends for Windows, macOS, Linux, and BSD. It offers a unifi… | 60 | 3573 | stable |
| ndeadly/MissionControl Mission Control is a Nintendo Switch system module (sysmodule) for Atmosphere custom firmware that lets you connect third-party Bluetooth c… | 84 | 3533 | active |
| Arc Loader Arc is a customized Redpill boot loader that lets Synology DSM 7.x (Xpenology) run on arbitrary consumer hardware. It detects CPU, network,… | 93 | 3527 | active |
| benbaker76/Hackintool Hackintool is a macOS GUI utility for vanilla Hackintosh hardware patching, best known for Intel framebuffer patching from Sandy Bridge thr… | 69 | 3504 | active |
| WaveDrom WaveDrom is an open-source digital timing diagram (waveform) rendering engine that converts a textual WaveJSON description into SVG vector … | 64 | 3501 | active |
| TinyPilot TinyPilot is software that turns a Raspberry Pi (plus a cheap HDMI-to-USB capture dongle) into a browser-based KVM over IP device, letting … | 83 | 3477 | active |
| VESC VESC is the open-source firmware for the VESC DC/BLDC/FOC motor controllers, written in C for STM32-based boards. It supports many hardware… | 75 | 3477 | stable |
| johnfanv2/LenovoLegionLinux A Linux kernel driver and Python GUI/CLI tools for controlling Lenovo Legion laptop hardware features such as fan curves, power modes, powe… | 99 | 3472 | active |
| osqzss/gps-sdr-sim A C-based software-defined GPS signal simulator that generates GPS baseband I/Q sample streams from user-defined trajectories and broadcast… | 10 | 3468 | active |
| SpriteOvO/AirPodsDesktop A desktop application that enhances the Windows (and eventually Linux) experience when using AirPods, showing battery status and enabling a… | 96 | 3462 | active |
| haimgel/display-switch A Rust utility that watches USB device connect/disconnect events and switches monitor inputs via DDC/CI, turning a cheap USB switch into a … | 65 | 3458 | active |
| google/OpenSK OpenSK is an open-source Rust implementation of a FIDO2/FIDO U2F security key, developed by Google as a research platform. It can run as fi… | 67 | 3451 | active |
| adafruit/Adafruit_NeoPixel An Arduino library for controlling single-wire LED pixels and strips such as NeoPixels, WS2812, and Adafruit FLORA pixels. It supports a wi… | 76 | 3424 | stable |
| AlexanderKoch-Koch/low_cost_robot An open-source project with files and Python control code for building a ~$250 low-cost robot arm using Dynamixel XL430 and XL330 servo mot… | 26 | 3423 | active |
| AltraMayor/f3 F3 (Fight Flash Fraud) is a command-line tool that tests flash storage devices like SD cards and USB drives to detect counterfeit capacity … | 79 | 3418 | stable |
| hiyohiyo/CrystalDiskInfo CrystalDiskInfo is a Windows utility that displays disk drive health and S.M.A.R.T. information for PATA, SATA, and partially NVMe/USB/RAID… | 77 | 3407 | active |
| InfiniTime InfiniTime is open-source firmware for the PineTime smartwatch, written in modern C++ on top of FreeRTOS for the nRF52 microcontroller. It … | 83 | 3401 | active |
| acidanthera/WhateverGreen WhateverGreen is a Lilu kernel extension (kext) plugin that applies various patches to ATI/AMD, Intel, and NVIDIA GPUs on macOS, primarily … | 86 | 3388 | active |
| ZSWatch ZSWatch is a fully open-source smartwatch project covering both hardware (KiCad PCB designs) and firmware written in C on the Zephyr RTOS w… | 83 | 3375 | active |
| stm32duino/Arduino_Core_STM32 The official Arduino core that adds STM32 microcontroller support to the Arduino IDE, built on STM32Cube HAL/LL APIs, CMSIS, and the GNU Ar… | 85 | 3361 | active |
| dbisu/pico-ducky A project that turns a Raspberry Pi Pico into a USB Rubber Ducky-style HID injection device running CircuitPython. It executes Ducky Script… | 65 | 3355 | active |
| atc1441/ATC_MiThermometer Custom open-source firmware for the Xiaomi LYWSD03MMC Bluetooth thermometer/hygrometer, plus a web-based Telink OTA flasher and a Python US… | 34 | 3346 | active |
| WiringPi WiringPi is a fast C library for accessing GPIO pins on Raspberry Pi boards by directly manipulating hardware registers. It also ships with… | 86 | 3344 | active |
| linrunner/TLP TLP is a feature-rich Linux command-line utility that optimizes laptop battery life by applying tuned kernel settings automatically. It off… | 90 | 3342 | active |
| cpaczek/skylight Skylight is a real-time aircraft visualization application that decodes ADS-B signals from an RTL-SDR radio receiver and projects live over… | 59 | 3339 | active |
| Source-Robotics/PAROL6-Desktop-robot-arm PAROL6 is an open-source, 3D-printed desktop robotic arm designed to behave like an industrial robot, with open-source control software, GU… | 62 | 3323 | active |
| chipsec/chipsec CHIPSEC is a Python framework for analyzing the security of PC platforms, including hardware, system firmware (BIOS/UEFI), and platform com… | 98 | 3314 | active |
| NixOS/nixos-hardware A collection of NixOS modules providing hardware-specific configuration profiles for laptops, desktops, and other devices. It lets users im… | 66 | 3307 | active |
| MiSTer The main binary and wiki repository for MiSTer, an open-source FPGA-based retro gaming and computing platform running on Terasic DE10-Nano … | 75 | 3292 | active |
| SpinalHDL/VexRiscv VexRiscv is a parameterizable 32-bit RISC-V CPU core written in SpinalHDL that generates Verilog for FPGA deployment. It supports RV32I[M][… | 76 | 3277 | active |
| speedyg0nz/MagInkCal MagInkCal is a DIY E-Ink magic calendar application that syncs events from Google Calendar and renders them onto a Waveshare 12.48" tri-col… | 32 | 3271 | stable |
| davidmonterocrespo24/velxio Velxio is an open-source browser-based emulator and circuit simulator for Arduino, ESP32, Raspberry Pi, STM32 and other embedded boards, ru… | 80 | 3260 | active |
| riscv-software-src/riscv-isa-sim Spike is the official RISC-V ISA simulator, providing a functional model of one or more RISC-V harts. It implements a broad range of RISC-V… | 66 | 3238 | active |
| HiddenRamblings/TagMo TagMo is an Android application for managing NTAG215, Power Tag, N2 Elite, and Bluetooth NFC tags used with Nintendo amiibo figures on 3DS,… | 84 | 3218 | active |
| The-OpenROAD-Project/OpenROAD OpenROAD is an open-source application implementing a unified RTL-to-GDSII flow for digital chip design, covering synthesis through floorpl… | 68 | 3203 | active |
| Ender3 V2/S1 Firmware Optimized Marlin-based firmware for Creality Ender 3 V2 and S1 3D printers, with precompiled binaries for STM32 RET6/RCT6 boards. It adds f… | 72 | 3184 | active |
| tio/tio tio is a command-line serial device I/O tool for connecting to serial TTY devices with a simple interface and configuration file support. I… | 50 | 3181 | active |
| T-vK/ESP32-BLE-Keyboard An Arduino-compatible C++ library that turns an ESP32 into a Bluetooth LE (BLE) keyboard. It lets sketches send keystrokes, text, individua… | 23 | 3163 | active |
| openhwgroup/cva6 CVA6 is an open-source, 6-stage, single-issue, in-order RISC-V CPU core written in SystemVerilog, supporting the 64-bit RV64GC ISA with thr… | 73 | 3128 | active |