Home / How It Works
How it works

How a message travels the mesh

No towers. No internet. No subscriptions. Just small radios passing your message hand to hand until it arrives. Here is exactly how TriMesh Network carries a text across town when everything else is down.

The big idea

What a mesh network actually is

Many small radios beat one big tower.

Your phone normally depends on a single point of contact: a cell tower. When that tower loses power, gets overloaded, or the internet behind it goes dark, your phone is a brick. Everyone is funneling through the same chokepoint, and when it fails, everyone fails together.

A mesh network has no chokepoint. Instead of one tall tower serving thousands of people, you have many cheap radios that talk directly to each other. There is no central server, no subscription, and no single thing that can be switched off to take the whole network down.

The trick that makes this powerful is multi-hop relaying, sometimes called “bouncing.” A single LoRa radio might reach a friend a mile or two away on its own. But if a third radio sits between you, your message can hop through it to reach someone you could never hit directly. Chain enough of those hops together and a message crosses a whole region, one short link at a time.

Single tower

One failure point. Lose the center and everyone connected to it goes offline at once.

Mesh network

Many paths between nodes. Knock one out and traffic simply routes around it.

No single point of failure

Relaying is spread across many nodes. Knock one repeater out and traffic routes around it. There is no tower whose loss takes everyone offline.

Reach beyond your own radio

You don’t need to reach the destination directly. You only need to reach the next node that can carry your message closer.

The network grows itself

Every repeater someone adds extends coverage for everybody, not just its owner. The mesh gets stronger as the community grows.

Built to survive outages

Solar-powered nodes off the grid keep working through blackouts, storms, and internet failures, when normal comms go quiet.

Multi-hop relaying

How "bouncing" carries a message far past one radio

Each short jump is a “hop.” A handful of well-placed relays stitch together miles of coverage out of radios that individually only reach a mile or two.

You send

Your phone hands the message to your paired radio over Bluetooth. The radio transmits it on the 915 MHz LoRa band.

A repeater hears it

A nearby repeater receives the packet, decides it should be forwarded toward the destination, and passes it along. Companion radios in earshot ignore traffic that isn’t theirs.

It hops onward

The next repeater in line does the same, carrying the message one step closer with each hop across town or across the region.

It arrives

The destination radio recognizes the packet is for it, accepts it, and your friend’s phone displays the message.

It confirms

A delivery acknowledgment travels back along the path, so your app can show the message was actually received.

The radio layer

LoRa: long range, low power, license-free

Why cheap off-grid links are even possible.

MeshCore runs on LoRa, a radio technology built for one specific trade: extreme range and very low power in exchange for very low data rates. That trade is exactly what an off-grid messaging network wants.

LoRa sends small packets remarkable distances on tiny amounts of power, which is why a low-power node can run for a long time on a small solar panel. The catch is bandwidth: LoRa is for text and small data, not photos, voice, or video. For emergency and community comms, short text is precisely the payload that matters.

In the United States, MeshCore uses the 915 MHz LoRa band, part of the 902–928 MHz ISM range. It is license-free under FCC Part 15 rules, so anyone can use it without a license or fees as long as they follow the power and usage limits.

Long range

LoRa packets can travel several miles, and with clear line of sight from height, much farther. Range is what lets a sparse network cover real ground.

Low power

Low power draw means an efficient node can live on a small solar panel or a USB battery, off the grid, for the long haul.

Low bandwidth

Built for text and small data, not media. Messages are small and get through. Don’t expect to send a video, and that’s fine.

License-free in the US

The 915 MHz ISM band is open to everyone under FCC Part 15. No license, no fees, no carrier, just radios talking to radios.

The building blocks

The three node roles

MeshCore isn’t one kind of device doing everything. It splits the work across three roles, and each is its own firmware build with a specific job.

One rule connects them all: companions are for people, repeaters are for reach, and room servers are for messages that need to wait. A healthy mesh has a few of each.

