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 rogerclarkmelbourne/stm32duino-bootloader

Open-source alternatives to STM32duino Bootloader

30 open-source projects similar to rogerclarkmelbourne/stm32duino-bootloader, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best STM32duino Bootloader alternative.

  • adafruit/circuitpythonadafruit avatar

    adafruit/circuitpython

    4,521View on GitHub↗

    CircuitPython is a specialized derivative of the MicroPython runtime designed as an embedded Python interpreter for microcontrollers. It provides a high-level language environment that allows for direct hardware access through a dedicated hardware abstraction layer and a Python microcontroller runtime. The project is distinguished by firmware that exposes the microcontroller as a native USB mass storage device. This allows users to edit code directly on the device as if it were a removable drive, eliminating the need for specialized flashing tools and enabling filesystem-triggered code reload

    C
    View on GitHub↗4,521
  • probe-rs/probe-rsprobe-rs avatar

    probe-rs/probe-rs

    2,599View on GitHub↗

    probe-rs is an embedded debugging toolset used for flashing, debugging, and inspecting microcontrollers via hardware debug probes. It functions as an embedded firmware flasher, a memory manager for reading and writing to processor registers, and a server implementing the Debug Adapter Protocol to connect hardware debugging to various code editors. The project includes a CMSIS-Pack target parser to extract device metadata and flash configurations from industry-standard definition files. It provides a driver-based probe abstraction to interact with various hardware debug probes regardless of th

    Rustarmarm-corescoresight
    View on GitHub↗2,599
  • rogerclarkmelbourne/arduino_stm32rogerclarkmelbourne avatar

    rogerclarkmelbourne/Arduino_STM32

    2,661View on GitHub↗

    This project is a hardware core and board support package that integrates STM32 microcontrollers into the Arduino development environment. It functions as an embedded systems development tool, bridging high-level programming workflows with ARM Cortex-M microcontroller architectures. The core provides the necessary configuration files and libraries to enable the compilation and deployment of firmware directly onto STM32 hardware. By mapping standard programming functions to specific microcontroller register operations, it ensures consistent behavior across different hardware platforms while ut

    C
    View on GitHub↗2,661

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
  • tinygo-org/tinygotinygo-org avatar

    tinygo-org/tinygo

    17,529View on GitHub↗

    TinyGo is a specialized compiler and development toolkit designed to bring the Go programming language to resource-constrained microcontrollers and WebAssembly environments. It provides a bare-metal runtime environment that enables high-level code execution without the need for a traditional operating system, utilizing an LLVM-based backend to generate efficient machine instructions. The project distinguishes itself through aggressive optimization techniques tailored for small hardware, including a static memory allocation strategy and whole-program dead code elimination that significantly re

    Goadafruitarduinoarm
    View on GitHub↗17,529
  • cpq/bare-metal-programming-guidecpq avatar

    cpq/bare-metal-programming-guide

    4,730View on GitHub↗

    This project provides educational resources and technical guides for microcontroller firmware development. It focuses on writing low-level C code that runs directly on hardware without an underlying operating system, covering the fundamentals of hardware registers, memory mapping, and system clocks. The guides detail the creation of hardware abstraction layers to wrap raw memory-mapped registers into structured interfaces and provide walkthroughs for integrating TCP/IP stacks and HTTP servers into bare-metal environments. It also outlines the implementation of embedded systems build pipelines

    C
    View on GitHub↗4,730
  • stlink-org/stlinkstlink-org avatar

    stlink-org/stlink

    5,093View on GitHub↗

    stlink is a toolset for ARM Cortex-M flashing, firmware management, and debug server operations, with specific support for STM32 microcontrollers. It provides an ARM Cortex-M flash programmer for writing binary and hex files, an ITM trace logger for real-time instrumentation data, and a SWD/JTAG debug server. The project includes a graphical user interface for managing MCU firmware and exporting memory, as well as a remote server that allows external debuggers to control execution and inspect registers on target hardware. The toolset covers microcontroller memory management through flash era

    Carmboardchip
    View on GitHub↗5,093
  • arduino/arduino-cliarduino avatar

    arduino/arduino-cli

    4,936View on GitHub↗

    Arduino CLI is a command line interface for compiling, uploading, and managing libraries and board cores for Arduino-compatible hardware. It functions as a microcontroller toolchain manager and hardware programming tool, providing utilities to discover and install the platform definitions and compilers required for various hardware architectures. The project features an RPC-enabled development daemon that allows external programs to trigger internal tool operations and manage automated electronics workflows programmatically. It also includes an interactive hardware debugger for real-time trou

    Go
    View on GitHub↗4,936
  • zeal-operating-system/zealosZeal-Operating-System avatar

    Zeal-Operating-System/ZealOS

    2,322View on GitHub↗

    ZealOS is a 64-bit operating system designed for bare-metal deployment and custom kernel development. It provides a self-contained environment that operates within a single-address-space memory model, where all software executes in a ring-zero privilege level to eliminate context switching and facilitate direct hardware interaction. The system distinguishes itself through a monolithic architecture that integrates just-in-time compilation, allowing source code to be translated into machine instructions during runtime. It bypasses traditional abstraction layers by utilizing direct hardware memo

    HolyCholycoperating-systempublic-domain
    View on GitHub↗2,322
  • nesbox/tic-80nesbox avatar

    nesbox/TIC-80

    5,825View on GitHub↗

    TIC-80 is a fantasy console platform and multi-language game engine that provides a virtual retro game development environment. It operates via a bytecode virtual machine that executes game logic within fixed memory and resolution constraints. The project distinguishes itself by offering integrated asset editors for pixel art, tile maps, and a pattern-based chiptune audio workstation all within a single environment. It supports multi-language scripting, allowing developers to write logic in Lua, JavaScript, or Ruby, and provides a standalone game exporter to package projects into native execu

    C8bitfantasy-computerfantasy-console
    View on GitHub↗5,825
  • raspberrypi/pico-examplesraspberrypi avatar

    raspberrypi/pico-examples

    3,835View on GitHub↗

    This project is a reference library of firmware examples and a development framework for creating embedded C applications on the RP2040 microcontroller. It provides a collection of hardware peripheral drivers and foundational patterns for managing system resources in resource-constrained environments. The library features reference implementations for programmable I/O state machines, allowing for the creation of custom hardware-level protocols. It also provides a multicore embedded framework to distribute computational workloads across multiple processor cores using symmetric processing. The

    C
    View on GitHub↗3,835
  • nvidia/cuda-samplesNVIDIA avatar

    NVIDIA/cuda-samples

    9,319View on GitHub↗

    This repository is a collection of reference implementations and programming examples for the CUDA Toolkit. It serves as a GPGPU implementation guide and a parallel computing reference, providing code for using graphics hardware to perform general-purpose calculations and high-performance parallel processing. The project provides specific samples for GPU kernel development and resource management. These include demonstrations of multi-GPU communication, peer-to-peer memory access, and system hardware inspection to coordinate distributed GPU resources. The codebase covers a wide range of capa

    C++cudacuda-driver-apicuda-kernels
    View on GitHub↗9,319
  • mgba-emu/mgbamgba-emu avatar

    mgba-emu/mgba

    6,798View on GitHub↗

    mGBA is a high-accuracy Game Boy Advance emulator and hardware-level debugger designed to run handheld console ROMs on modern computers. It serves as a scriptable emulation environment that allows for the execution of portable hardware software and the simulation of associated peripherals. The project distinguishes itself through its focus on technical analysis, providing a suite of tools for retro game debugging and game logic inspection. It includes a host-client debug protocol that enables external debugger connectivity via TCP socket communication and an event-driven scripting engine for

    Cemulatorgame-boygame-boy-advance
    View on GitHub↗6,798
  • ufrisk/pcileechufrisk avatar

    ufrisk/pcileech

    7,738View on GitHub↗

    pcileech is a toolkit for executing DMA attacks, analyzing PCIe bus traffic, performing kernel patching, and conducting remote volatile memory forensics. It functions as a hardware memory acquisition tool and a PCIe DMA attack framework designed to read and write remote system memory via direct hardware interfaces. The project provides capabilities for capturing and displaying raw transaction layer packets from the PCIe bus and mounting live RAM as local drives for analysis. It enables the modification of system memory signatures and the execution of shellcode or implants within the kernel wi

    C
    View on GitHub↗7,738
  • java-native-access/jnajava-native-access avatar

    java-native-access/jna

    8,916View on GitHub↗

    JNA is a foreign function interface and native memory mapper that allows Java applications to call functions in shared native libraries without writing custom JNI wrapper code. It serves as a JNI alternative framework for invoking C functions and mapping native data structures using high-level interfaces. The library distinguishes itself through its ability to translate Java objects and primitives into C-style structs, unions, and pointers for cross-platform memory exchange. On Windows, it provides a dedicated toolkit for interacting with Component Object Model objects using both early and la

    Java
    View on GitHub↗8,916
  • bytedeco/javacppbytedeco avatar

    bytedeco/javacpp

    4,697View on GitHub↗

    JavaCPP is a JNI C++ bridge and foreign function interface that provides a binding generator, a native library loader, and a native memory manager. It automates the creation of Java wrappers around native C++ headers and shared libraries to enable interoperability between the two languages. The project features a C++ binding generator that parses header files to automatically produce the necessary glue code and interfaces for calling native functions. It includes a native library loader that locates and extracts platform-specific binaries from the classpath into a local cache for runtime exec

    Javacc-plus-pluscpp
    View on GitHub↗4,697
  • wiringpi/wiringpiWiringPi avatar

    WiringPi/WiringPi

    3,270View on GitHub↗

    WiringPi is a GPIO hardware control library and embedded hardware interface designed for managing General Purpose Input Output pins on single board computers. It provides a standardized software layer for interacting with hardware registers, facilitating low-latency pin manipulation. The project includes a GPIO command line interface that allows users to inspect pin states and manage hardware input and output levels directly from the terminal. It supports embedded hardware prototyping and hardware state monitoring, specifically targeting Raspberry Pi boards to interact with external electron

    C
    View on GitHub↗3,270
  • gibbed/steamachievementmanagergibbed avatar

    gibbed/SteamAchievementManager

    8,525View on GitHub↗

    Steam Achievement Manager is a game achievement editor and specialized API client designed to modify and unlock game achievements and statistics for titles on the Steam platform. It functions as a utility for manually changing the state of earned rewards and milestones while the client is running. The tool provides capabilities for steam profile customization and game statistic manipulation, allowing users to adjust displayed progress and achievement states. It operates by interfacing with the platform backend to update user profile data.

    C#steamsteam-apitool
    View on GitHub↗8,525
  • 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
  • babbleberry/rpi4-osdevbabbleberry avatar

    babbleberry/rpi4-osdev

    3,757View on GitHub↗

    rpi4-osdev is a project for bare metal operating system development targeting the Raspberry Pi 4. It focuses on creating a custom operating system that runs directly on the hardware without an underlying kernel or abstraction layer. The project provides a codebase and instructional guide for developing a low-level system from scratch. This process involves transitioning from early boot code to kernel execution on the ARM64 architecture. The technical scope covers embedded system bootstrapping and low-level hardware interfacing. This includes managing memory-mapped I/O, physical address mappi

    C
    View on GitHub↗3,757
  • platformio/platformio-coreplatformio avatar

    platformio/platformio-core

    9,299View on GitHub↗

    PlatformIO Core is a toolset for embedded software development that manages the compilation, flashing, and debugging of firmware for various microcontroller targets. It provides a cross-platform build system that automates the process of transforming source code into binaries and transferring them to hardware via serial protocols. The system uses a plugin-based architecture to extend hardware platform support and incorporates a manifest-driven approach to resolve and install the specific toolchains, frameworks, and libraries required for different board definitions. Capabilities cover the fu

    Python
    View on GitHub↗9,299
  • pikvm/pikvmpikvm avatar

    pikvm/pikvm

    10,109View on GitHub↗

    PiKVM is an IP-KVM remote access solution for out-of-band server management. It enables remote control of a host computer's hardware and operating system through a web browser or VNC client, allowing access to the BIOS or boot sequence when the main operating system is unresponsive. The system provides remote hardware control by managing physical power switches and GPIO triggers. It emulates human interface devices, such as keyboards and mice, and supports the emulation of mass storage to mount virtual disk images for bare metal operating system installation and recovery. Additional capabili

    atxhardwarehdmi
    View on GitHub↗10,109
  • ctcaer/hekateCTCaer avatar

    CTCaer/hekate

    8,068View on GitHub↗

    Hekate is a bootloader and system recovery tool for Nintendo Switch hardware. It functions as a multi-OS boot manager that allows the execution of binary payloads and the launching of stock firmware, custom firmware, Android, and Linux through a graphical interface. The project provides a suite of recovery and system modification tools, including the ability to create and restore full backups of internal storage. It also features a USB HID gamepad emulator that maps device controller inputs to USB signals for interacting with external computers. The software covers broad capability areas inc

    Cbootloaderhekatenintendo-switch-bootloader
    View on GitHub↗8,068
  • motioneye-project/motioneyeosmotioneye-project avatar

    motioneye-project/motioneyeos

    8,199View on GitHub↗

    motioneyeos is a dedicated video surveillance operating system and embedded OS build system designed to turn single-board computers into standalone network video monitoring stations. It functions as a specialized Linux-based distribution for resource-constrained hardware, providing the necessary infrastructure to manage a network of cameras for continuous security monitoring. The project features a menu-driven build automation pipeline that allows for the configuration, compilation, and validation of custom system images. It utilizes toolchain-based cross compilation to ensure compatibility a

    Makefile
    View on GitHub↗8,199
  • baekalfen/pyboyBaekalfen avatar

    Baekalfen/PyBoy

    5,159View on GitHub↗

    PyBoy is a programmable Game Boy emulator and hardware simulation framework written in Python. It functions as an emulation engine that allows users to execute original handheld software while providing a programmatic interface to control, probe, and automate game execution. The project is specifically designed as a reinforcement learning environment, exposing emulator states and controls to facilitate the training of machine learning agents. It distinguishes itself by providing tools for game area mapping and the extraction of simplified 2D screen representations and collision maps to suppor

    Pythoncythonemulatorgameboy
    View on GitHub↗5,159
  • doocs/jvmdoocs avatar

    doocs/jvm

    11,093View on GitHub↗

    This project is a technical reference and documentation suite focused on the internal architecture and operational principles of the Java Virtual Machine. It provides comprehensive guides and analysis on how the virtual machine manages class loading, memory organization, and bytecode execution. The documentation distinguishes itself by providing deep dives into specific runtime mechanisms, such as the binary decoding of class files, the hierarchical delegation model for class loaders, and the precise sequence of the loading, linking, and initialization lifecycle. It also details memory reclam

    JavaScriptclassdoocsgc
    View on GitHub↗11,093
  • dotnet/silk.netdotnet avatar

    dotnet/Silk.NET

    4,907View on GitHub↗

    Silk.NET is a low-level API binding library for the .NET ecosystem that provides high-performance interfaces for graphics, audio, and input APIs. It consists of a C header binding generator that converts headers into type-safe language bindings, a graphics API interface for GPU compute and rendering, and a cross-platform windowing wrapper. The project utilizes a customizable pipeline to automate the generation of language bindings from C headers by mapping metadata to syntax trees. Its windowing and input abstraction provides a unified interface to manage application windows across different

    C#3daudiocsharp
    View on GitHub↗4,907
  • esotericsoftware/kryoEsotericSoftware avatar

    EsotericSoftware/kryo

    6,529View on GitHub↗

    Kryo is a Java binary serialization framework and object cloning library used to convert Java objects into a compact binary format and restore them from bytes. It provides a system for creating deep or shallow copies of complex object graphs without requiring binary conversion. The project utilizes variable-length integer encoding and integer-ID class registration to reduce the size of serialized data. It handles complex object graphs through circular reference tracking to prevent data duplication and infinite loops. To maintain long-term data viability, it includes schema evolution managemen

    HTML
    View on GitHub↗6,529
  • gopl-zh/gopl-zh.github.comgopl-zh avatar

    gopl-zh/gopl-zh.github.com

    4,958View on GitHub↗

    This project is a Chinese translation of a comprehensive guide to the Go programming language. It serves as a localized educational resource and technical manual designed to provide guidance on language syntax, design, and software development. The resource covers a broad range of Go language education, including the implementation of programming patterns and system design. It includes translated lessons and examples that focus on core language features such as concurrency and the use of interfaces. The content spans various capability areas, including language fundamentals, data modeling, r

    Goprogramming-language
    View on GitHub↗4,958
  • greatscottgadgets/hackrfgreatscottgadgets avatar

    greatscottgadgets/hackrf

    7,875View on GitHub↗

    This project is a software-defined radio platform designed to capture, analyze, and broadcast radio frequency signals across a wide spectrum. It provides a programmable hardware interface for transmitting and receiving radio signals, enabling spectrum analysis and wireless data monitoring. The system is distinguished by its ability to synchronize multiple devices using a shared external clock and hardware triggers to ensure precise timing and sample accuracy. It supports advanced signal routing, allowing ports to be mapped based on frequency or time to enable specialized operations like pseud

    Chackrfhardwareradio
    View on GitHub↗7,875
  • gunnarmorling/1brcgunnarmorling avatar

    gunnarmorling/1brc

    8,062View on GitHub↗

    The 1BRC (One Billion Row Challenge) is a Java performance benchmarking exercise that processes one billion temperature records from a text file to compute the minimum, mean, and maximum temperature per weather station. At its core, it is a large-scale data aggregation challenge designed to test how efficiently a Java program can parse and aggregate structured data from a plain text file, serving as both a programming exercise and a benchmark for Java performance optimization. The project distinguishes itself through a collection of performance-oriented architectural patterns for high-through

    Java1brcchallenges
    View on GitHub↗8,062