Remix.run Logo
montyanne 3 hours ago

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.

bzb 2 hours ago | parent [-]

I’ve been looking at that exact project to bolster my embedded Rust. Is your implementation available for review? Thanks!

montyanne an hour ago | parent [-]

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.