awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to raspberrypi/firmware

Open-source alternatives to Firmware

21 open-source projects similar to raspberrypi/firmware, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Firmware alternative.

  • raspberrypi/documentationraspberrypi avatar

    raspberrypi/documentation

    5,575View on GitHub↗

    This is the official documentation repository for Raspberry Pi hardware and software. It covers the complete range of Raspberry Pi single-board computers, the RP-series microcontrollers, and the Raspberry Pi operating system. The documentation provides reference material for setting up devices, configuring hardware, and using the system for tasks including AI inference, camera and video capture, embedded development, and remote access. The documentation covers the full boot chain from the GPU firmware and EEPROM bootloader through to kernel loading, with detailed guidance on boot configuratio

    Pythonasciidocdocumentationraspberry-pi
    View on GitHub↗5,575
  • u-boot/u-bootu-boot avatar

    u-boot/u-boot

    5,093View on GitHub↗

    U-Boot is an embedded bootloader that initializes hardware components and loads operating system kernels into memory. It functions as a hardware abstraction layer providing standardized access to networking, storage, and peripheral buses, while also serving as a secure boot loader and a firmware update interface. The project distinguishes itself through the implementation of secure boot sequences that verify cryptographic signatures and interface with TPM modules to establish hardware-rooted trust. It further provides specialized capabilities for updating device firmware via standardized prot

    C
    View on GitHub↗5,093
  • acidanthera/opencorepkgacidanthera avatar

    acidanthera/OpenCorePkg

    14,750View on GitHub↗

    OpenCorePkg is a modular UEFI bootloader designed to initialize hardware and facilitate the loading of modern operating systems on non-standard or unsupported hardware. It functions as a comprehensive firmware emulation environment, providing the necessary runtime services and memory management to bridge the gap between diverse hardware configurations and operating system requirements. The project distinguishes itself through its ability to perform runtime kernel patching and system firmware modification, allowing for the injection of drivers and the manipulation of hardware tables during the

    Copencore
    View on GitHub↗14,750

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • armbian/buildarmbian avatar

    armbian/build

    5,110View on GitHub↗

    This repository is the Armbian build framework — an embedded Linux build system for generating custom operating system images tailored to single-board computers, primarily targeting ARM and RISC-V architectures. The build process is orchestrated by GNU Makefiles and relies on a chroot-based environment to assemble the root filesystem, manage cross-compilation toolchains, and aggregate binary firmware blobs for hardware compatibility. Kernel and bootloader source trees are fetched via git, with structured patches applied in a controlled sequence, while each supported board is described by a ded

    Shellaarch64armdebian
    View on GitHub↗5,110
  • ventoy/ventoyventoy avatar

    ventoy/Ventoy

    77,243View on GitHub↗

    Ventoy is a cross-platform boot manager that enables users to launch multiple operating system installers and live environments from a single portable storage device. By intercepting the BIOS or UEFI startup sequence, it provides a unified menu that allows for the direct execution of disk image files without requiring file extraction or manual reformatting of the drive. The tool distinguishes itself through a modular, plugin-driven architecture that maps raw image files directly into system memory as block devices. Users can navigate local directories to select bootable files and utilize a we

    Carm64auto-installbootable-usb
    View on GitHub↗77,243
  • dortania/opencore-legacy-patcherdortania avatar

    dortania/OpenCore-Legacy-Patcher

    17,633View on GitHub↗

    OpenCore Legacy Patcher is a utility designed to enable the installation and operation of modern operating systems on legacy hardware that is no longer officially supported. By interposing a custom bootloader between the system firmware and the kernel, the project facilitates the deployment of current software releases on older devices, bypassing restrictive compatibility checks and hardware identification requirements. The project distinguishes itself through a comprehensive framework for system interposition and persistent patching. It employs dynamic kernel extension injection and runtime

    Pythonbig-surmacosopencore
    View on GitHub↗17,633
  • mit-pdos/xv6-publicmit-pdos avatar

    mit-pdos/xv6-public

    9,466View on GitHub↗

    xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an instructional kernel for x86 and RISC-V architectures, featuring a virtual memory manager and support for symmetric multiprocessing. The system is designed to demonstrate core OS principles through a simplified re-implementation of Unix Version 6. It provides a controlled environment for studying system calls, trap handling, and process lifecycles. Its capability surface covers process management, including scheduling and context switching, and memory management via page tables for

    C
    View on GitHub↗9,466
  • zephyrproject-rtos/zephyrzephyrproject-rtos avatar

    zephyrproject-rtos/zephyr

    15,627View on GitHub↗

    Zephyr is a real-time operating system and cross-platform embedded framework designed for resource-constrained hardware architectures. It provides an embedded kernel that manages memory, power consumption, and hardware peripherals across multiple microcontroller architectures. The project utilizes a hardware abstraction layer to decouple high-level kernel services from physical hardware through standardized driver interfaces. It employs a device tree hardware description format and a hierarchical configuration system to optimize binaries and feature sets for specific hardware constraints. Th

    C
    View on GitHub↗15,627
  • rockchip-linux/kernelrockchip-linux avatar

    rockchip-linux/kernel

    1,367View on GitHub↗

    The Linux kernel source tree is core system software tailored specifically for Rockchip processor architectures and embedded hardware boards. It manages hardware resources, processor execution contexts, memory allocation, and process scheduling for custom computing platforms. The project provides low-level hardware abstraction, initialization routines, and a collection of kernel modules designed to control integrated silicon components, storage, and networking hardware. The codebase incorporates hierarchical data structures to describe physical board layouts, memory maps, and peripheral conne

    C
    View on GitHub↗1,367
  • asahilinux/m1n1AsahiLinux avatar

    AsahiLinux/m1n1

    4,114View on GitHub↗

    m1n1 is a low-level bootloader for ARM64-based Apple Silicon hardware. It serves as a firmware tool and experimentation environment for loading external kernels and non-native operating systems. The project enables the execution of concatenated binary payloads containing kernels, device trees, and ramdisks. It provides a platform for firmware experimentation and the deployment of custom kernels on Apple Silicon chips. The system covers low-level hardware abstraction, including memory-mapped register access, device tree transmission, and stage-based bootloading. It also includes UART-based se

    Python
    View on GitHub↗4,114
  • thzoria/nx_firmwareTHZoria avatar

    THZoria/NX_Firmware

    3,546View on GitHub↗

    NX_Firmware is a binary repository manager and firmware distribution server designed to store and serve versioned system update files to hardware devices. It functions as a stateless file host that organizes compiled firmware binaries in a structured directory for automated retrieval via a REST API. The system maps specific firmware builds to compatible hardware revisions using schema-based metadata. It utilizes a flat-file asset hosting model, serving binary blobs directly from the filesystem to avoid the overhead of a database management system. The server handles hardware version control

    Python
    View on GitHub↗3,546
  • fbelavenuto/arplfbelavenuto avatar

    fbelavenuto/arpl

    7,307View on GitHub↗

    Arpl is a bootloader manager and custom kernel loader for network attached storage devices. It provides a network boot environment to automate the fetching, flashing, and installation of modified operating systems and kernels onto hardware storage. The project distinguishes itself through a remote management suite that exposes bootloader controls via a web browser, secure shell connection, or local terminal. It utilizes RSS feeds to automate the retrieval of the latest system images and version metadata for online updates. The system handles hardware boot configuration by mapping network int

    Shell
    View on GitHub↗7,307
  • raspberrypi/linuxraspberrypi avatar

    raspberrypi/linux

    12,543View on GitHub↗

    This project is a monolithic operating system kernel designed to serve as the foundational software layer for diverse computing architectures and embedded platforms. It manages core system services, including processor scheduling, memory allocation, and hardware resource distribution, to facilitate communication between user applications and physical hardware. The kernel utilizes a hardware abstraction layer and platform-specific device trees to ensure consistent operation across a wide variety of processors and specialized computing devices. It supports dynamic functionality through loadable

    C
    View on GitHub↗12,543
  • raspberrypi/rpi-imagerraspberrypi avatar

    raspberrypi/rpi-imager

    2,510View on GitHub↗

    Raspberry Pi Imager is a graphical utility designed to download and write operating system images directly to SD cards and USB drives. It serves as a deployment tool for preparing bootable storage media for single-board computers, facilitating the automated installation and initial configuration of embedded systems. The application distinguishes itself by enabling on-the-fly image customization, which allows users to inject network settings and user credentials directly into the image during the writing process. It supports custom image sources and remote repository manifests, providing flexi

    C++raspberry-piraspberry-pi-1raspberry-pi-2
    View on GitHub↗2,510
  • cirosantilli/x86-bare-metal-examplescirosantilli avatar

    cirosantilli/x86-bare-metal-examples

    5,306View on GitHub↗

    This project is a collection of minimal operating systems, bootloaders, and hardware drivers used to demonstrate low-level x86 system programming and hardware interfacing. It serves as a kernel development toolkit and a system programming lab designed for testing architecture concepts and hardware behavior within a system emulator. The repository provides reference implementations for creating bootable disk images and loading kernel stages. It includes guides for implementing protected mode transitions, memory paging, interrupt descriptor tables, and symmetric multiprocessing on x86 hardware.

    Assemblyassemblybare-metalbaremetal
    View on GitHub↗5,306
  • billw2/rpi-clonebillw2 avatar

    billw2/rpi-clone

    2,787View on GitHub↗

    This project is a shell-scripted utility designed for cloning and synchronizing Linux system disks. It enables the creation of bootable copies of active storage devices, allowing users to maintain functional backups or prepare new storage media for embedded computing environments. The tool performs partition-aware cloning by analyzing the source drive structure to recreate identical layouts on destination disks. It distinguishes itself by modifying boot configuration files and partition identifiers on the target drive, which ensures that cloned media remain bootable when moved to new hardware

    Shell
    View on GitHub↗2,787
  • rust-embedded/rust-raspi3-os-tutorialsrust-embedded avatar

    rust-embedded/rust-raspi3-OS-tutorials

    14,682View on GitHub↗

    This project is a tutorial and framework for building a low-level, bare-metal operating system from scratch using the Rust language. It focuses on ARMv8 kernel development specifically for the Raspberry Pi 3, providing the resources necessary to implement a monolithic kernel that runs directly on hardware without an underlying operating system. The project distinguishes itself by providing a complete embedded cross-compilation suite within a containerized environment to ensure consistent builds. It includes a dedicated kernel deployer that uses a serial interface and chainloader to load and b

    Rust
    View on GitHub↗14,682
  • s-matyukevich/raspberry-pi-oss-matyukevich avatar

    s-matyukevich/raspberry-pi-os

    13,854View on GitHub↗

    This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level implementation of kernel engineering, focusing on the fundamental construction of an OS from the hardware level up. The system is distinguished by its comprehensive approach to ARM64 processor control, featuring a red-black tree task scheduler and a hierarchical page table system for virtual memory management. It implements a sophisticated privilege model that handles transitions between kernel and user modes, ensuring process isolation through address space splitting and exception level m

    Carmarmv8assembler
    View on GitHub↗13,854
  • sel4/sel4seL4 avatar

    seL4/seL4

    5,583View on GitHub↗

    seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b

    Cmicrokernelossel4
    View on GitHub↗5,583
  • arendst/tasmotaarendst avatar

    arendst/Tasmota

    24,502View on GitHub↗

    Tasmota is a universal firmware platform for ESP8266 and ESP32 microcontrollers, designed to provide local control and management of smart home hardware. It functions as an event-driven automation controller that replaces proprietary factory firmware, allowing users to manage relays, sensors, and lighting systems without relying on external cloud services. The system is built on a modular driver architecture that enables dynamic hardware configuration and peripheral support through a web-based management interface. The platform distinguishes itself through a template-driven hardware mapping s

    Carduinoautomationesp32
    View on GitHub↗24,502
  • open-sdr/openwifiopen-sdr avatar

    open-sdr/openwifi

    4,669View on GitHub↗

    OpenWifi is an open-source implementation of the IEEE 802.11n wireless standard designed for programmable logic. It provides a software-defined radio platform and WiFi baseband processor that implements the physical and MAC layers on FPGA hardware, accompanied by a dedicated wireless driver and toolset for hardware control. The project is distinguished by its deep integration of signal analysis and telemetry, specifically through a framework for capturing channel state information and raw IQ samples. It enables high-precision packet timestamping and cross-layer correlation between physical la

    C
    View on GitHub↗4,669