LoRa Messenger App: Phone Mesh Plus a LoRa Node

OSHI is a free, open-source, end-to-end encrypted messenger for iOS and Android that uses Bluetooth and Wi-Fi mesh networking to send messages without Internet or cellular service. An optional LoRa node extends that phone mesh from tens of metres to kilometres, and when the Internet or Tor is reachable OSHI uses it too. This page explains what a LoRa messenger app actually is, how a phone-only mesh differs from a LoRa radio mesh, and exactly what OSHI does and does not do with LoRa today.

What a LoRa messenger app is

LoRa ("long range") is a low-power radio modulation used on licence-free bands (868 MHz in Europe, 915 MHz in the Americas, other bands elsewhere). It carries very little data — a few hundred bytes per packet at most — but it carries it far: kilometres between two small radios, tens of kilometres with line of sight and a decent antenna. A LoRa messenger app is a phone app that uses such a radio to send text when there is no cell service and no Internet. The phone is the keyboard and screen; the radio does the talking.

There are two families of LoRa messengers, and they are built the other way round from each other:

Phone-only mesh vs LoRa radio mesh

The physics decide almost everything, so it helps to see the numbers side by side. The OSHI figures are the ones published on the OSHI LoRa nodes page and in the App Store listing; they are field figures, not laboratory maxima.

PropertyPhone-only mesh (OSHI, no hardware)LoRa radio mesh (Meshtastic, MeshCore, RNode)
Range per hopBluetooth about 100 m in the open, 10–30 m through walls; Wi-Fi Direct 50–200 mKilometres: 2–5 km in a dense city, 5–15 km suburban, 15–50+ km open terrain with line of sight (OSHI field figures); Meshtastic cites a 331 km record
HardwareNone — the phones are the networkOne LoRa board per participant (or per group, if a node is shared as a gateway)
What can be sentText, photos, voice notes, files, live location, view-once media; encrypted calls when an IP path existsShort text (Meshtastic packets are about 200 bytes), position and telemetry
Multi-hopUp to 5 phones relay for each other, store-and-forwardMeshtastic: hop limit default 3, maximum 7; MeshCore: routed direct messages, internal limit of 64 hops
BatteryThe phone's own battery; the app must be open on both phones to find each otherDays on a small Li-Po or 18650 cell for the radio; the phone is used only when you read or write
Density neededWorks best in crowds — more phones, more pathsWorks best when people are spread out over distance

Sources: oshi-messenger.com/lora/ (nodes.json, updated 2026-08-03), OSHI App Store listing v1.0.39, meshtastic.org docs (LoRa configuration, introduction), MeshCore FAQ on GitHub.

Where OSHI sits: three transports, one app

OSHI treats every path a message can take as interchangeable. You never pick a transport; the app tries what is available and falls through to the next.

  1. Internet or Tor, when they exist. Messages go through OSHI's relay (or through Tor when you enable it) and reach anyone, anywhere. The relay only ever sees ciphertext; the App Store listing states that group names and member lists are visible to the server on this path.
  2. Phone mesh, when they do not. Bluetooth Low Energy for discovery and short messages, Wi-Fi Direct for photos, voice notes and files. Messages hop across up to five phones and are stored and forwarded when there is no complete path yet.
  3. LoRa node, when distance is the problem. A small board paired to your phone over Bluetooth extends the mesh from across the street to across the valley. This is the part most people are asking about, so the next section is precise about its status.

What the OSHI LoRa node is today — precisely

Hardware. The node OSHI develops against is the Heltec WiFi LoRa 32 V3 (ESP32-S3, SX1262, 8 MB flash). It was flashed from the OSHI site and verified on real hardware on 2026-08-03. Four further boards — LilyGO T-Beam, LilyGO T3-S3, LilyGO T-Echo and Heltec Wireless Tracker — are listed as compatible on paper, not yet run against OSHI. That "verified" versus "untested" distinction is stored in nodes.json and is not edited to something nobody ran.

Firmware. The node runs Meshtastic 2.x firmware, flashed with Meshtastic's official web flasher. OSHI pairs with it over Meshtastic's published Bluetooth service. Dedicated OSHI firmware and a one-click OSHI flasher are planned, not shipped.

Encryption on the LoRa link. The App Store listing says it plainly: "messages bridged to other devices or LoRa radios are not encrypted by that link." OSHI's own end-to-end encryption (X3DH plus the Double Ratchet, AES-256-GCM, Curve25519) protects a message between two OSHI phones. Treat anything that crosses the LoRa air link as protected only by whatever the node's firmware applies, and assume that could be nothing.

Status. The release notes for the current App Store version (1.0.39) say LoRa message transmission is being worked on for the next update. If you are reading this to decide whether to buy a board today: buy it for the phone-to-node pairing that exists, and check /lora/ for the current state before relying on LoRa delivery in the field.

How range actually stacks

The point of combining transports is that each one keeps working when the one above it runs out. Two friends in a flat use Bluetooth. A group at a festival uses Bluetooth and Wi-Fi Direct across the crowd, five hops deep. A hiking party with one node in a rucksack and another at base camp spans a valley. And the moment any phone in the chain sees a Wi-Fi network or a bar of 4G, queued messages for people outside the mesh leave over the Internet. Real LoRa range depends on antenna, placement, terrain and the transmit power your region allows — OSHI applies your region's limits, and a freshly flashed node ships with its region unset and will not transmit until you choose one during first pairing.

When a phone-first LoRa messenger is the right choice

When a radio-first mesh is the right choice

Frequently asked questions

Is OSHI a LoRa messenger app?

OSHI is a phone-first mesh messenger: phones talk to each other over Bluetooth Low Energy and Wi-Fi Direct with no hardware. A LoRa node is an optional accessory that extends range; OSHI pairs with a Heltec WiFi LoRa 32 V3 running Meshtastic 2.x firmware today, and the App Store notes say LoRa message transmission is being completed for the next update.

Do I need to buy a LoRa radio to use OSHI?

No. OSHI works phone-to-phone without any hardware. Buy a board only if you need kilometres of range between a few points, for example a base camp and a hiking party.

Is the LoRa link encrypted?

Not by OSHI. The App Store listing states that messages bridged to other devices or LoRa radios are not encrypted by that link. OSHI's end-to-end encryption protects messages between OSHI phones; the LoRa air link relies on the node firmware.

How far does a LoRa node reach?

OSHI publishes field figures: 2–5 km in a dense city, 5–15 km suburban, 15–50+ km in open terrain with line of sight and a decent antenna. Real range depends on terrain, antenna and the transmit power your region allows; measure your own.

Which LoRa boards does OSHI support?

Verified on real hardware: Heltec WiFi LoRa 32 V3. Compatible on paper but untested: LilyGO T-Beam, LilyGO T3-S3, LilyGO T-Echo and Heltec Wireless Tracker. All run Meshtastic 2.x firmware and expose the same Bluetooth service.

Can OSHI talk to a Meshtastic mesh?

OSHI talks to its own node over Meshtastic's Bluetooth service. Exchanging messages with other people's Meshtastic radios or channels is not documented; do not assume interoperability. See the OSHI for Meshtastic users page.

Try OSHI free

Encrypted messaging with no phone number, offline Bluetooth and Wi-Fi mesh, an optional LoRa node, offline maps and on-device AI.