NETWORKING

Five paths. One router. No reconfig.

The agent watches every uplink you plug in, picks the best one, and fails over automatically when it dies. Swap sites and the right path comes up on its own.
my-ground-station.local:8080
The ground node's home page with uplink and link stateThe ground node's home page with uplink and link state
5
Network paths
15s
Health-check interval
4
Failover priorities

UPLINK MATRIX

Everything you plug in is a path.

The access point serves local clients. The four uplinks are ranked by priority. Reorder them per site from the Network tab in Mission Control or the setup webapp.

WiFi AP

RoleAlways on
Prioritylocal
Typical useServes laptop and phone clients
BehaviorLocal only, not a cloud path

Ethernet

RoleBest cloud path
Priority1
Typical useBench, lab, fixed sites
BehaviorChosen first when the link is up

WiFi client

RoleJoin a network
Priority2
Typical useVenue hotspot, office lab
BehaviorUsed when Ethernet is down

Cellular (LTE)

RoleWireless fallback
Priority3
Typical useRemote sites, no wired path
BehaviorUsed when both wired paths are down

USB tether

RoleLaptop link
Priority4
Typical useBench debug, indoor lab
BehaviorLowest priority, the laptop's own connection

FAILOVER

Three strikes, then switch.

The uplink router probes the active path every 15 seconds. Three consecutive failures trigger failover. Three consecutive successes on a lower path, plus a passing probe of the higher-priority path, switch back.

The health check is a TCP connect to the cloud relay on port 443, with a 5 second timeout, every 15 seconds on the active uplink. Three failures in a row move the active uplink to the next priority. Once a lower path has passed three checks in a row, the router probes the higher-priority path before it switches back. A 30 second cooldown between switches stops two flaky links from flapping.

A priority list beats round-robin for a field station because the operator usually knows Ethernet is cheaper than WiFi, which is cheaper than LTE cellular. The agent honors that intent and does not try to stripe bandwidth across paths.

Failover state machine
active: priority 1
health check every 15s
3 misses in a row
failover to priority 2
30s cooldown between switches
3 healthy checks, priority 1 probe passes
switch back to priority 1
Three misses drop the active path. Three hits on the top path promote it back.

SHARE UPLINK

Give the whole field team internet.

Turn on share-uplink and the node becomes a NAT gateway for its own WiFi access point clients. One node, one LTE modem, every laptop and phone on the site gets online.

Share-uplink writes one MASQUERADE rule, through nftables or iptables, on the active cloud uplink. Access point clients get internet. The rule is persisted so it survives reboots, it moves with the active uplink on failover, and it is removed cleanly when the feature is turned off.

The cellular data cap defaults to 5 GB a month and is counted every 60 seconds. At 80 percent the agent warns, at 95 percent the LTE link is shaped to 256 kbps, and at 100 percent to 32 kbps, enough for heartbeat and command traffic. Shared clients stop riding a capped LTE link.

This is a convenience feature. Turn it on for a small team at a remote site. Turn it off when you are on a metered plan and want only the node's own traffic on the LTE path.

Shared internet path
field laptop and phoneon the access point
ground nodeMASQUERADE on the active uplink
active uplinkLTE, Ethernet, or WiFi client
internet
One MASQUERADE rule, one active uplink, every client on the access point gets online.

Plug in the path. The router picks it up.

Uplink configuration, failover tuning, and cloud relay setup are covered in the public docs.

Networking docs
Get Early Access