nanopb
EmbeddedProto
Our great sponsors
nanopb | EmbeddedProto | |
---|---|---|
19 | 4 | |
4,056 | 178 | |
2.6% | 3.4% | |
8.2 | 7.7 | |
6 days ago | 10 days ago | |
C | C++ | |
zlib License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nanopb
- Nanopb – Protocol Buffers for Embedded Systems
-
Looking for a data serialization/deserialization library for use in an embedded system
While I don't have much experience with it directly, I do know that Google's protobuf was designed with minimal footprint capabilities in mind. While it might not work out-the-box for embedded systems, it looks like there is a well maintained open source library NanoPB that "is a small code-size Protocol Buffers implementation in ansi C. It is especially suitable for use in microcontrollers, but fits any memory restricted system." And for added reassurance, it looks like Chromium has a dependency on NanoPB.
-
Embedded communication protocols doc gen
nanopb
-
Lightweight data serialization/deserialization format
Protocol buffers are designed for this. Consider using nanopb on the device side.
-
serialization protocol for rf messages in C
I think you're looking for nanopb, the lightweight implementation of Google's protocol buffers.
-
How to create a program that sends to and receive data from Arduino via Bluetooth using C?
In that runtime environment, using only C is indeed the (very) safe "bet". In particular, I might personally prefer using Nanopb - Protocol Buffers for Embedded Systems.
-
Is a packed struct always the same in size?
I know it’s not the question you asked, but the answer might be this: https://github.com/nanopb/nanopb
-
ESP-Now: multiple devices, but how to do multiple types of data?
The OTHER way to do it is with protobufs, since they don't encode parts of the message that aren't included (that is: any missing part of the message has 0 transmission overhead). nanopb works well on the ESP32.
-
looking for c++ libraries whose equivalent c libraries are also present..
You could look at my library Embedded Proto and Nanopb. If you have any questions let me know.
- How many of you do you actually use C++ for device drivers?
EmbeddedProto
-
What is the best data serialization protocol for real-time embedded systems
Have you looked into Embedded Proto? https://embeddedproto.com/
-
Where can I find safety critical or hard real-time C or C++ libraries?
For a general embedded library for safety critical applications you could look at our Embedded Proto lib. This is a data serialization lib which is checked against the MISRA coding standard guidelines. Doing so makes it possible for our customers to use it in medical applications.
-
Is there any added value of using JSON to interface via ethernet?
That's when protobuf has your back if other formats don't.
-
nanopb VS EmbeddedProto - a user suggested alternative
2 projects | 14 Oct 2021
Embedded Proto is a project aimed at using protobuf with embedded C++ code without using dynamic memory allocation. It is MISRA compatible code and build with professional use in mind.
What are some alternatives?
protobuf-c - Protocol Buffers implementation in C
modm - modm: a C++23 library generator for AVR and ARM Cortex-M devices
nanopb-example - This is a simple project created to test the capabilities of Google's protobuf C implementation, nanopb.
amp-embedded-infra-lib - amp-embedded-infra-lib is a set of C++ libraries and headers that provide heap-less, STL like, infrastructure for embedded software development
raylib - A simple and easy-to-use library to enjoy videogames programming
PlatformIO - Your Gateway to Embedded Software Development Excellence :alien:
modern-embedded-programming-course - Companion repository to the "Modern Embedded Systems Programming" video course.
pymcuprog - a Python utility for programming various Microchip MCU devices using Microchip CMSIS-DAP based debuggers
stuff_sack - Efficient multi-language message packing / serialization.
uTensor - TinyML AI inference library
qpc - QP/C Real-Time Embedded Framework/RTOS for embedded systems based on active objects (actors) and hierarchical state machines
cspot - A Spotify Connect player targeting, but not limited to embedded devices (ESP32).