Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure. Learn more →
Top 23 C embedded-c Projects
-
zephyr
Primary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.
Project mention: What Makes Code Hard to Read: Visual Patterns of Complexity (2023) | news.ycombinator.com | 2025-03-11> I meant the goal of your function needs to be grasped within a reasonable amount of time. This works for every codebase.
It really doesn't though. Here's a function of mine. It's maybe 40 lines of logic, so medium-scale. It's part of an intrusive red/black tree implementation for Zephyr. I'm fairly proud of how it turned out, and think that this code is awfully readable given its constraints.
No human being is going to understand fix_extra_red() without having already read and understood the rest of the file, and coming to it with an understanding of the underlying algorithm. Certainly I can't. I can't even get started on maintaining this code that I originally wrote within a five minute time frame, it's an hour at least every time, just to remind myself how it works:
https://github.com/zephyrproject-rtos/zephyr/blob/main/lib/u...
Now maybe this is "bad code", and "good code" could exist for this problem that still meets your requirements. But... if so that's an awfully celestial definition if it's so hard to find.
-
Stream
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
-
Perhaps surprisingly, I think microcontrollers may be a place where Protobufs are not a bad fit. Using something like Nanopb [1] gives you the size/speed/flexibility advantages of protocol buffers without being too heavyweight. It’ll be a bit slower than your custom binary protocol, but it comes with quite a few advantages, depending on the context.
[1] https://github.com/nanopb/nanopb
-
qpc
QP/C Real-Time Event Framework/RTOS is a lightweight implementation of the asynchronous, event-driven Active Object (Actor) model combined with Hierarchical State Machines.
-
modern-embedded-programming-course
Companion repository to the "Modern Embedded Systems Programming" video course.
-
MuditaOS
Mobile operating system based on FreeRTOS™ optimized for E Ink displays - developed for Mudita Pure minimalist phone
-
-
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
Project mention: Jim: Immediate Mode JSON Serialization Library in C | news.ycombinator.com | 2025-06-28
-
-
-
-
-
-
electricui-embedded
Add communications functionality to connect your hardware to a local user interface.
-
c-embed
Naturally embed read-only filesystems into C99-C++20 w. a single header, zero dependencies and zero modifications to your code
-
Raspberry-PICO2040-Flash-Storage
The Following C Coded Library is used to perform Flash Write, Read and Erase functions on Raspberry Pico 2040.
-
firmware
Firmware projects, shared libraries, and code generation for PER car (by PurdueElectricRacing)
-
-
-
CoreMark-RP2040
This is the COREMARK® embedded benchmark ported by me to the RP2040 chip from the folks over at Raspberry Pi.
-
-
app_timer
Friendly, lightweight, hardware-agnostic timer abstraction layer in C. Use a single timer/counter source to drive many timed events.
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
C embedded-c discussion
C embedded-c related posts
-
A Web based Broadcast Assistant
-
A simple Broadcast Audio Source
-
Nanopb – Protocol Buffers for Embedded Systems
-
Looking for a data serialization/deserialization library for use in an embedded system
-
Exporting Arduino output as .csv file
-
Show HN: Homemade rocketship treehouse – hardware to custom OS
-
Show HN: Homemade rocketship treehouse – hardware to custom OS
-
A note from our sponsor - Stream
getstream.io | 11 Jul 2025
Index
What are some of the best open-source embedded-c projects in C? This list will help you:
# | Project | Stars |
---|---|---|
1 | zephyr | 12,430 |
2 | nanopb | 4,754 |
3 | qpc | 1,115 |
4 | modern-embedded-programming-course | 1,092 |
5 | MuditaOS | 714 |
6 | nanoMODBUS | 556 |
7 | Super-Simple-Tasker | 195 |
8 | jim | 191 |
9 | sha-2 | 189 |
10 | riscv_em | 142 |
11 | FreeACT | 118 |
12 | MiROS | 98 |
13 | PIF-Image-Format | 86 |
14 | electricui-embedded | 66 |
15 | c-embed | 42 |
16 | Raspberry-PICO2040-Flash-Storage | 30 |
17 | firmware | 19 |
18 | rulos | 19 |
19 | stm32f1-baremetal | 14 |
20 | CoreMark-RP2040 | 13 |
21 | SPString | 9 |
22 | app_timer | 7 |
23 | FPGA_Multimedia_Player | 4 |