← RFC
Loomwave Glossary
Status: Informative (non-normative) reference. Date: 2026-06-15.
This glossary collects the terms and acronyms used across the Loomwave analysis notes
(analysis/), the decision of record (design-decision.md), and the protocol specs (spec/).
It is a reading aid, not a normative document — where a definition here and a spec disagree,
the spec wins. Each entry links to the doc that defines or most clearly uses the term. Concatenation
in formulas is written a ‖ b (the spec convention). Acronyms are listed under their expansion's
natural category; a flat A–Z index is at the end.
1. Radio / PHY
- AEAD — Authenticated Encryption with Associated Data. Encryption that delivers confidentiality
and integrity in one pass. A Loomwave
DATA frame seals its payload with AEAD, using the
plaintext header as associated data and an 8-byte truncated tag (spec/security-spec.md).
- Bandwidth (BW) — LoRa channel width (125 / 250 / 500 kHz). Wider BW means shorter airtime and
less range. The budgets use 250 kHz as the baseline (analysis/mac-layer-options.md).
- Capture effect — when two LoRa signals overlap, the receiver can still decode the stronger one
if it is ~6 dB stronger and arrives first. Real but asymmetric and unreliable, so Loomwave does not
depend on it (it is exploited opportunistically by spatial-TDMA) (analysis/hidden-node-analysis.md).
- Coding rate (CR) — LoRa forward-error-correction ratio (4/5 … 4/8). Higher CR is more robust but
costs airtime (analysis/mac-layer-options.md).
- Half-duplex — a LoRa radio cannot receive while transmitting. This is why collision detection
(CSMA/CD) is impossible on LoRa and only collision avoidance is available (analysis/hidden-node-analysis.md).
- Link budget — the margin (in dB) between received signal and the decode threshold for a given
modulation; clients report RSSI/SNR so a coordinator can pick the fastest modulation the budget allows
(spec/mac-spec.md).
- LongFast — the conservative reference modulation (SF11 / BW250 / CR4/5, 16-symbol preamble) used
for worst-case airtime math. Named after the Meshtastic preset of the same shape (analysis/mac-layer-options.md).
- MediumFast — a faster operating point (SF9 / BW250) with several× the capacity of LongFast; the
realistic dense-network setting (the North Georgia network runs here) (analysis/mac-layer-options.md).
- Modulation — the (SF, BW, CR) triple that sets a frame's airtime, range, and collision behaviour.
In Loomwave the coordinator is the modulation authority for its cell (spec/mac-spec.md).
- Preamble — the LoRa synchronization symbols that precede a frame (16 symbols in the baseline).
- RSSI — Received Signal Strength Indicator. Raw received RF power in dBm; one of the link metrics
a client reports in
REGISTER (spec/packet-format.md).
- SF — Spreading Factor — LoRa parameter 7–12 setting chirp duration. Higher SF = longer range,
longer airtime, lower capacity (analysis/mac-layer-options.md).
- ShortFast — the highest-capacity / shortest-range reference modulation (SF7 / BW250) (analysis/mac-layer-options.md).
- SNR — Signal-to-Noise Ratio (dB). Below the per-SF threshold a frame won't decode; reported
per-coordinator so the coordinator can choose modulation (spec/packet-format.md).
- Symbol time (Tsym) —
Tsym = 2^SF / BW; the atomic unit of LoRa airtime (analysis/security-options.md).
- ToA — Time-on-Air — how long a frame occupies the channel, a function of payload size and
modulation. The scarce resource every Loomwave budget is measured against (analysis/mac-layer-options.md).
2. MAC (medium access)
- Beacon — the coordinator-originated frame (one per superframe) that anchors superframe timing and
carries the cell descriptor (modulation), the
SLOTMAP, the EPOCH, and a rate-capped Ed25519
signature (spec/packet-format.md).
- Boundary client — a node that hears two adjacent cells. It associates with the higher-margin cell
and MUST NOT transmit scheduled frames into both in the same superframe (spec/mac-spec.md).
- Broadcast storm — the flood failure mode where one originated message provokes a relay from every
node that hears it; channel load grows as N²·ToA/T and saturates a LongFast channel at roughly
5–11 nodes (analysis/meshtastic-routing-analysis.md).
- Cell — one coordinator's coverage area, with its own beacon, slot schedule, and modulation. A
multi-radio INFRA node can present several cells at once (spec/node-roles-spec.md).
- Collision domain — the set of transmitters that can interfere at a given receiver. The hidden-node
problem is a collision domain (at an elevated relay) larger than the nodes' mutual hearing range
(analysis/hidden-node-analysis.md).
- Contention plane / contention window — the part of the superframe (and the whole channel during
fallback) where nodes self-schedule by epoch-hash for discovery, registration, and best-effort data; a
minimum window is always kept open (spec/mac-spec.md).
- Control overhead — the channel fraction spent on beacons, registrations, adverts, and LSAs rather
than payload; the design target keeps it well under ~15–20% (analysis/routing-options.md).
- CSMA/CA — Carrier Sense Multiple Access / Collision Avoidance. Listen-before-talk; ineffective
against hidden nodes, which by definition can't hear each other (analysis/hidden-node-analysis.md).
- CSMA/CD — …/ Collision Detection. Impossible on half-duplex LoRa (analysis/hidden-node-analysis.md).
- Discovery plane — the rate-capped CSMA/flood network used only for neighbor discovery and
route advertisement, kept small so it can't storm (design-decision.md).
- EPOCH — a monotonic 32-bit counter the coordinator increments each superframe. It anchors the
epoch-hash schedule, feeds the AEAD nonce, and orders frames for replay protection (spec/security-spec.md).
- Epoch-hash slotting — the time-free contention rule
slot = H(SRC_ADDR ‖ EPOCH ‖ attempt) mod C.
It deterministically de-conflicts hidden nodes and (per sim-result-v6) beats CSMA at every load
(spec/mac-spec.md).
- FRAME_T — the superframe period in milliseconds (beacon + scheduled slots + contention window),
typically 1–3 s (spec/packet-format.md).
- Guard time (G) — the silence between slots that absorbs clock drift and propagation delay (~3 ms,
<1% overhead at LongFast) (analysis/mac-layer-options.md).
- Hidden-node problem — two nodes both reach a relay but can't hear each other, so both sense the
channel clear and transmit at once, colliding at the relay. The dominant failure mode of CSMA at
elevated hubs and the central problem Loomwave is designed around (analysis/hidden-node-analysis.md).
- HOPLIM / HUSE —
HOPLIM is the authoritative remaining-hops field (decremented per relay; drop at
0); HUSE is a saturating diagnostic count of hops traversed (spec/packet-format.md).
- LBT — Listen Before Talk — a brief pre-TX carrier sense; a politeness optimization on the
contention plane, never relied on for correctness (spec/mac-spec.md).
- MAC — Medium Access Control — the layer that decides when a node may transmit. Loomwave's is
hybrid: a CSMA/flood discovery plane plus a TDMA data plane (design-decision.md).
- Scheduled plane — the TDMA data plane where a node transmits only in its beacon-assigned slot;
collision-free by construction (spec/mac-spec.md).
- Slot / SLOTMAP — a slot is one reserved transmit opportunity, sized
ToA(max frame) + guard. The
SLOTMAP in the beacon lists the 24-bit owner address per slot index; 0x000000 marks an open
slot anyone may contend for (spec/mac-spec.md).
- Spatial-TDMA — reusing the same slot in non-overlapping cells so they transmit concurrently;
robust to imperfect separation thanks to LoRa capture (spec/mac-spec.md).
- Superframe — the repeating
beacon → scheduled slots → contention window structure of length
FRAME_T (spec/mac-spec.md).
- TC — Traffic class — a 3-bit priority field:
EMERGENCY, CONTROL, INTERACTIVE, TELEMETRY,
BULK, BACKHAUL_INJECT (6–7 reserved). Drives scheduling priority and backhaul admission at zero
airtime cost (spec/packet-format.md).
- TDMA — Time-Division Multiple Access — the scheduled, collision-free data plane at the heart of
Loomwave (design-decision.md).
3. Routing
- Adjacency — an INFRA-to-INFRA link, tagged by transport (elevated LoRa, local fabric, or IP
backhaul) and carrying link metrics (spec/routing-spec.md).
- AODV — Ad-hoc On-demand Distance Vector. The reactive, flood-discovery routing used in the
coordinator-free fallback regime (spec/routing-spec.md).
- Backbone — the aggregated link-state network among coordinators. The real North Georgia high sites
form one connected backbone (analysis/high-site-backbone.md).
- Coordinator claim / election — an INFRA node advertises a reach score; peers corroborate it
with their own measurements, and the best-scoring node becomes the cell's coordinator, with
hysteresis so a sitting coordinator isn't displaced by a marginal rival (spec/routing-spec.md).
- Corroboration — weighting a coordinator-claim by other nodes' measured reach of the claimant, so
a node can't simply assert a high score (spec/routing-spec.md).
- Cross-cell — traffic that crosses a cell boundary, e.g. a client in cell A reaching one in cell B
via the coordinators' backbone (spec/routing-spec.md).
- Distance-vector (DV) — routing that stores a next-hop per destination (not a full path). Aggregated
through INFRA, Loomwave's edge routing stays O(N) (spec/routing-spec.md).
- INFRA tier — the small set of coordinators that run the link-state backbone; confining link-state
to this tier is what keeps it O(1) instead of the O(N²) of mesh-wide flooding (analysis/routing-options.md).
- Link-state / LSA — a Link-State Advertisement floods a node's adjacencies so peers can build a
topology view. Loomwave floods LSAs only among INFRA nodes, rate-capped and signed (spec/routing-spec.md).
- Locality filter — the rule that a coordinator injects backhaul traffic onto RF only for locally
registered (or explicitly relayed) destinations, so internet-scale traffic can't be dumped on the air
(spec/mac-spec.md).
- Next-hop — the only forwarding decision a node makes: which neighbor to hand a frame toward its
destination. Clients keep in-cell entries plus a default (the coordinator); coordinators keep backbone
next-hops (spec/routing-spec.md).
- Path-vector — routing where the sender carries the path in the packet (MeshCore's model), contrasted
with Loomwave's distance-vector (analysis/meshcore-routing-analysis.md).
- Reach / reach score — the set of nodes a coordinator candidate hears directly, combined with
vantage and capability into the election metric — measured, not asserted (spec/routing-spec.md).
- SPF — Shortest Path First — the link-state path computation coordinators run over the backbone
topology (spec/routing-spec.md).
- Vantage — a candidate's elevation above local terrain (GPS-self-reported); a hint in the reach
score, never decisive on its own (spec/routing-spec.md).
4. Security / crypto
- ADDR24 — a node's 24-bit address, derived as the low bits of
H(public key) — a self-certifying
address (the holder can prove ownership by signing). Birthday collisions are re-derived with a salt
counter (spec/routing-spec.md).
- ChaCha20-Poly1305 — the AEAD cipher used to seal Loomwave data (spec/security-spec.md).
- DIR — direction bit — a 1-bit nonce input so that the same
(SRC, SEQ, EPOCH) going A→B differs
from B→A, preventing two-party nonce reuse (spec/security-spec.md).
- Ed25519 — the signature scheme authenticating beacons and adverts (full 64-byte signature; cost
amortized by the rate cap on those frames) (spec/security-spec.md).
- Derived nonce — the 96-bit AEAD nonce, computed as
TRUNC_12( H( SRC_ADDR ‖ SEQ ‖ EPOCH ‖ DIR ) )
and never transmitted — zero wire bytes (spec/packet-format.md).
- HKDF — HMAC-based Key Derivation Function; derives the per-epoch, per-direction sub-keys from the
pair key (spec/security-spec.md).
- Identity — a node's long-term Ed25519 signing key plus the derived X25519 agreement key,
distributed via rate-capped adverts (spec/security-spec.md).
- Nonce reuse — the catastrophic AEAD failure of encrypting two plaintexts under the same
(key, nonce); prevented by the SEQ-wrap / EPOCH-rotation rule (spec/security-spec.md).
- PSK — Pre-Shared Key — a symmetric key shared out-of-band for group/channel encryption
(Meshtastic-compatible model) (spec/security-spec.md).
- Replay protection — a sliding-window check on
(EPOCH, SEQ) that rejects duplicate or stale frames
without any clock synchronization (spec/security-spec.md).
- Rogue coordinator — an attacker who generates a key and advertises as a coordinator; trusted under
TOFU by new clients, with optional out-of-band endorsement as a future mitigation (spec/security-spec.md).
- SEQ — the 1-byte per-frame sequence number; wraps at 256, which is the trigger to rotate
EPOCH
(spec/security-spec.md).
- Sybil attack — cheaply minting many identities to swamp resources or skew election; residual risk
is accepted, mitigated by metering airtime per radio rather than per identity (spec/security-spec.md).
- TOFU — Trust-On-First-Use — the default trust model: a peer's first-seen key binds to its address,
optionally verified out-of-band later (spec/security-spec.md).
- Truncated tag — the 8-byte AEAD authentication tag (2⁻⁶⁴ per-frame forgery odds — ample at LoRa
airtime), the whole of Loomwave's per-frame security overhead (spec/security-spec.md).
- X25519 — the elliptic-curve key-agreement function; Loomwave uses static-static X25519 (an
implicit ECDH with no wire handshake) to derive the pair key (spec/security-spec.md).
5. Node roles
- CLIENT — an end-user device (ESP32/nRF52 class) attached to an app over BLE/USB. It does not relay
(unless in the
CLIENT_RELAY submode), may sleep between its slots, and stores only its own pending
messages (spec/node-roles-spec.md).
- CLIENT_RELAY — a CLIENT submode that opts into forwarding, trading aggressive sleep for always-on
receive (spec/node-roles-spec.md).
- Coordinator — the role an elected INFRA node plays for a cell: emit the beacon, schedule slots,
choose modulation, govern backhaul, and run the backbone link-state. Role is earned by measurement,
not configured (spec/node-roles-spec.md).
- INFRA node — a Linux SBC with persistent storage and optionally multiple radios. It always
participates in the backbone and may become a coordinator if elected (spec/node-roles-spec.md).
- REGISTER — the client→coordinator frame requesting a slot; carries capability flags and per-coordinator
link reports (SNR/RSSI) (spec/packet-format.md).
- REPEATER — a dedicated relay on client-class hardware: always-on receive, no user app, configured
once, optimized for low-power field deployment (spec/node-roles-spec.md).
- Store-and-forward — the coordinator duty of caching messages for absent/sleeping members and
delivering them in their slots (spec/node-roles-spec.md).
6. Project nomenclature
- B1 — the first backbone milestone: the design and results for inter-coordinator adjacency over the
real high-site topology (analysis/backbone-b1-design.md, analysis/backbone-b1-results.md).
- Checkpoints A–D — the human review gates: A after analysis (direction), B after simulation
(
design-decision.md), C after the specs, D after INFRA firmware. No stage advances without
sign-off (checkpoint-status.md).
- Drive test — a real-world mobile measurement of SNR/RSSI/delivery against a known topology
(analysis/drive-test-1-result.md).
- Loomwave — the from-scratch LoRa mesh platform this repo specifies: reliable from 5 to 500 nodes,
zero IP infrastructure required, asymmetric node roles (README).
- North Georgia — the live Meshtastic network used as the real-data ground truth for validation and
propagation calibration (analysis/north-georgia-data-characterization.md).
- Scenario classes — the three reference deployments the sim runs: sparse-rural (10 nodes / 2 INFRA),
dense-event (100 / 4), and neighborhood (50 / 6) (analysis/scenario-suite-result.md).
- Sim result (
sim-result-v*) — a git-tagged simulation run whose numbers back a design claim
(checkpoint-status.md).
- Stage — a phase of the build sequence: 1 analysis → 2 simulation → 3 spec → 4 INFRA → 5 repeater →
6 client → 7 Android → 8 CLI (README).
- Stone Mountain — a real elevated Meshtastic relay analyzed as the canonical hidden-node hub (most
nodes it hears are mutually hidden) (analysis/stone-mountain-hidden-node-hub.md).
7. Compared systems
- Flood-based mesh — the managed-flooding approach (Meshtastic, MeshCore) Loomwave is built to
outscale; simple and coordination-free, but it suffers broadcast-storm collapse and hidden-node loss
as it grows (analysis/meshtastic-routing-analysis.md).
- Gateway / MQTT bridge — a node bridging the RF mesh to IP/MQTT. In Loomwave it is an optional
enhancement, and its downlink is admission-controlled rather than allowed to flood RF (design-decision.md).
- MeshCore — an existing LoRa mesh using flood-to-discover plus source (path-vector) routing
(analysis/meshcore-routing-analysis.md).
- Meshtastic — the most common LoRa mesh: managed flooding plus dynamic routing; the primary
comparison baseline (analysis/meshtastic-routing-analysis.md).
- Reticulum — a mesh stack whose self-certifying addresses, announce-driven discovery, and rate-capped
control Loomwave borrows from (analysis/reticulum-routing-analysis.md).
A–Z acronym index
ADDR24 · AEAD · AODV · BW · CR · CSMA/CA · CSMA/CD · DIR · DV · EPOCH · FRAME_T · G (guard) ·
HKDF · HOPLIM · HUSE · LBT · LSA · MAC · PSK · RSSI · SEQ · SF · SNR · SPF · TC · TDMA · ToA ·
Tsym · TOFU · X25519