Topics / #embedded-systems

Embedded-systems projects on GitHub

Learning paths and RTOS platforms for programming microcontrollers and embedded devices.

As of , the most-starred Embedded-systems projects on GitHub are rust (120.5K stars), RuView (98.6K stars) and cs-video-courses (83.7K stars). GitHub.Locker tracks 60 Embedded-systems repositories with 819.8K stars combined. The fastest-growing on October 17 was RuView, with +162 stars in a day.

60Projects
819.8KStars in total
+606Stars in a day

Hot right now

Most stars gained in a day · Oct 17

The all-time top

60 projects · by stars

  1. #1 · rust-lang/rust

    rust

    This is the main source repository for the Rust programming language — it contains the compiler (rustc), the standard library, and documentation.

    120.5K
  2. #2 · ruvnet/RuView

    RuView

    RuView turns ordinary WiFi signals into a spatial-intelligence sensor — it detects presence, measures breathing and heart rate, tracks motion and falls, and even estimates body pose through walls, using Channel State Information (CSI) captured by cheap ESP32 boards, with no cameras or wearables.

    98.6K
  3. #3 · Developer-Y/cs-video-courses

    cs-video-courses

    A curated list of university-level Computer Science courses that have publicly available video lectures, covering topics from intro programming to machine learning, security, robotics, and more.

    83.7K
  1. 4

    openpilot

    63.9Kcommaai/openpilot · Python

    openpilot is an operating system for robotics that currently powers the driver assistance system in over 300 supported cars.

  2. 5

    C-Plus-Plus

    34.8KTheAlgorithms/C-Plus-Plus · C++

    This is TheAlgorithms/C-Plus-Plus, an open-source collection of algorithm implementations in C++ covering computer science, mathematics, machine learning, and physics, built as a learning resource rather than for production use.

  3. 6

    lede

    31.6Kcoolsnowwolf/lede · C

    Lean's LEDE source: a hugely popular OpenWrt/LEDE fork for building your own router firmware, extended with support for domestic Chinese CPUs like Loongson loongarch64 and Phytium Tengrui D2000.

  4. 7

    xiaozhi-esp32

    31.4K78/xiaozhi-esp32 · C++

    XiaoZhi is an open-source firmware for ESP32 chips that turns a cheap microcontroller board into a voice-driven AI chatbot, using MCP to let the AI control devices and cloud services.

  5. 8

    openwrt

    28.8Kopenwrt/openwrt · C

    OpenWrt is a Linux-based operating system built for embedded devices, mostly routers, that replaces a single static vendor firmware with a fully writable filesystem and its own package manager so you can customize the device however you want.

  6. 9

    PLFM_RADAR

    27KNawfalMotii79/PLFM_RADAR · PLSQL

    AERIS-10 is an open-source, low-cost 10.5 GHz phased array radar using pulse LFM modulation, aimed at researchers, drone developers and SDR enthusiasts. It comes in two versions with 3 km and 20 km range.

  7. 10

    Atmosphere

    20.1KAtmosphere-NX/Atmosphere · C++

    Atmosphère is a work-in-progress custom firmware (CFW) for the Nintendo Switch that replaces and patches core parts of the console's Horizon OS to add new features and customization.

  8. 11

    tinygo

    17.8Ktinygo-org/tinygo · Go

    TinyGo is an alternative Go compiler for small places: microcontrollers, WebAssembly (wasm/wasi), and command-line tools. It compiles Go code by combining the standard Go tool libraries with LLVM.

  9. 12

    Marlin

    17.6KMarlinFirmware/Marlin · C++

    Marlin is an open-source firmware for RepRap 3D printers that runs on both 8-bit AVR and 32-bit ARM boards. Many commercial 3D printers come with it preinstalled, and a single code base covers every supported machine.

  10. 13

    arduino-esp32

    17.6Kespressif/arduino-esp32 · C++

    The Arduino core for the ESP32 family of SoCs — it lets you write and flash programs for ESP32-series chips using the standard Arduino API instead of raw ESP-IDF.

  11. 14

    Dummy-Robot

    15.7Kpeng-zhihui/Dummy-Robot · C

    This is the author's open-source design for a super-compact robotic arm, including mechanical CAD files, custom PCB electronics, STM32 firmware, and PC control software for a self-built 6-axis desktop arm.

  12. 15

    sherpa-onnx

    15.3Kk2-fsa/sherpa-onnx · C++

    sherpa-onnx is an offline toolkit for speech-to-text, text-to-speech, speaker diarization, speaker identification/verification, spoken language identification, audio tagging, VAD, speech enhancement, keyword spotting and source separation, built on next-gen Kaldi and ONNX Runtime, with no internet connection required.

  13. 16

    rust-raspberrypi-OS-tutorials

    14.7Krust-embedded/rust-raspberrypi-OS-tutorials · Rust

    A step-by-step tutorial series that teaches you how to write your own embedded Operating System kernel from scratch in Rust, targeting the Raspberry Pi 3 and 4.

  14. 17

    binwalk

    14.5KReFirmLabs/binwalk · Rust

    Binwalk is a firmware analysis tool that can identify, and optionally extract, files and data that have been embedded inside other files.

  15. 18

    Embedded-Engineering-Roadmap

    13.6Km3y54m/Embedded-Engineering-Roadmap · JavaScript

    This is a curated roadmap and resource collection for people who want to become Embedded Systems Engineers, covering software, hardware, and soft skills needed for the job.

  16. 19

    linux

    13.3Kraspberrypi/linux · C

    This is Raspberry Pi's own Linux kernel source tree: the code its official Pi kernels are built from, with Pi-specific drivers and patches carried on top of the mainline Linux kernel.

  17. 20

    mongoose

    13.1Kcesanta/mongoose · C

    An embedded web server and network library: drop two C files into any C/C++ project and you get HTTP, WebSocket, MQTT, TLS, OTA firmware updates and a device dashboard on a microcontroller or a desktop OS.

  18. 21

    lowlevelprogramming-university

    12.8Kgurugio/lowlevelprogramming-university

    A curated roadmap for learning low-level programming (assembly, C, Rust, embedded systems, Linux kernel), inspired by google-interview-university. It is a single long README with links to books, courses, and projects organized by topic.

  19. 22

    rt-thread

    12.3KRT-Thread/rt-thread · C

    RT-Thread is an open source, community-based real-time operating system (RTOS) for embedded and IoT devices, mainly written in C.

  20. 23

    esphome

    11.9Kesphome/esphome · C++

    ESPHome lets you control ESP32, ESP8266, BK72xx, and RP2040 microcontrollers through simple YAML configuration files, and manage them remotely through home automation systems like Home Assistant.

  21. 24

    fprime

    11.8Knasa/fprime · C++

    F ́ (F Prime) is a component-driven flight software framework originally built at NASA's Jet Propulsion Laboratory for spaceflight and other embedded systems, including CubeSats, SmallSats, and instruments.

  22. 25

    immortalwrt

    11.8Kimmortalwrt/immortalwrt · C

    ImmortalWrt is a fork of OpenWrt (a Linux-based router firmware) with more packages ported, more devices supported, optimized default profiles, and localization specifically for mainland China users.

  23. 26

    betaflight

    11.7Kbetaflight/betaflight · C

    Betaflight is open-source flight controller firmware used to fly multi-rotor (drone) and fixed-wing aircraft, focused on flight performance and wide hardware target support.

  24. 27

    WSL2-Linux-Kernel

    10.6Kmicrosoft/WSL2-Linux-Kernel · C

    This is the official source repository for the Linux kernel that powers WSL2 (Windows Subsystem for Linux 2), including the kernel source code and configuration files used by Microsoft.

  25. 28

    lua

    10.4Klua/lua · C

    This is the official development mirror of the Lua programming language's source code, showing the full commit history as maintained by the Lua team, though it is updated irregularly.

  26. 29

    microduck

    9.5Kpollen-robotics/microduck · Rust

    Microduck is a tiny biped duck robot (about 25cm, 800g), and this repo is the robot's brain: Rust daemons that run a 50Hz control loop driving fifteen servos using reinforcement-learning policies exported to ONNX.

  27. 30

    mquickjs

    6.2Kbellard/mquickjs · C

    MicroQuickJS (MQuickJS) is a JavaScript engine built for embedded systems, able to run JS programs using as little as 10 kB of RAM and about 100 kB of ROM, with speed comparable to full QuickJS.

  28. 31

    muse-gadget-sdk

    2.3Kfacebookincubator/muse-gadget-sdk · C

    This is an open source SDK and firmware for building 'Muse gadgets' — DIY devices on ESP32 boards or Raspberry Pi/Linux boxes that connect to the Muse app to drive displays, audio, buttons, sensors, and actuators.

  29. 32

    xcertplay

    1.5Kshilapi/xcertplay · Kotlin

    xcertplay turns an Android head unit into a CarPlay receiver, connecting to an MFi authentication chip through a CH341 I2C bridge or the board's native I2C controller, and supports both wired and wireless CarPlay sessions.

  30. 33

    Microduck-build-tutorial

    1.3KAI-FanGe/Microduck-build-tutorial · Python

    Microduck is a build tutorial and codebase for a compact biped (two-legged) robot: deployment code that runs on a Raspberry Pi Zero 2 W to drive Dynamixel servos using an ONNX reinforcement-learning walking policy, plus a MuJoCo/MjLab-based training environment to produce that policy.

  31. 34

    libdragon

    1.3KDragonMinded/libdragon · C

    Libdragon is an open-source SDK for homebrew Nintendo 64 development, giving you a modern C11 toolchain plus graphics, audio, filesystem and debugging libraries to build real N64 ROMs.

  32. 35

    PwnPad

    1.2Ktwelvesec/PwnPad · C++

    PwnPad is an affordable DIY hardware hacking platform that teaches embedded security through 15 hands-on challenges, covering everything from PCB assembly to side-channel and fault-injection attacks.

  33. 36

    microduck-replica

    1.2Kfanhao375/microduck-replica · HTML

    This is a third-party reverse-engineering project that reconstructs the hardware of Pollen Robotics' Microduck bipedal robot duck - deriving assembly drawings, CAD files and a full electronics scheme from the official public MJCF simulation model and Rust source code, since the mechanical parts and one PCB were never officially open-sourced.

  34. 37

    esp-sdr

    1KESPARGOS/esp-sdr · C

    ESP-SDR is firmware that turns ESP32 Wi-Fi chips into low-duty-cycle software-defined radios by exploiting an undocumented debug path to pull raw I/Q samples straight out of the built-in Wi-Fi receiver, letting you view the spectrum and study signals beyond ordinary Wi-Fi packets without any extra SDR hardware.

  35. 38

    w1700k-sdr

    824h0m3us3r/w1700k-sdr · C

    W1700K SDR turns a Gemtek W1700K Wi-Fi 7 router into a wideband software-defined receiver: the router's MediaTek MT7996 radio captures raw 14-bit IQ at up to 320 Msps, its AN7581 SoC streams it over 10 GbE, and a Linux host shows it as a live spectrum and waterfall in the browser.

  36. 39

    openTPU

    764FeSens/openTPU · Verilog

    openTPU is an open-source AI accelerator whose hardware design, instruction set, simulator, compiler and profiler were all built by AI agents, and it runs real LLMs like Qwen3 and LFM2.5 on an FPGA PCIe card.

  37. 40

    INSLIB

    627jnz/INSLIB · C

    INSLIB is a portable C library for 3D navigation state estimation that fuses IMU data with GNSS/GPS, barometer, magnetometer and other sensors through Kalman filters, used in drones, robotics, cars and aerospace projects.

  38. 41

    mu300-linux

    594dikeckaan/mu300-linux · C

    This project turns the ZTE F50/MU300 and ZTE U30 Air 5G pocket hotspots into small Linux computers that run next to Android, giving you Ubuntu or OpenWrt with working Wi-Fi, Bluetooth, SSH and the device's own 5G modem.

  39. 42

    Jet

    537CubeCoders/Jet · C++

    Jet is a tiny, dependency-free, fixed-function 3D software rasteriser in C++17, built for embedded chips with little CPU and RAM like the ESP32 and STM32; it also runs on desktop PCs and Raspberry Pi.

  40. 43

    sloop-fm1

    536isod89/sloop-fm1 · C

    SLOOP is a free, open-source custom firmware for the M-VAVE FM-1 hardware groovebox, replacing the stock firmware with a deeper synth engine set, a real drum machine, live sequencing, and an in-browser editor.

  41. 44

    PCILeechGen

    400sercanarga/PCILeechGen · Go

    PCILeechGen is a CLI tool that generates custom firmware for PCILeech FPGA boards. It reads a real donor PCI/PCIe device through VFIO, clones its identity (config space, BARs, capabilities), and produces a ready-to-flash .bin bitstream via Vivado.

  42. 45

    techo5

    340HuskerMinion/techo5 · Go

    TECHO5 is open-source firmware that replaces Android and Alexa on the Amazon Echo Show 5 (also ported to the Show 8, Spot and Dot 2) with a minimal Alpine Linux image and a single Go daemon, turning the device into a local Home Assistant voice satellite with its own touchscreen and no Amazon cloud involved.

  43. 46

    ftl

    303nuta/ftl · Rust

    FTL is a new operating system written in Rust that aims to be an alternative to Linux, BSD, and Illumos specifically for cloud environments.

  44. 47

    CHOMPI

    289CHOMPI-Club/CHOMPI · C++

    CHOMPI is a quirky chromatic sampler and tape-music instrument, and this repo contains every production file behind it - the firmware (TAPE, TEMPO, WAVE) and the hardware (PCB schematics, BOM, enclosure files).

  45. 48

    NPC-Forge

    270gioblu/NPC-Forge · Python

    NPC-Forge is an open-source neuro-symbolic framework for building conversational agents with distinct personalities, multi-turn context, sentiment analysis and tool-call support. Its agents run on the CPU without machine learning or LLMs.

  46. 49

    coyopedal

    261dashersw/coyopedal · C++

    CoyoPedal is a standalone guitar amp and effects pedal built on the ESP32-S3 that runs full-size Neural Amp Modeler (NAM) A2 captures in real time, with a touchscreen UI and a browser build compiled to WebAssembly.

  47. 50

    PixelFonts

    254mcer12/PixelFonts · C

    PixelFonts is a collection of pixel-perfect bitmap fonts for AdafruitGFX and u8g2, hand-crafted for tiny low-resolution displays like OLED and e-paper screens.

  48. 51

    ESP32s3-LLM-Cluster

    243Low-Zi-Hong/ESP32s3-LLM-Cluster · C++

    This project is a distributed inference engine that runs a 0.5B-parameter LLM, quantized to 1.58-bit (BitNet) ternary weights, split across a cluster of 7 ESP32-S3 microcontrollers connected via SPI.

  49. 52

    BLEhound

    223BLEhound/BLEhound · C

    BLEhound is an open-source Bluetooth LE sniffer built on the nRF54 chip, combining custom firmware, a Wireshark extcap plugin, and open hardware (PCB/Gerbers/case) to capture BLE traffic with an RF front-end for better range.

  50. 53

    frank-386

    210rh1tech/frank-386 · C

    FRANK 386 is an i386 PC emulator that runs as firmware on the Raspberry Pi Pico 2 (RP2350), turning the board into a tiny retro PC with VGA/HDMI video, SD-card storage, keyboard and mouse input, and sound. It is a port of Chunhui He's Tiny386.

  51. 54

    papermono-shopping-list

    206seamusc/papermono-shopping-list · C++

    Firmware and a companion server that turn the M5Stack PaperMono e-paper device into a household shopping list that lives on the fridge and stays in sync with a phone web app.

  52. 55

    needle-2-esp32

    198andrisgauracs/needle-2-esp32 · C

    It is a C firmware that runs Cactus's Needle 2, a 45-million-parameter language model, entirely offline on an ESP32-S3 microcontroller, turning plain-English requests into guaranteed-valid JSON tool calls.

  53. 56

    zxdesk

    140mindbox77/zxdesk · Assembly

    ZxDesk is a graphical desktop environment for the 48K ZX Spectrum, written entirely in Z80 assembly, with overlapping windows, pull-down menus, a file manager, a notepad, clock and calendar, all running natively on the machine.

  54. 57

    examples

    120geastack/examples · TypeScript

    This is the example-app gallery for GeaStack — a collection of sample Gea apps used by the simulator, embedded boards, GeaOS, Apple targets, and the VS Code/Cursor extension to test and demo the platform.

  55. 58

    cardputer-ai

    119therezor/cardputer-ai · C++

    Cardputer AI is a tiny offline chatbot that runs entirely on the M5Stack Cardputer / Cardputer ADV handheld, powered by an 8-million-parameter language model baked directly into the firmware.

  56. 59

    personal-assistant

    109r-ayin/personal-assistant · C++

    A memory system for an AI companion that stores conversations as structured, narrative memory and carefully decides when to bring a memory back and when to stay silent, instead of just doing retrieval. It pairs a configurable backend (ASR/LLM/embeddings) with an ESP32-S3 recording device.

  57. 60

    voiceshell-muse-bridge

    77hyj-STAR/voiceshell-muse-bridge · Python

    VoiceShell Muse Bridge is an experimental research project that lets an ESP32 board pair with Meta's Muse Gadget SDK, then hands the actual text conversation off to a separate Linux server instead of routing every message through the board.

Often tagged together