Hi Petteri and nanopb community,
I wanted to share a project built on nanopb, in case it's useful as a real-world example — and to ask whether you'd be open to listing it somewhere (e.g. a "projects using nanopb" reference), no worries at all if not.
bleRPC —
https://github.com/tdaira/blerpc (
https://blerpc.net) — is an Apache-2.0 RPC framework that carries Protocol Buffers messages over Bluetooth Low Energy (GATT). nanopb does all on-device encode/decode:
- Firmware on nRF54L15 (Zephyr / nRF Connect SDK), with nanopb messages generated at build time.
- The same .proto drives generated clients for Python, Kotlin, Swift, Dart, and TypeScript, so device and apps stay in sync.
- A small container/command layer frames messages across BLE MTUs, with optional end-to-end encryption (X25519/Ed25519/AES-GCM via the on-chip CRACEN engine).
nanopb's small footprint made it a natural fit for the constrained BLE peripheral side. Thanks for building and maintaining it!
Happy to provide more detail or a minimal example if that would help.