I couldn’t find any related topics, but I believe an adaptive mesh would be highly beneficial, especially as the community grows. So here we are!
I understand that for communication, all Lora modems need to use the same Lora settings (Bandwidth, Spread factor, Coding rate). However, I also think the ability to change these settings automatically based on distance could not only speed things up (possibly opening up new possibilities, more on this later) but also decrease congestion.
I hope that covers the “why.”
Now, onto the challenging part - the how.
First Approach:
My knowledge about Lora is limited, so there might be some mistakes in this part. One solution I considered is hopping between presets using an algorithm, something like:
- Check if all the known nodes are accessible; if so, use a higher speed preset.
- Periodically set to a lower speed preset and send a discovery ping.
(Any new node would listen for that preset and send an ACK message back, so they are aware of each other’s presence.) - If the newly discovered node is farther away or has obstacles on the way (requiring a lower speed), every node on the mesh would drop to that preset and continue communicating there.
A Somewhat Different Approach:
A Lora modem can only be set to listen to a specific frequency range. I get that because when using my SDR, I can only see a set frequency range too. But if I understand correctly, Lora modems also listen for a specific list of settings (Bw, Sf, Cr). This part is a bit unclear to me.
With the SDR, when listening to a frequency range, if I receive any transmissions on that range that are not colliding and I can decode, it doesn’t matter if the encoding parameters are the same. Knowing the used parameters is all I need to decode. I assume for a Lora module, detecting the used encoding parameters is the challenging part.
Now, I’m wondering: Can Lora modems detect what preset is used? If not, is this a software problem or a hardware one? I think it must be a software problem, considering that different frequency band usage on different modems is a hardware issue because of frequency-specific complementary hardware used alongside the main chip. However, detecting the preset using the preamble should be possible with software.
**Some Notes:**
SDR(Software-Defined Radio), ACK(acknowledge),
New-Possibilities(being able to send short voice messages and other higher data rate-needing stuff...)
Damn, that took a long time to write. Hope you guys like it!