Long Range IoT Network

He was nice enough to provide a great tutorial as well:

I personally followed this exact tutorial and sample project. Even started with the exact same hardware. I currently have this library working reliably on a Boron talking to remote (non-particle hardware) LoRa nodes. I've gone as long as 2.1 miles but this was with the Boron + LoRa radio sitting on top of a Silo ~60' in the air. I am pretty sure I would of gone farther but it's pretty flat land where I'm at and the Boron+Lora was in a small valley so couldn't maintain line of site beyond that.

The only thing I couldn't get functional was the different modem settings:

  Bw125Cr45Sf128 	Bw = 125 kHz, Cr = 4/5, Sf = 128chips/symbol, CRC on. Default medium range.
  Bw500Cr45Sf128 	Bw = 500 kHz, Cr = 4/5, Sf = 128chips/symbol, CRC on. Fast+short range.
  Bw31_25Cr48Sf512 Bw = 31.25 kHz, Cr = 4/8, Sf = 512chips/symbol, CRC on. Slow+long range. 
  Bw125Cr48Sf4096 Bw = 125 kHz, Cr = 4/8, Sf = 4096chips/symbol, low data rate, CRC on. Slow+long range.
  Bw125Cr45Sf2048 Bw = 125 kHz, Cr = 4/5, Sf = 2048chips/symbol, CRC on. Slow+long range. 

I should of taken better notes, the default works fine and what I us today, I didn't test the fast + short range, only 1 of the slow + long range versions worked but had no noticeable improvement in range but took 2-3X longer to send. The other one would compile fine but would never send/receive a message and the final one wouldn't compile and through some error. It's been a few months though since I last tested. I believe SF has a big impact on range so would be nice to be able to configure for the 4096 chips/symbol but I didn't have enough time/patience to dig into it at that time. I suspect I wasn't given it enough time for the message to send it before giving up. A few weeks ago after I was testing this I noticed I had myDriver.waitPacketSent(500) I'm thinking I need to run the tests test again with that set to a few seconds OR just commented out. :slight_smile:

I believe it's also discussed more here: How to make LoRa RF95 work on XENON

So far I'm very happy with LoRa + Boron but I am just torn between trying to develop some sort of Mesh network, vs Lora, vs standalone Boron's. I need to do some more playing and learning first.
Per the earlier comments in this post, I am now tempted to swap my non-Particle LoRa nodes, to actually be Boron + Lora but for the most part keep the SIM disabled. Then if/when I need I can do OTA to the remote LoRa nodes.