finds.dev← search

// the find

attermann/microReticulum

★ 309 · C++ · Apache-2.0 · updated Jun 2026

C++ port of the Reticulum Network Stack — a cryptographic mesh networking library that runs on both 32-bit+ microcontrollers (ESP32, nRF52, LoRa boards) and native platforms (Linux, macOS), with PlatformIO and CMake build support.

C++ port of the Reticulum mesh networking stack, targeting ESP32/nRF52/LoRa hardware plus native Linux/macOS. Reticulum is a cryptographic, delay-tolerant networking protocol designed for unreliable radio links — this port brings that to firmware. It's a library, not an application; you'd use it to build your own mesh node firmware.

The memory allocator story is genuinely well-thought-out: TLSF-backed pool allocators for PSRAM vs SRAM, with separate container and default allocator classes so the path table doesn't compete with packet buffers for the same pool. The CMake build is a first-class citizen — FetchContent handles all deps, AddressSanitizer is one flag away, and there's a full suite of Unity tests plus Python-based interop tests against the reference Python implementation, which is exactly the right way to validate wire compatibility. The provisioning subsystem is a pleasant surprise: schema-driven, draft/commit model with LIVE_APPLY vs REBOOT_REQUIRED field flags, MsgPack wire protocol, and it compiles out entirely if you don't need it. Active development with a recent push and a firmware companion repo that shows the thing actually working on real hardware.

Ratchets and Channel/Buffer are still unimplemented, which means you can't use forward secrecy or the higher-level streaming primitives — those are core Reticulum features, not edge cases. The nRF52840 situation is genuinely painful: the Adafruit BSP hard-codes InternalFileSystem to 28KB, so you can't run a transport node without external flash, and the README buries this at the bottom rather than leading with it. No pre-built binaries or PlatformIO registry entry, so onboarding requires cloning and configuring the build yourself — fine for experienced embedded devs, a real barrier for hobbyists who just want to flash and go. Documentation beyond the README is thin; the provisioning client guide exists but there's nothing explaining the Reticulum protocol concepts for someone coming in cold without already knowing the Python reference implementation.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →