upvote
Reticulum is a full replacement networking stack for several layers of the OSI stack, so not directly comparable. The LXMF messaging protocol (built on top of reticulum) is nice as it’s encrypted-by-requirement, but doesn’t really have a ton of non-text messaging implementations.

Reticulum is not worth getting into, the utilities and general infrastructure just isn’t there yet.

The project was basically a one-man-show for a long time, and has a lot of odd, esoteric decisions that will drive you mad if you’re actually trying to build something with it (eg, configuration files with sparse documentation that are yaml-but-not-really). I don’t mean to belittle the loads of time the original maintainer put into this project, it’s just not really designed to be usable in the general case by other developers.

I spent some time porting the reference Python implementation to no_std rust, but basically had to roll all the basic debugging utilities myself.

reply
I’ve been looking at that exact project to bolster my embedded Rust. Is your implementation available for review? Thanks!
reply
I was using this as a demo project for playing around with code generation tools, so it’s really not in a great state and entirely AI written, but I can share a link here when I get a chance.

My initial stab was a rust port targeting esp32 Heltec V4 (since it has some niceties like tokio) with Reticulum communication over serial, BLE, WiFi and LoRA. The serial interface was sort of working, but frankly debugging using rnsd/nomadnet was infuriating (there’s no tools just to easily see messages over the wire!).

I’ve moved onto a build system that can also target the SEEED Wio Tracker using no_std, but it’s been… messier. AI tooling doesn’t quite have the context length for big migrations like that yet.

reply
deleted
reply
i like it a lot, being agnostic to communication channel sets it apart from the lora only meshes. it’s cool to be able to use a mesh device to communicate with people who are both on and off the mainline internet seamlessly.

and there’s some cool stuff happening on nomadnet as well l

oh yeah and there’s a voice chat protocol that works over lora, too

reply
> communicate with people who are both on and off the mainline internet seamlessly.

I feel like trying to do that at the protocol level might be the wrong level of abstraction. Different fabrics have very different properties. Seems like the app is the more appropriate level for seamlessly communicating via different fabrics.

Like if I try to send a video to someone but they're currently only visible to me via lora the software probably shouldn't try to push a huge blob of data over that particular medium. But I probably do want the option of sending and receiving large blobs in general, just restricted to high bandwidth connections.

reply