Mesh Messenger — Every Phone Is a Relay

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. OSHI is an alternative to Bridgefy, Briar, Meshtastic and bitchat for offline communication, and to Signal for private messaging.

A mesh messenger turns every phone running it into a relay. Instead of a star with a server in the middle, the network is whatever set of phones happen to be within radio range of each other, and a message finds its way across them hop by hop. This page describes how OSHI's mesh actually works, with the real numbers, and where a phone mesh stops and a radio mesh begins.

The three layers of OSHI's mesh

1. Discovery: Bluetooth Low Energy

With OSHI open, your phone advertises a short identifier and scans for other OSHI phones. BLE is built for exactly this: it can advertise and scan for hours on a small fraction of the battery. Range is roughly 100 m with a clear line of sight and 10–30 m through walls and bodies. On iOS OSHI uses Apple's Multipeer Connectivity; on Android, BLE plus Wi-Fi Direct.

2. Transport: BLE for text, Wi-Fi Direct for everything else

Short encrypted text packets go over the BLE link directly. A photo, voice note or file would take minutes over BLE, so OSHI negotiates a Wi-Fi Direct link between the two phones for the transfer and drops it afterwards. No access point or hotspot is involved.

3. Routing: multi-hop, store-and-forward

Every packet carries a hop counter. If the recipient is not directly reachable, any OSHI phone that receives the packet stores it and forwards it to any new OSHI phone it meets, until the counter reaches five or the packet is delivered. Because the packet was encrypted for the recipient before it left the sender (X3DH + Double Ratchet, AES-256-GCM), a relay carries ciphertext it cannot open, and a seized relay phone reveals nothing about the conversation.

OSHI mesh in numbers

What "up to five hops" means in real space

Hop range compounds only where there are relays. Five phones spaced 80 m apart in a park can carry a message 400 m. Five phones in one apartment carry it 400 m of nothing. In a crowd of thousands the practical limit is not hops but time: each store-and-forward step waits for a new phone to come into range, so delivery across a festival field takes seconds to minutes, not milliseconds. A mesh is a probability, not a wire.

Phone mesh vs radio mesh

Phone mesh (OSHI, bitchat, Bridgefy)LoRa radio mesh (Meshtastic)
HardwarePhones onlyOne LoRa radio per person
Range per hop~100 m open air2–5 km typical, more with elevation
PayloadText, photos, voice notes, files (OSHI over Wi-Fi Direct)Text ~200 bytes, GPS position
BatteryPhone battery; app must be open to relayDays on a small pack; relays while you sleep
Who can joinAnyone who installs the app, in minutesAnyone who owns and flashes a radio

OSHI sits on the phone side, with an optional LoRa node that bridges the phone mesh to kilometre-scale links. Note that messages bridged over the LoRa link are not encrypted by that link, as our App Store listing states.

What the mesh cannot do

Other mesh messengers

bitchat relays up to seven hops over BLE only, with public-domain code. Bridgefy relays over BLE with a closed-source app. Briar syncs directly with contacts over Bluetooth, Wi-Fi and Tor. Meshtastic meshes LoRa radios. The best offline messenger page compares them in one table, and the mesh networking guide covers the theory.

Frequently asked questions

What is a mesh messenger?

An app in which every phone running it relays messages for the others over Bluetooth or Wi-Fi, so a message can travel across several phones with no server, Internet or cell tower. OSHI relays up to five hops with end-to-end encryption at every hop.

Can a relay phone read my message?

No. OSHI encrypts the message for the recipient before it leaves your phone (X3DH + Double Ratchet, AES-256-GCM). Relays store and forward ciphertext only.

How many hops does OSHI support?

Up to 5. bitchat and Meshtastic allow up to 7; Bridgefy does not publish its limit. Per hop, OSHI's Bluetooth range is roughly 100 m in the open.

Does the mesh drain my battery?

Bluetooth Low Energy scanning is designed to run for hours cheaply. Wi-Fi Direct, which costs more, is only switched on while a photo or file is transferring. Keeping the app open so it can relay is the main cost.

Try OSHI free

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