Comment by 👾 fab

Re: "Gemini over LoRaWAN?"

In: s/permacomputing

As far as I know LoRa has some VERY low bandwidth (250bit/s - 11kbit/s) and there are some regulations at least here in germany that you may only use 1% of the capacity.

1% means that you may only send one second out of hundred. LoRa is mainly for sending short GPS positions or some other sensor data.

I did my research because I wanted to use LoRa for the next ROOPHLOCH challenge, but it seems it's too low bandwidth even for gemini.

👾 fab

2024-05-05 · 2 years ago

19 Later Comments ↓

☯️ Cotteux · 2024-05-05 at 13:56:

I did it in python with the ignition and meshtastic librairies, i build a simple gateway who split the gemini page in smaller messages (200 characters) because of limitation.

I configure lora device at mediumfast (3.5 kbps). Take somes time to transfert but feasable. I did it without a gopher client and also without optimisation, just a proof of concept. Need a lot more test in different environment and need gemini capsule with less text by page.

I'm working on it !!!!!!

🐙 norayr · 2024-05-07 at 02:41:

Cotteux, very interesting!

what limitation do you mean: speed? size? why do you need to split the page to 200 byte pieces?

☯️ Cotteux · 2024-05-07 at 12:56:

The meshtastic protocol is limited to 230 characters to send and receive a message. I also made some test at longfast and it's working good. A small page take around 30 to 120 secondes without optimisation.

🌲 Half_Elf_Monk [OP] · 2024-05-17 at 17:26:

@Cotteux - that is SO COOL. Do you have the code uploaded anywhere (github, etc)? 3.5kbps isn't much, but again as a proof of concept that's excellent. A 200 character message size sounds (to me) like a pretty large "packet" of information. How resistant are each of these messages/packets to data loss along the way? Any updates since you've last tried? I'd love to see a video or something of how it worked.

@norayr - Thank you for the generous remembering of what LoRa/meshtastic does. fwiw, I was wondering whether such a physical layer could be built/written on top of those radios. The OSI lists seven "layers," on which the internet is built. I'm wondering if a mesh of LoRa radios can be made to replace the bottom two (maybe three) layers. If each of the devices can mesh by: 'serving' data to reqestors, 'locating' (data-request-wise) specific devices, or 'relaying' requests/responses to devices they can't find, then couldn't that become something like IP addresses?

From there, existing code could be plugged in to make layesr 4-7 work. Because LoRa is inherently slower (I was assuming 56.6k equivalent, though it looks like that's optimistic), the web that would run on that hardware/mesh/layers would have to be slower. That's not a bad thing. You'd connect to the capsules that were physically closer to you a lot faster than the stuff far away.

— gemi.dev/cgi-bin/wp.cgi/view?OSI%20model

@olav - reticulum.network looks really interesting, thank you! From what I can tell, it's a chat/comms application for the sort of mesh networks I was thinking of. Perhaps their model is a bit more realistic in that it doesn't rely on only one kind of radio. I was hoping to host/serve smol capsules over that same kind of mesh.

@fab - wow that's unfortunate. 1% really won't work for this application. :/

@requiem - This is good to know. I'd not heard of ESP's, and I didn't realize antennae were so cheap. Out of curiousity, what kind of speeds are you getting on average with your LoRa devices?

🐉 gyaradong [mod] · 2024-05-19 at 11:49:

I feel like "Gemini" (by Gemini I really mean the set of smolweb protocols which are aligned to Gemini) needs a sort of "reverse mail" mode, where servers co-operate to fetch data which might be available intermittently. Once that's the case, I think LoRa works well for that use case. Maybe something Gossip-related?

🚀 Geer3The · 2024-05-19 at 14:33:

functionality through an occasional connection is a good goal. The only experience that I had with gossip was Scuttlebutt. Correct me if Scuttlebutt does not use Gossip. Scuttlebutt seemed very 'heavy'.

☯️ Cotteux · 2024-05-19 at 22:10:

The code is not upload for the moment, the code is terrible and i need more testing. The protocol real speed in Longfast is 300 bps and MediumFast almost 1200 bps.

For the stability my protocol send the number of lines to received and I numbered all lines. If some lines is missed, the client ask these lines back to the server. Also the protocol can received Chat and Text page at the same time.

☯️ Cotteux · 2024-05-19 at 22:46:

I send a link to a video showing a reception of the Gemini capsule spartan.mozz.us at LongFast .

— https://odysee.com/@cotteux:7/2024-05-14-19-00-55:2b

💀 requiem · 2024-06-07 at 10:24:

@daruma please write a loooong post about it! I would love to read about it, I am thinking of creating similar things!

☯️ Cotteux · 2024-06-07 at 16:53:

My project still in progress. I modify my client to be a proxy server to link Lagrange with meshtastic.

After that, is easy to create a adapted capsule for meshtastic. it's easy to create page loading ender 10 sec on longfast.

this a video of loading in longfast a gemini capsule.

— https://odysee.com/@cotteux:7/meshgate1:b

🐙 norayr · 2024-06-07 at 21:01:

i wonder how to do that without meshtastic. i understand that lora is very different, and running tcp/ip over it is not that easy. but still, i wonder are there options if not meshtastic, what else can we do. i guess if i understood lora better, i would know.

☯️ Cotteux · 2024-06-09 at 14:52:

It's also exit Reticulum network with an ip system.

This network work with lora, ham radio, wifi ....

They already have a message system and a text web system with Micron (mix markdown + html) with compression system.

Nice project

☯️ Cotteux · 2024-06-09 at 14:53:

— https://reticulum.network/

☯️ Cotteux · 2024-06-20 at 21:43:

For those who are using Reticulum.network.

I write a Gemini Proxy running on Nomadnet.

Just go on the node SherbyZone at this adress :

3e05f77a9f0dbfc124f230862153c9f9:/page/index.mu

Still in early beta, no input and no certificate and have trouble with some links.

☯️ Cotteux · 2024-06-23 at 21:52:

I added the input feature for Search engine and input form.

🌲 byte · 2025-02-03 at 00:04:

@Cotteux stumbled upon your proxy randomly, it's really cool :3 I should host it on my nomadnet node as a gate to my capsule I think..

🐙 norayr · 2025-02-07 at 00:48:

other options for non internet networks (i mentioned wifi antennas before) are ham radio digital networks like ampr (and it has official network44.0.0.0/8).

also, instead of reticulum yggdrasil could be used.

🐦 JustASillyBird · Feb 07 at 11:43:

Reticulum has one advantage above all others: It's designed for extreme low bandwidth. You could send it over semaphore flags if you wanted. Given that LoRa's longer range modes provide sub-kilobit speed, that matters.

🐦 JustASillyBird · Feb 07 at 11:45:

The catch is that Reticulum is utterly incompatible with everything. It has to be - it runs over links so starved for bandwidth that even TCP couldn't work, because acknowledgement packets wouldn't return fast enough. So any networking over Reticulum means writing everything from ground up.

Original Post

🌒 s/permacomputing

🌲 Half_Elf_Monk:

Gemini over LoRaWAN? — I'm fascinated by the idea of running a smolweb over LoRaWAN. Imagine a decentralized network of FLOSS-hardware devices, solar-powered, each running a gemini capsule and a relay (HAM radio style) to transmit data on to other points on the LoRaWAN mesh network. It's not a fast way to communicate, but smolweb gemini doesn't need to be. If LoRaWAN can reach 56.6kbps, it'd feel like the days of dialup, but... decentralized, solar-powered, and resistant to censorship. Has...

💬 36 comments · 11 likes · 2024-05-01 · 2 years ago