Team Location Awareness Over LoRa

by sqij in Circuits > Wireless

3378 Views, 24 Favorites, 0 Comments

Team Location Awareness Over LoRa

Tactical-demo.jpg

I have been developing this latest addition to the Ripple LoRa suite for a few months, and I believe the kinks have been ironed out now, and that it's ready for action.

In essence, this latest combo of LoRa radio and Android provides near-realtime location awareness for a team, while completely off-grid, using a LoRa mesh network. And, yep, it's private! All data is encrypted.

There were a lot of technical challenges, and a number of very different requirements to the previous app in this suite (ie. Ripple Messenger) that it warranted a completely new app and radio firmware. I decided to call the app Ripple Tactical, and it's now on Google Play.

There is some compatibility with the rest of the suite, like using Ripple repeaters, and it even can include the use of the dedicated GPS Tracker devices I previously did an article on. But, for the most part, it's intended for private mobile groups who need live location of their team members.

Supplies

ESP32 LoRa boards:

* TTGO LoRa32 v2.1 -or-

* Heltec WiFi Lora 32

The Radios

tactical-device-status.jpg

There really isn't any soldering required, thanks to these ESP32 development boards. The only soldering you have to do is if you want to connect a 3.7V lithium battery. Both of the supported boards come with a battery harness, and you just have to connect the red/black wires to the Lithium battery.

You can alternatively power the boards using a phone top-up/powerbank and a USB cable.

The only potentially difficult part is flashing the firmware onto the development boards. On the project Github site you can download the firmware, and there are instructions there on setting up the tools for flashing the firmware:

https://github.com/spleenware/ripple/wiki/Tactical...

Once the firmware is flashed, you should see the 'Powered by Ripple' startup screen, then a status screen (like above). Initially it will say 'Device is not configured'. The radio module itself now stores your ID/name and encryption keys, and the Android handset only temporarily downloads some of the information while the radio is in use.

The only thing the Android app now stores is the Bluetooth MAC address of the device you have paired.

Initial Setup

tactical-team.png

The initial steps to setting up the radio are:

  • pair the device in Android Bluetooth settings
  • select the device in Tactical app
  • set your unique ID/name.

Within your team, you need to agree on unique IDs, between 2 and 250. There is no 'central server' so you have to decide on the IDs yourself.

There are more detailed instructions on this initial setup on the Github project site:

https://github.com/spleenware/ripple/wiki/Tactical...

Once the pairing is done, and the radio has had the ID set, you then go about exchanging details with other team members. (see screen above). The 'team' screen is where this is done. You simply scan each other's QR codes to exchange your ID/name and public encryption key.

The Map Screen

tactical-map.png

Once your team is setup, the main screen (above) is where all the action is. This will show live, moving map pins of everyone in your team, and has incoming messages popup at the bottom.

You can send direct messages, to a single team member, or you can send broadcasts to the whole team.

Also, there is an S.O.S feature! In the top-left you can simply tap to enter SOS mode, and the rest of your team will receive an alert. The map pin, showing your location, will also flash to highlight the SOS.

To cancel the S.O.S you just tap again, to toggle SOS mode off.

F.A.Q

In anticipation of common questions:

  • Q: what is the range? A: this can vary a lot, depending on interference and obstructions, like buildings. If you have just one repeater at a high altitude, though, you can get fantastic range. I have done tests with a repeater on a mountain near me (at 300 meters altitude), and have tested to 16km.
  • Q: is it secure? A: Yes. All of the transmissions use 256-bit ECC encryption.
  • Q: can files/images also be sent over the mesh? A: No. LoRa is only a low-bandwidth radio modulation (but long range).
  • Q: how long is the battery life? A: this varies, but a 1S LiPo of 850mAh should be able to last about 8 hours. (can be recharged simply with USB cable into radio module)
  • Q: what LoRa frequency can I use? A: currently, it is just for 915MHz, but this is potentially configurable. A future app release will let you set this.

I am really interested in feedback, and hearing from groups like Search-And-Rescue, and whether there are any features or customisations which would be useful.

Anyway, I hope you find this useful!

regards,

Scott Powell.