Infrastructure

Mesh Networking

Deep dive into the ad-hoc routing and physical layer of pigeon-to-pigeon delivery.

Physical Layer

anon0mesh is transport-agnostic but optimized for low-bandwidth, long-range connection types. By combining consumer mobile hardware with long-range radio, we create a truly redundant network.

  • BLE (Bluetooth Low Energy): Powered by the @magicred1/ble-mesh library, functioning in dual-mode (Central + Peripheral) for peer discovery within 10–100m.
  • LoRa (Sub-GHz Radio): Long-range communication (2–10km per hop) via Meshtastic-compatible hardware (ESP32, nRF52).
  • WiFi P2P: High-bandwidth direct connections for large data synchronization.

BLE Mesh Layer

The BLE stack is the foundation of short-range communication. Devices operate in a coordinated pattern of role cycling—alternating between advertisement (Peripheral) and scanning (Central) windows to maximize discovery while staying within OS constraints.

Multi-Hop Relaying (Path A)

Known as Pure Mesh, this path relies solely on smartphones. When a node receives a packet not addressed to itself, it decrements the Time-to-Live (TTL) counter and rebroadcasts it. This store-and-forward mesh allows messages to propagate through physical space via 100m bluetooth jumps.

Binary Packet Format

Each network packet is a compact binary structure designed for high reliability over lossy links:

struct AnonMeshPacket {
  uint128 packet_id;      // Unique UUID
  uint256 source_pk;      // Ed25519 PubKey
  uint256 dest_pk;        // Ed25519 PubKey
  uint8   ttl;            // Time-to-Live
  uint64  relay_fee;      // Optional Tip (lamports)
  uint8   payload[];      // AES-256-GCM Encrypted
}

LoRa / Meshtastic Radio Bridge (Path B)

For long-range delivery (10km+), anon0mesh creates a Radio Bridge. This bridges the Meshtastic routing layer to the anon0mesh packet format, so a LoRa node can act as a transparent relay between distant BLE clusters.

The Requirement: Because phones cannot natively beam signal 10km, you need to be within 100m of a portable radio node, which then converts the BLE signal to sub-GHz radio waves.

Repository: github.com/anon0mesh/firmware-anonmesh-plugin

Hardware Support

The firmware runs on ESP32 and nRF52-based LoRa hardware, inheriting Meshtastic's broad support matrix.

  • ESP32: Heltec V3, TTGO T-Beam, RAK Wireless (RAK4631).
  • nRF52: Seeed WIO Tracker, RAK4630.
  • Bands: Sub-GHz ISM (433/868/915 MHz).
Note: A custom Meshtastic module bridges the routing layer, so a LoRa node acts as a transparent relay between distant BLE clusters. Peer announcements follow the Meshtastic channel protocol extended with anon0mesh capability flags.

Self-Healing Architecture

The anon0mesh network is designed to be restless and resilient. Because every device acts as a router, the network can "heal" itself in real-time as people move around.

  • Dynamic Pathfinding: If a specific phone (relay) leaves the area, the network automatically finds a new path through another nearby device without any user intervention.
  • Gossip Protocol: Nodes constantly share "health" updates about their neighbors. If a path becomes congested or broken, the mesh reroutes traffic through "quieter" or more stable nodes.
  • Redundancy: Messages are often sent via multiple paths simultaneously, ensuring they reach their destination even if half the network suddenly disappears.
anon0mesh Network Topology Diagram

Network Topology

The anon0mesh network is a self-healing, decentralized topology. Every node (participant) acts as both a user and a relay, ensuring that data can find its path to a gateway even in the most disconnected environments.

No Roaming Needed

Stay connected to the local mesh without expensive eSIMs or roaming fees.

Device to Device

First transaction through pigeon mesh was successfully demoed at @mtndao over devnet.