Role 1 of 3

Companion: your personal device

The radio you actually read and write messages on.

A companion is the node you own and carry. It pairs to your phone over Bluetooth and runs the MeshCore app, which is where you read incoming messages and write outgoing ones. This is your seat at the network.

The defining behavior of a companion is what it does not do: it does not relay other people’s traffic. If a packet isn’t addressed to you, your companion ignores it. That keeps your battery alive and the airwaves clean.

A companion is not a repeater. If you want to extend coverage for your neighborhood, you need a node running repeater firmware, not a second companion in a drawer.

What it does

Sends and receives your messages, controlled from the MeshCore app on your paired phone.

Where it lives

In your pocket, your pack, or on your desk. It’s a personal handheld, and it moves with you.

How it’s powered

Its own small battery or USB. Because it doesn’t relay traffic, it sips power and lasts.

What it won’t do

Relay strangers’ packets. It ignores anything not meant for you, keeping the mesh efficient.

What it does

Forwards packets toward their destination using smart routing decisions, so messages reach far beyond one radio.

Where it lives

As high and clear as you can manage: rooftop, mast, or hilltop. Line of sight is king.

How it’s powered

Solar with a battery, or continuous USB. The goal is 24/7 uptime so the mesh stays whole during a grid failure.

Not a flood machine

It routes, it doesn’t blindly rebroadcast everything. Selective forwarding keeps the network usable.

Role 2 of 3

Repeater: pure infrastructure

The relays that give the mesh its reach.

A repeater is the workhorse that makes long-distance messaging possible. It generates no messages of its own. Its single job is to forward packets toward their destination, hop by hop.

MeshCore repeaters are not blind rebroadcasters. They make routing decisions, so traffic isn’t endlessly duplicated. Placement is everything: height beats power, every time. Power it from solar or continuous USB so it stays up around the clock.

Always attach the antenna before powering on or connecting USB. Transmitting without an antenna can permanently destroy the LoRa radio chip.
Role 3 of 3

Room Server: the mesh’s post office

Store-and-forward for messages that need to wait.

Radio networks have a hard problem: what happens to a message when the person it’s for is offline or out of range? On a live-only network, it’s simply lost. A room server solves that.

A room server is a store-and-forward bulletin board, essentially a post office for the mesh. When you come back into range, it delivers the messages you missed, up to 32 previously unseen messages at a time. With repeating enabled, it can also act as a repeater.

What it does

Holds messages for users who are offline, then delivers up to 32 previously unseen messages when they reconnect.

Where it lives

Somewhere stable and well-connected, often paired with a good antenna location.

How it’s powered

Continuous power for best results, since its value comes from always being there. Solar or USB.

Can also repeat

With repeating turned on, it forwards traffic like a repeater while still storing messages.

Under the hood

How MeshCore actually moves a packet

Smart hybrid routing, not blind flooding.

Older mesh systems often work by flooding: every node rebroadcasts every message, hoping it reaches the target. That’s robust but wasteful, and it clogs the airwaves fast. MeshCore floods only when it has to and uses learned direct paths the rest of the time.

Here’s the elegant part: the network learns. The first time you message a contact, MeshCore floods to find them. When the message arrives, the destination sends back a delivery report listing the repeaters it passed through, and that route is recorded as the direct path. Every message after that follows the known path.

Group channels are the exception. Because a channel message goes to many people rather than one fixed destination, there’s no single path to learn, so channel traffic floods by design.

Step 01

First contact floods

Your first message to a new contact propagates outward through the mesh to discover where that device is.

Step 02

A delivery report records a path

The recipient sends back a report listing the repeaters it traversed, stored as the direct path.

Step 03

Later messages go direct

Subsequent messages carry the learned path, so only matching repeaters forward the packet instead of flooding.

Step 04

Hops are bounded

Packets carry a hop limit so they can’t circle forever. The firmware allows up to 64 hops, though real paths are far shorter.

