← RFC

Drive Test 1 — The First Fielded Loomwave Cell (2026-06-11)

Status: Field result. Reproduce: tools/analyze_drive.py on the tower's drive_log.csv. Setup: tower coordinator (CM3 + Nebra Mesh HAT, E22 @ 22 dBm chip ≈ 30 dBm EIRP, 60 ft AGL, external antenna) · T114 client in a truck cab (+20 dBm, stub antenna, OEM L76K GPS), operator driving a suburban neighborhood loop. Uplink (client→tower) is the measured direction; every delivered frame is an AEAD-sealed position report logged with RSSI/SNR at the tower.

Drive 1 coverage + RSSI vs distance

What the protocol did (the system result — unambiguous)

Metric Value
Position reports delivered 149 over a 34-min drive
Joins (TOFU + sealed REGISTER → slot grant) 5 (initial + 4 dead-zone recoveries)
In-session scheduled delivery (seq-gap est.) 95%
Max uplink distance 612 m
Weakest decoded uplink −113 dBm (SF9 floor ≈ −124)

The full protocol survived contact with the field: signed beacons acquired in motion, identity TOFU, sealed REGISTER/grant, scheduled TDMA position telemetry, membership expiry + re-join through four real dead zones (the churn machinery demonstrated live), epoch persistence across tower restarts. The drive also exercised the day's hard-won fixes: kernel-CS overlay, hybrid DIO1+SPI IRQ wait, never-silent TX logging.

What the radio numbers say (the propagation result — preliminary)

The holes map (phone GPX ⋈ delivered frames)

Route coverage vs measured dead zones

Joining the operator's phone track (43 points, ~1/min — everywhere driven, out to 3.3 km) against delivered frames: only ~9% of sampled route points were inside uplink coverage — the truck was in-session for roughly 6 of the 34 minutes. Read together with the 95% in-session delivery, this is the two-scale truth of the test: where link exists, the TDMA cell delivers near-perfectly; link existence itself is the scarce resource — an antenna/terrain problem (suspect truck coax, mid-tower antenna below the near-field canopy, hilly heavily-wooded area), not a protocol problem. Even some near-tower points read dead (the under-null again). The red points are the input to any future repeater placement. (Caveat: 1/min GPX sampling with a ±6 s join window under-counts brief coverage pockets.)

Bench↔field gap worth recording

The bench (directly under the antenna, indoors) never heard the tower at any point — while the truck at 600 m held a session. The colinear's under-null is real and deep; "can't hear it at the house" tells you nothing about coverage at distance.

Next-drive improvements

  1. Check the truck's external-antenna coax (operator suspects it), or roof-mount; or the 1 W XiaoGator when built.
  2. Top-of-tower node (operator's balena CM3 above the canopy — known Meshtastic reach to Stone/Sweat Mountain): a Loomwave balena image puts the coordinator over the trees AND opens the first INFRA↔INFRA backbone adjacency over already-measured paths.
  3. Client-side downlink logging persisted for post-drive upload (measure the asymmetry ring).
  4. Longer route with open-terrain radials for a usable exponent fit.
  5. BLE QoL (name in scan response, heartbeat) — drive UX.