Standing up
a node.
From a bare Linux box to a fully-configured lillypad — one phase at a time. Nothing joins a network yet; that comes after.
seven phases · one machine ·
Start with the machine
FrogNet runs on hardware you already own.
- Any spare computer
- A Raspberry Pi, a mini-PC, an old laptop
- One box is already a complete network
It asks for three things — Linux, a little memory, and a way to talk.
It's just Linux
A Debian-family Linux base — nothing exotic.
Python, PHP, bash — no unusual dependencies. It runs almost anywhere.
the base OS
x86 or ARM, Pi-class up
A couple of gigs of memory
Two gigabytes is the floor.
- 2 GB of RAM, minimum
- More headroom for media and on-node AI
Enough to run the node, its apps, and the adaptive media loop at once.
At least one way to talk
One interface is required. More is better.
- A single interface is the minimum
- Multiple interfaces are recommended
- Each one is another bearer the node can use
the minimum
recommended
Qualify the machine
The installer reads the box before it touches it.
- Debian / Linux base
- At least 2 GB of memory
- At least one network interface
Pass, and install proceeds. Fall short, and it tells you exactly why.
Update, then install
This phase needs you online.
- A full system update runs first
- Then one script lays down the FrogNet world
- The only phase that requires connectivity
Once it's done, the node stands on its own.
Give it an identity
Every node gets a permanent name and a fixed address.
- A permanent GUID in /etc/fnid
- A human name you choose
- A fixed .1 address — e.g. HomeBase 10.80.80.1
Set once, and it is how the node is known from then on.
Choose the bearers
Tell the node which links it may use. Any mix is valid.
Wired, WiFi, or radio — the node treats them all the same. The link is just a pipe.
wired links
upstream, or to another FrogNet
long-range RF
Set the uplink & AP rule
How the node offers WiFi depends on what's on eth0.
- Router on eth0 → it must run in AP mode (added for power)
- Nothing on eth0 → wlan0 takes the hostapd config
- dnsmasq serves DHCP and the .1 identity range
External WiFi on a Pi: the BrosTrens WiFi 6 antenna is the verified option.
must be AP mode
wlan0 becomes the AP
Bring it up at boot
netstart configures the node's networking on every power-on.
- hostapd projects the SSID
- dnsmasq hands out the .1 range
- Discovery comes up armed, waiting
The node makes itself ready — before anything else is even in range.
Configured —
and waiting.
A complete lillypad: powered, self-consistent, and alone.
- Identity set
- Interfaces up
- AP projecting its SSID
- Discovery ready
No peers, no broker, no mesh — yet. The moment another node appears, they'll find each other on their own.
You now have one running
The cheapest contribution is a topology that breaks it
You do not need to read the engine or write a line of it. The simulator takes a topology and runs the real discovery, routing and election code against it. Build one that produces a wrong answer and you have found something nobody else did.
- No licence, no engine access, no Python
- The simulator runs the real code, not a reimplementation
- A topology that fails today and passes on a fix is an oracle
Better gets demonstrated, not argued — and the gate does not care who either of us is.