Resilience

How the mesh heals when a node drops

Infrastructure fails. A repeater loses power, a storm knocks down an antenna. A network that depended on that exact node would simply break. MeshCore is built to route around the damage.

Because every contact’s path is just learned information, a broken path is recoverable. When a message tries a path that no longer works, MeshCore retries, then resets that stale path and floods again to discover a fresh route. As long as some chain of working relays still connects you to your destination, your messages keep getting through.

Paths are learned, not locked

A route is just remembered information. When it stops working, MeshCore can throw it away and find a new one.

Automatic retry and re-flood

After repeated failures on a known path, the node resets it and floods to discover a working route around the outage.

Add redundancy on purpose

More repeaters mean more possible paths. Overlapping coverage gives the mesh alternatives to fall back on.

Realistic expectations

Range, coverage, and placement

Why height matters more than anything.

LoRa loves clear line of sight. Radio waves travel in straight lines, and anything in the way — hills, buildings, dense trees — soaks up signal. Get your antenna up high and clear, and your range climbs dramatically.

A radio at street level might reach a few hundred yards to a couple of miles. On a rooftop, several miles. On a hilltop with a good antenna and clear sightlines, links of 20-plus miles become possible. The radio didn’t change — the view did.

Height beats power

Getting a repeater well above its surroundings extends effective range more than a bigger amplifier ever will.

Line of sight rules

Clear air between nodes is the single biggest factor. Rooftop-to-rooftop and hilltop-to-hilltop are where LoRa shines.

A good antenna multiplies range

A quality vertical antenna mounted high transforms a node’s reach. Antennas are where modest money buys real distance.

Every repeater helps everyone

Coverage is shared. Each new well-placed node strengthens the whole network and shrinks the gaps for all members.

Don’t expect cell-tower-style blanket coverage from a handful of nodes. Plan for line-of-sight links between good locations, and grow coverage by adding repeaters where the gaps are.
Putting it together

A real scenario: two neighbors during an outage

Across town, no internet, no cell service.

A line of storms rolls through the region. The power is out across half the county, cell towers are jammed, and home internet is dead. Two neighbors, Maria on the east side and Dev on the west, both have TriMesh companions. Between them sit two rooftop repeaters on solar, both still up while the grid is down.

Maria types a message

On her phone, Maria writes “You and the kids okay? We have water and a generator.” Her companion radio is paired over Bluetooth and ready.

Her radio transmits

The companion sends the packet on the 915 MHz band. Maria can’t reach Dev directly, but she easily reaches the east-side rooftop repeater.

First repeater forwards it

The east repeater, still running on its solar battery, decides the packet should head west and forwards it toward the next relay.

Second repeater carries it on

The west-side rooftop repeater receives the packet and forwards it the last leg, into Dev’s neighborhood and within reach of his radio.

Dev receives it

Dev’s companion recognizes the message is for him and his phone buzzes. He reads Maria’s note despite there being no internet or cell service anywhere nearby.

The reply takes the learned path

Dev replies, and his message follows the path the network just learned, back through the same two repeaters, straight to Maria. The conversation continues entirely off-grid.

This is the whole point of TriMesh Network: when the normal grid fails, the mesh keeps carrying the messages that matter, hop by hop, on power and infrastructure the community owns.
Next steps

Ready to join the mesh?

You now know how a message travels TriMesh: short LoRa hops, smart routing, three node roles, and a network that heals itself. The best way to understand it is to put a node on the air.

Get a companion

A phone-paired handheld is the simplest way onto the mesh. Popular entry boards run around $25–40.

Add a repeater

Have a rooftop or hilltop with a clear view? A solar repeater there extends coverage for the whole community.

Follow the safety rule

Always attach the antenna before powering on any node. Never transmit without an antenna attached.

Put your first node on the air

Our setup guide walks you through it step by step, antenna-first and safe, whether you're starting a companion or building a repeater.

See the full FAQ