A GIHC experiment · Offline first · Open in spirit

A small network, one that holds, when the big one falls.

We are building a mini-mesh node on ESP32 and connecting local hubs with Rust and iroh. It should work in the woods, at camp and on the day the internet does not.

  • Works without internet
  • Built from small failures
  • Explainable around a campfire
Network map / field note 002 55° N / 12° E
Project status Idea and system design

The next step is three physical nodes, one hub and a working offline demo.

First target 3 nodes
Offline 24 hours
Long range Phase 2

01 / Starting point

Small enough to understand.

The goal is not to reinvent the internet. It is to make the first important connections simple, visible and possible to practise.

01

Offline first

The network must make sense without Wi-Fi, mobile coverage or mains power.

02

Two speeds

ESP32 handles the nearby and power-sensitive work. A Linux hub handles heavier synchronisation with iroh.

03

Failures stay small

One node should be able to restart alone. Its history must return when the battery comes back.

02 / The idea

A digital message stick.

At camp, each participant gets a small node with a screen, a button and a battery. They can send short messages, find checkpoints and record discoveries without a network.

In the evening, a hub collects the history. When connectivity returns, it is passed to another hub through iroh. Every event is signed, cannot be changed unnoticed and can be received again without creating duplicates.

Working title The Message Stick

Messages

A check-in, a short note or a question for the group.

Treasure hunt

Checkpoints, clues and discoveries become a physical game with digital memory.

CTF

Nodes exchange tokens when participants meet in the real world.

03 / Architecture

Radio in hand. Iroh in the hub.

iroh is not a battery-powered radio mesh, and ESP32 is not a natural iroh runtime. The layers therefore have different jobs.

  1. 01 ESP32 node button · screen · battery
  2. 02 Local radio ESP-NOW or BLE
  3. 03 Linux hub Rust · local log
  4. 04 Iroh QUIC · synchronisation
A

The node senses

ESP32 reads buttons and sensors, shows status and stores a small local queue.

B

The hub remembers

A local Linux machine validates, deduplicates and preserves history without internet.

C

Iroh connects

When two hubs can reach each other, new content is replicated securely and resumably.

Important boundaryThe first version uses a star topology around a hub. Multi-hop routing and LoRa come only after the basic chain is stable.

04 / The prototype

The smallest win first.

We will not build the whole preparedness network in one evening. We build the shortest path from a button press to a history that still exists tomorrow.

01

The node wakes

Blink, button, screen and data that survives a restart.

02

Radio works

Three nodes send to one hub through ESP-NOW.

03

History is signed

Firmware and the Rust hub agree on a compact event format.

04

Hubs synchronise

Two local hubs exchange history through iroh and survive interruptions.

Not in the first versionReal-time voice, video, images over LoRa or a general-purpose internet mesh. First we need to send a small message all the way home.

05 / The workbook

Built in the open.

The direction, risks and next steps live in the project documents. They are written to be used in a workshop and changed when measurements begin.

06 / Join in

A network becomes fun when someone is on it.

Mini-mesh is a project under GIHC. It develops in small iterations and should be explainable, buildable and debuggable by families and curious people together.

  • No experience needed Curiosity is enough.
  • Children and adults build and test together.
  • Local first every cell can run its own hub.