💾 Archived View for bbs.geminispace.org › s › permacomputing › 16502 captured on 2024-08-25 at 03:38:42. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2024-08-18)
-=-=-=-=-=-=-
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 anyone tried anything like this? Strap a raspberry pi zero to a solar panel and a LoRaWAN radio, and run a mesh network of smol protocol on it.
I realize that I'm dreaming and that this is likely way more difficult than I make it sound. Meshtastic is a (proprietary) LoRaWAN device that can already make the mesh network. pi / SBC computers and solar powered servers have been done already. Why not put those together?
May 01 · 4 months ago · 👍 stack, norayr, requiem, Cotteux, chwilson
This is a pretty cool idea. I have been wondering about this exact same thing. I would love to explore it.
Oh btw Meshtastic can be flashed on lots of things. ESP32’s are really cheap, (£3), LoRa modules can be bought for roughly the same price. TTGO also sell relatively inexpensive LoRa modules. AliExpress is great for things like this.
I really like this idea. It would be also nice to incorporate something like syncthing to share text documents. I really want a way to have a mesh that doesn't depend on the existing grid.
Inspired by this idea, I looked around and found Reticulum, which can form networks based on LoRa (not LoRaWAN) and might be a good basis for serving Gemini contents.
olav, thank you for finding reticulum.
i would like to carefully express a concern that lora is not open source, and mention
is. still i don't know if it is even feasible to buy dash7 devices.
Dash7 - quote, "D7A fills the gap between the Short and the Large Area Networks. D7A excels in urban and industrial network installations connecting actuators and messaging applications (sensors, alarms, states) with ranges up to 500 m."
Geer3The, thank you, for some reason i thought that distance is comparable.
🌲 Half_Elf_Monk [OP] · May 02 at 16:20:
@norayr - I share your concern about having as much open source as possible. idk what to do if the majority of workable devices are proprietary. Maybe some genius out there can figure out solutions.
🌲 Half_Elf_Monk [OP] · May 02 at 16:22:
@requiem - I've followed some guides and flashed a few devices, but I've never worked with sbc's before. How difficult is it to get these things cooperating with one another?
🌲 Half_Elf_Monk [OP] · May 02 at 19:17:
Based on this link that someone ran across below, I wonder how useful any of the Dash7 frequencies would be for this application.
— gemi.dev/cgi-bin/wp.cgi/view?DASH7
Notably, several of these are ultra-narrow band frequencies, which (if I'm reading it rightly) means that you'd have to AIM the modules somewhere.
I was thinking of a module you could build/buy and set up wherever you wanted, and it'd operate as a node in a mesh network of LoRa/LoRaWAN devices, carrying smolweb traffic. That means it should be able to send/receive signals in all directions.
(I'm envisioning myself climbing a tree near where I live so I could install a solar panel and a SmoLoRa node. I'd access THAT via wifi, but the device itself just... chills happily in a tree.
when i was trying to understand how lora works (now i don't remember many things) i was surprised it doesn't operate as wifi, it is not a physical layer on top of which you can assign ip addresses.
it has some netword id and devices that share that network id can see each other.
the devices that run meshtastic can see each other and then transfer the data to the smartphone via wifi, but my understanding is it is a custom case and custom app.
i don't know of a more generic solution.
another possibility is to use wifi antennas for a longer range, people around me used that solution as a cheap alternative to radio modems.
Back in the day before DSL my brother in law got Internet via WiFi broadcasted from a grain silo. 802.11b I think it was. So making the backbone out of WiFi gear is one option.
Mind the frequencies are different for LoRa and WiFi so I don't know whether WiFi antennas would work. But large ones seem relatively inexpensive.
2.4GHz and 5GHz antennas would not work well since LoRa uses ISM bands around 433MHz and 900MHz but they are common frequencies so it is easy to find antennas for those frequencies.
I was looking into longer range LoRa antennas and they are cheap, really. AliExpress has some for £3-£5. Even a large, 110cm 8dbi antenna can be had for £18. You can get decent range out of those, especially if you have direct line of sight. The simpler, 2dbi antennas do look a bit like WiFi antennas, but they are for a different wavelength.
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.
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 !!!!!!
Cotteux, very interesting!
what limitation do you mean: speed? size? why do you need to split the page to 200 byte pieces?
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] · May 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] · May 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?
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'.
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.
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
I really think it's the way forward. Gemini, or gopher, or some sort of BBS really. I would think something that can be synced, so that you can keep in touch with other. This BBS is a good example of a system that would work well with LoRa radio, but should also be reachable through other protocol. I've made myself a small e-paper 'typewriter' that also has a LoRa radio. The tablet is android, and can connect to meshtastic. But living in the middle of nowhere, I can't test that setup just yet. I'll send pic / write about it, somewhere in gemini :D
@daruma please write a loooong post about it! I would love to read about it, I am thinking of creating similar things!
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
@requiem here are some information
— bbs.geminispace.org/u/daruma/17758
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.
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
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.
I added the input feature for Search engine and input form.