Subj : The Idiots Guide to Meshtastic
To   : deon
From : Warpslide
Date : Wed Feb 21 2024 09:10 am

On 21 Feb 2024, deon said the following...

 de> Do you have any details on your setup?

 de> I have some LoRA stuff here, that I was playing with last year. I was
 de> wanting to learn how it all worked, I did get messages being sent to
 de> devices at each end of my house, with chirpstack, but didnt get beyond
 de> that.

 de> I'd be happy to set it up again - getting messages sent between systems,
 de> but alas with a internet link in the middle... (I dont know anybody
 de> close by either...)

I was playing with having the two radios talk directly with each other.  I 
thought about trying to put a pi at my in-laws house which is ~9.2km away but 
would require towers and directional antennas, too much money/effort for a 
"huh, that's neat" kind of project.

I bought two "Adafruit LoRa Radio Bonnet with OLED - RFM95W @ 915MHz" to use
with two Pi's I have here.

It uses Python scripts to send/receive messages, the examples for this board
are here:

https://learn.adafruit.com/adafruit-radio-bonnets/sending-data-using-a-lora-rad
io

I found this example for converting a JPG image into base64 and then breaking
it up into chunks to send over a LoRa radio:

https://lowpowerlab.com/forum/general-topics/transmitting-images-with-raspberry
-pi/#msg22549

And modified/combined it with some bash scripts so that if it found a .PKT
file in a directory, to send it over the LoRa radio to the other side which
is always listening.

One interesting thing I noticed with the receiving node is that it would pickup 
a lot of chatter from things nearby, I'm not sure if they were even LoRa 
radios, they might have just been other things on 900MHz.  I was able to get 
around this by having it only accept packets from a specific node.

Here are the scripts I frankenstein'ed together:
https://nrbbs.net/lora.zip

(I'm not a programmer, don't judge me too harshly...)  ;)

I didn't use the base64 encoding as it made the data to send ~35% larger, so
opted to send the raw .zip'ed packet instead.  This is fine as long as the 
packet is .zip'ed.  I use various stings for certain things (e.g. 
!FILENAME!d5f46106.pkt or !ROK!) which if appearing in message text would mess 
things up.  Maybe something like yenc (or more obscure strings) 
would work better.

It works under ideal conditions, but is certainly not ready for primetime.  It 
does have some error correction and integrity checking built-in but won't 
always restart/resend files that have failed.  It also sometimes hangs if 
certain LoRa packets aren't acknowledged.  I was able to get some ftn packets 
to flow automagically (with Mystic's directory tossing) which was good enough 
for me.


Jay

.... Shout out to my fingers. I can count on all of them

--- Mystic BBS v1.12 A49 2023/04/30 (Linux/64)
 * Origin: Northern Realms (21:3/110)