1. Executive Summary
- Convoy mode is very achievable with cheap, proven parts. The enabling stack is: identical software on every seastead + RTK relative positioning + a 5 GHz directional radio grid + a shared, replicated track database. Total electronics for convoy participation is roughly $2,800–4,700 per seastead (excluding Starlink).
- Recommended mesh: your instinct is right. Use 4× 5 GHz 802.11ac point-to-point directional links (to N/S/E/W grid neighbors) + 1 omnidirectional radio for join/leave/fallback + LoRa for emergency broadcast + standard VHF/AIS. Mesh hardware ≈ $600–1,200 per seastead. Expect 150–300 Mbps per link at convoy spacing, ~2–5 ms latency per hop, and multi-kilometer capability if spacing ever widens.
- Routing/software: fixed P2P links + the Babel routing protocol (fast failover), MQTT pub/sub for state and tracks, PTP time sync disciplined by GNSS, WireGuard overlay for privacy, signed staged software updates.
- Wave shadow: the effect you hypothesize is physically real but modest and strongly period-dependent. Best estimate: each seastead removes on the order of 4–12% of incident wave energy in 5–7 s wind seas (more in short chop, almost nothing in swell). A 10-row convoy could see 20–50% wave-energy reduction in its lee in chop, and back rows ride ~15–25% calmer than the front row. Swell passes through essentially unchanged. Treat it as a bonus — and as a free science experiment (§7.7).
- Shared lookout: layered AIS + cameras/AI + human watch + optional radar, fused into a replicated track database. Parallax ranging across 100 m–1 km baselines gives useful range estimates to ~10 km (±175 m at 10 km with a 1 km baseline). AIS covers cooperative ships precisely.
- Biggest risks: (a) common-mode software failure because all seasteads run the same code — mitigate with staged rollouts and a minimal "safe mode"; (b) GNSS spoofing/jamming — mitigate with cross-checks; (c) COLREGs — each seastead remains an independent vessel under way, so the convoy must act as a coordinated group while every seastead keeps autonomous self-preservation authority.
Quick answers to your three direct questions
| Question | Short answer |
|---|---|
| What mesh hardware/software? | 4× 5 GHz 802.11ac directional P2P radios (MikroTik LHG 5 or Ubiquiti LiteBeam 5AC class, ~$60–100 each) + 1 omni + LoRa. Babel routing, MQTT messaging, PTP time. ~$600–1,200/seastead. Details in §6. |
| 5 GHz WiFi cost / range / data rate? | $60–200 per radio end. At 100 m grid spacing: 200–300 Mbps real throughput with enormous margin. 100–250 Mbps out to ~2–5 km; 30–100 Mbps to 10–25 km over water with 23–27 dBi antennas. Latency 2–5 ms/hop. |
| Does the convoy calm the water? | Yes, modestly, for short-period waves. Roughly (1−f)R energy after R rows with per-row removal f ≈ 4–12% in 5–7 s seas. Lee of a 10-row convoy: ~20–50% energy reduction in chop; <10% in swell. Details and caveats in §7. |
2. Convoy Mode — Core Concept
2.1 Formation geometry
- Grid: slots on a rectangular lattice, default spacing 100 m fore-aft × 100 m abeam (configurable 50–200 m). At 100 m: ample maneuvering room, minimal thruster-wash annoyance, trivial radio links, and a useful parallax baseline.
- Body-fixed grid: the lattice is defined in the convoy's body frame (relative to convoy heading). This has a wonderful consequence: when the convoy turns, the entire formation rotates rigidly, so antennas bolted to each seastead keep pointing at the same neighbors. No aiming mechanisms needed.
- Optional stagger: offset alternate rows by half a spacing. This reduces thruster-wash alignment down the columns, breaks up any lattice resonance in the wave scattering (§7.6), and slightly improves lateral refill of the wave shadow.
2.2 The virtual leader (a role, not a dependency)
Do not make one physical seastead the single point of failure. Instead define a virtual convoy origin: a point that moves along the planned track at convoy speed and heading. Every seastead computes its target as:
The origin state (position, speed, heading, turn rate, valid-at timestamp) is broadcast at 1–10 Hz and replicated on every seastead, which dead-reckons it between updates. Any seastead can compute the whole formation. The "coordinator" is a rotating role that proposes speed/heading changes and slot assignments; the state itself is ownerless.
2.3 Membership lifecycle
Each seastead is in exactly one state: TRANSIT JOINING STATION LEAVING DISABLED (NUC) ASSIST
Joining procedure
- Announce on mesh (or Starlink if far away). Coordinator (or automatic algorithm) assigns a slot — typically the free slot nearest the approach point — and sends: convoy state, comms config (channels, keys), protocol version, watch roster.
- Approach from outside the formation toward the meeting point = slot position + 2 grid spacings out, matching convoy speed and heading. No crossing through the formation.
- At the meeting point: establish radio link, start receiving RTCM corrections from the convoy RTK base, achieve RTK fixed solution, confirm time sync (PTP), pull the track database and convoy state.
- Handshake: "ready for convoy mode" ↔ "approved". Within 0.5 grid spacing, the controller blends from transit autopilot to station-keeping over ~30 s.
- Broadcast "convoy mode active." Formation state and watch roster updated. Neighbors may briefly widen tolerance during the blend.
Leaving procedure
- Announce intent ≥5 min ahead; the slot is reserved until the seastead is clear.
- Controller ramps out of station-keeping; when 2+ spacings clear, broadcast "clear of convoy"; slot freed.
- Formation either closes the gap or holds it (configurable; holding is safer at night).
2.4 Your two-seastead walkway is the special case
The walkway-connected pair you already planned is just convoy mode with N=2 and spacing = walkway length. Build the control logic once, generalize to N. The "minimize walkway motion" mode becomes "minimize relative motion of adjacent slots," with the same priority ladder: collision avoidance > walkway comfort > slot accuracy.
3. Positioning & Time — the RTK Architecture
You said "moving base RTK." Here is the cleanest way to architect it for a convoy:
- Every seastead carries 3× u-blox ZED-F9P-class receivers (~$200–300 each with multiband antenna):
- Two receivers on a long baseline (mount antennas at two corners of the roof triangle, 10–13 m apart) run in moving-base mode → cm-level positions plus heading to ~0.05–0.2°. This heading is gold for station keeping and for camera bearing calibration.
- One receiver is base-capable: when its seastead is the designated RTK base, it runs in base mode and broadcasts RTCM corrections to the convoy over the mesh.
- Designated RTK base broadcasts RTCM (MSM4/MSM7) at 1–4 Hz — only ~1–2 KB/s, trivial for the mesh. All rovers get 1–2 cm relative positions (RTK error growth with distance from base is ~1 cm per 10 km — irrelevant at convoy scale).
- Automatic base handover: if corrections go stale >5 s, the next seastead in a pre-agreed order promotes itself to base and announces. Every seastead can be the base.
- Time sync: GNSS PPS pulse → PTP (linuxptp) grandmaster per seastead, distributed over the mesh. Sub-millisecond convoy-wide sync, which is far better than needed for parallax (at 10 km, a 5 m/s target moves 5 mm in 1 ms).
- Integrity monitoring: continuously cross-check RTK against IMU dead-reckoning, water speed, and thruster response; and cross-check all seasteads' positions for mutual geometric consistency. On anomaly (jamming/spoofing), degrade to inertial + convoy-relative logic, widen spacing or stop. RTK is the accuracy layer, not a safety-critical single point.
4. Station Keeping & Convoy Maneuvers
4.1 Controller structure
- Cascade loops: position (P) → velocity (PI) → force allocation, plus a yaw damper.
- Feedforward is essential: during convoy speed changes and turns, feed each seastead the predicted acceleration of its slot (it's computable exactly from convoy kinematics) so controllers track with near-zero lag instead of chasing.
- Allocation across your 6 fixed RIM thrusters: they directly produce surge + yaw. Sway must be synthesized by yaw-surge coupling (brief crabbing sequences) — workable at convoy speeds but it adds motion and wear.
4.2 Tolerances and rate limits (starting values, tune at sea)
| Parameter | Value | Note |
|---|---|---|
| Nominal slot tolerance | ±3–5 m (2σ) | RTK makes this easy |
| Alert threshold | ±10 m | logged, neighbor notified |
| Intervention threshold | ±15 m | neighbors yield space, controller boosts authority |
| Tolerance during turns | 1.5× nominal | transient |
| Convoy acceleration | ≤0.1 kn per second | announced, feedforward distributed |
| Convoy turn rate | ≤10°/min at ≤5 kn | turn radius ≥1 km; slot acceleration = v²/R ≈ 0.007 m/s² — negligible load on thrusters |
4.3 Emergency stop
Any seastead (or the coordinator) can broadcast CONVOY_STOP. All units apply max reverse thrust; the formation drifts apart on its existing headings (safe — no cross-track convergence), then re-forms on the leader's command. Because spacing is ~100 m and stopping distances are tens of meters, this is robust.
4.4 Thruster wash courtesy
Six thrusters per seastead means the row astern lives in your wash. Mitigations: staggered grid (§2.1), slight thrust vector offset in station keeping (bias wash a few degrees off the astern neighbor), and spacing ≥100 m fore-aft.
5. Shared Lookout, Watch System & Parallax Tracking
5.1 The layered sensor stack (per convoy)
| Layer | Coverage | Strength | Weakness |
|---|---|---|---|
| AIS (Class B transponder per seastead) | Cooperative ships, ~10–30 nm | Identity, course, speed — precise | Blind to non-cooperative targets |
| Cameras + onboard AI (every seastead) | Horizon ~10 km to waterline (camera at ~5 m ASL); ~25 km to a large ship's superstructure | Cheap, redundant, detects anything, provides visual verification | Range/heading only; needs light or IR; sea clutter false alarms |
| Parallax fusion (convoy-wide) | Any camera detection | Turns many bearings into ranges (§5.3) | Accuracy degrades with distance² |
| Radar (1 per 4–8 seasteads to start) | ~10–20 nm, all weather | Works at night/in rain; Doppler ground-truth | Cost ($2–4k); one more thing to maintain |
| Human watch (confirmed, §5.2) | Everything, judgment | Catches what AI misses; final authority | Fatigue — hence the confirmation protocol |
Suggested radar: Simrad Halo20+ (~$2,200) or Furuno DRS4D-NXT (~$3,500), solid-state with Doppler. Its target list is just another feed into the shared track database — every seastead benefits from the one radar.
5.2 Watch system with confirmation
- Shifts ≤4 h; minimum 2 confirmed watchstanders convoy-wide at night / low visibility.
- Confirmation: explicit tap on the watch app (or a physical button wired to the convoy computer) every 20 min.
- Escalation ladder: missed check-in → app nag + local audible at T+0 → alert the two neighboring seasteads at T+5 min → LoRa broadcast + all-seastead alarm at T+10 min, and treat the watchstander as possibly incapacitated (someone goes and checks).
- Structured handoff between shifts: convoy state, weather, active tracks, nearby traffic, drills due. All logged.
- AI never sleeps: detections are flagged to the on-watch humans for verification. Verified tracks get priority distribution.
5.3 Multi-seastead parallax ranging
This is where the convoy's precisely known geometry pays off. Each seastead's AI extracts bearing to a detection. Because every camera's position and orientation is known to centimeters/degrees (RTK + dual-antenna heading + camera extrinsic calibration), simultaneous bearings from two or more seasteads triangulate the target:
Expected range error (σθ = 0.1°, a realistic calibrated camera)
| Baseline B | d = 1 km | d = 2 km | d = 5 km | d = 10 km | d = 20 km |
|---|---|---|---|---|---|
| 200 m (adjacent seasteads) | ±9 m | ±35 m | ±220 m | ±0.9 km | ±3.5 km |
| 500 m | ±4 m | ±14 m | ±88 m | ±350 m | ±1.4 km |
| 1 km (convoy-wide) | ±2 m | ±7 m | ±44 m | ±175 m | ±700 m |
- Interpretation: at 5–10 km you won't get survey-grade range, but you easily get "that's a ship, it's 7 km out, bearing 040°, closing" — which is exactly what early warning needs. AIS then attaches identity to cooperative targets.
- Track fusion: each track gets a Kalman filter; bearings from any seastead update it; parallax fixes range; AIS merges by MMSI; radar adds all-weather positions.
- Bandwidth discipline: seasteads share tracks (hundreds of bytes), never raw video. Video clips are pulled on demand over the mesh for human verification.
5.4 Shared track database
A replicated, conflict-free (CRDT) database on every seastead. Any seastead can die and the picture survives. Fields:
track_id · sources[] · position (lat/lon + convoy-relative) · velocity · class (ship/wake/debris/buoy/unknown) · confidence · range_method (AIS/parallax/radar/human) · image_refs[] · CPA_to_convoy · TCPA · status (unverified/verified/alert)
5.5 Alerting thresholds (starting values)
| Level | Trigger | Response |
|---|---|---|
| WATCH | CPA < 1.0 nm and TCPA < 20 min | Logged; on-watch humans acknowledge |
| ALERT | CPA < 0.5 nm and TCPA < 12 min | All seasteads alarmed; coordinator plans a group maneuver; both seasteads of any connected walkway pair stand by to separate |
| MOB / SOS | MOB button or man-overboard detection | Position marked; dinghy launched from the shielded stern; nearest seastead maneuvers; convoy stops or circles per drill plan |
6. Communications — Hardware, Software, Costs
6.1 What the network must carry
| Data flow | Rate | Latency | Criticality |
|---|---|---|---|
| Convoy state + slot targets (replicated) | <10 kbps | <100 ms | Safety-critical |
| Per-seastead position/heading @ 5–10 Hz | ~2 kbps each | <100 ms | Safety-critical |
| Alerts / SOS / CONVOY_STOP | <1 kbps | <100 ms | Safety-critical |
| RTCM corrections (base → all) | 1–2 KB/s | <500 ms | High |
| Track updates (AI + human + radar) | 1–10 kbps | <1 s | High |
| Watch heartbeats / confirmations | <1 kbps | <1 s | High |
| Video clips on demand | 2–8 Mbps/stream | seconds | Low |
| Crew internet | via Starlink per seastead | — | Comfort |
Total safety-critical load is tens of kbps — the network is really about reliability, latency, and headroom, not raw capacity. But headroom is cheap, so buy it.
6.2 Recommended architecture: layered
6.3 Primary fabric: 5 GHz 802.11ac point-to-point directional links
Your proposal (4 directional antennas per seastead) is exactly right, with two refinements: (a) run them as fixed point-to-point associations (one radio per link, pre-configured AP/station pairs) rather than a roaming mesh — deterministic, low-latency, no contention with strangers; (b) add one omnidirectional radio for joining seasteads and as a hot fallback. Because the grid is body-fixed, the same four physically-mounted antennas serve forever (§2.1).
At 100 m spacing, even a single omni could carry the whole load — the directional grid buys frequency reuse across the convoy (many simultaneous links), interference immunity, and headroom for video and wider spacing later.
Hardware options (per link end)
| Radio | Gain | Price | Notes |
|---|---|---|---|
| MikroTik LHG 5 | 24.5 dBi | ~$60 | Best value; integrated 10° beam |
| Ubiquiti LiteBeam 5AC Gen2 | 23 dBi | ~$99 | Polished ecosystem (airMAX) |
| MikroTik LHG 5 XL | 27 dBi | ~$99 | More margin for wide spacing |
| Ubiquiti PowerBeam 5AC Gen2 | 25 dBi | ~$199 | Rugged, bigger radome |
| Omni node: MikroTik mANTBox 15s / hAP ac² + omni | 15 dBi class | ~$80–150 | Join/fallback channel |
WiFi 6 (802.11ax) adds OFDMA/MU-MIMO, which matters for many-client access points — not for fixed P2P links. 802.11ac is the cost-sweet spot today; design mounts so radios are swappable when ax CPE prices fall. Optional luxury: 60 GHz dishes (MikroTik Wireless Wire Dish, ~$249/pair) give 1+ Gbps to adjacent seasteads — unnecessary at 100 m, but nice for video-heavy ops.
Realistic performance over water (directional 23–27 dBi both ends, ~4–6 m above waterline)
| Distance | Channel width | Real TCP throughput | Latency | Notes |
|---|---|---|---|---|
| 100 m (default grid) | 40 MHz | 200–300 Mbps | 2–5 ms | Turn TX power down; huge margin |
| 500 m | 40 MHz | 200–300 Mbps | 2–5 ms | — |
| 2 km | 40 MHz | 150–250 Mbps | 3–6 ms | — |
| 10 km | 20–40 MHz | 80–200 Mbps | 5–10 ms | Clear Fresnel zone needed |
| 25 km | 20 MHz | 30–100 Mbps | 10 ms | Best case; calm sea, high mounts |
Fresnel clearance at 100 m / 5.8 GHz needs only ~0.6 m radius at mid-path — trivially met with rooftop mounts. Calm-water multipath fades are handled by the narrow antenna beams and height.
Channel plan (start)
| Link set | Channel | Width | Notes |
|---|---|---|---|
| E–W P2P links | 149 (5745 MHz) | 40 MHz | U-NII-3 band: no DFS radar-dropouts |
| N–S P2P links | 157 (5785 MHz) | 40 MHz | Directional isolation makes reuse clean |
| Omni / join / fallback | 161 (5805 MHz) | 20 MHz | Low power |
| Diagonals (optional 5th–8th links) | reuse 149/157 | 40 MHz | Cross-polarize for extra isolation |
Marine hardening (the real enemy is salt, not physics)
- Radios are IP54–55 — fine, but connectors are the failure point: dielectric grease on every connector, adhesive-lined heat-shrink boots, drip loops, UV-rated cable ties, outdoor-shielded Cat6.
- Ethernet surge arrestors on every outdoor run; bond antenna masts and mounts to hull ground.
- Quarterly inspection; carry 2 complete spare radios per convoy (they're cheap).
- Mount on short masts at the triangle corners/mid-walls, 2–3 m above the roof, with clear horizon.
6.4 Software stack
| Layer | Recommendation | Alternatives |
|---|---|---|
| Link layer | Fixed 802.11 P2P associations, WPA2/WPA3 PSK per convoy (rotated per voyage) | 802.11s mesh (less predictable) |
| Routing | Babel — fast reconvergence, dead-simple, treats each P2P link as one interface | BATMAN-adv (L2), OLSRv2, static routes + failover |
| Overlay/privacy | WireGuard full mesh ≤ ~25 nodes (hub-and-spoke beyond) | Tailscale/Headscale |
| Messaging | MQTT 5 (Mosquitto, QoS 1, retained state) — topics: convoy/state, convoy/tracks, watch/heartbeat, alert/# | Zenoh, DDS |
| Time | PTP (linuxptp), grandmaster disciplined by GNSS PPS | chrony/NTP (weaker) |
| Track DB | Replicated CRDT (e.g., last-writer-wins with sequence numbers) on every seastead | Central broker + mirror |
| AI detection | YOLO-class detector on Jetson Orin Nano (~$250) or N100 + Coral TPU; 4× IP67 cameras | — |
| Updates | Signed images, canary rollout (10% for 48 h), automatic rollback, "protocol version" handshake before convoy join | — |
6.5 Backup and emergency layers
- LoRa 915 MHz (868 MHz in EU regions): $30–80 per node, 5–15 km over water, 0.3–20 kbps. Carries only: SOS, position beacons, watch-escalation, "mesh down" flags. Works when everything else is dead. License-free ISM.
- 2.4 GHz omni (optional, ~$60–70): rain/fog-resilient low-bandwidth fallback for control data; also useful in harbors.
- VHF fixed set with DSC per seastead (~$130–250) + 2 handhelds: Ch 16 watch is the human/legal last resort and how you talk to other traffic.
- AIS Class B transponder per seastead (~$400–900): each seastead is a vessel; each broadcasts. Targets are shared convoy-wide over the mesh, so one good receiver benefits everyone.
- Starlink per seastead: internet, weather routing, telemedicine, and a bridge between convoy fragments if the group ever splits.
6.6 Full per-seastead electronics BOM (convoy participation)
| Item | Example | Qty | Est. cost |
|---|---|---|---|
| 5 GHz P2P directional radios | MikroTik LHG 5 / LiteBeam 5AC | 4 | $240–400 |
| 5 GHz omni node | mANTBox 15s or hAP ac² + omni | 1 | $80–150 |
| Router / PoE | MikroTik hEX + PoE injectors | 1 | $60–200 |
| LoRa emergency node | RAK4631 + antenna | 1 | $40–80 |
| Mounts, outdoor Cat6, surge arrestors, enclosures | — | lot | $150–300 |
| GNSS: 3× ZED-F9P boards + multiband antennas | ArduSimple simpleRTK2B class | 3 | $600–900 |
| Convoy computer (fanless x86), hot spare | N100 mini PC ×2 | 2 | $300–500 |
| Cameras + AI box | 4× IP67 cams + Orin Nano | 1 | $600–1,200 |
| VHF fixed w/ DSC | Standard Horizon GX1400 | 1 | $130–250 |
| AIS Class B transponder | em-trak / Vesper Cortex | 1 | $400–900 |
| Handheld VHF | — | 2 | $150–300 |
| Total | ≈ $2,800–4,700 | ||
| (Starlink, separate) | hardware + service | 1 | $300–600 + monthly |
Optional per convoy (not per seastead): solid-state radar $2–4k shared over the mesh; 60 GHz dishes $249/pair for 1 Gbps adjacent links.
7. Wave-Shadow Analysis — Does the Convoy Calm the Water?
Short answer: yes, the effect is real — but it's a modest, period-dependent bonus, not a design feature. Here's the honest physics.
7.1 The mechanism
A seastead interacts with an incoming wave in three ways: reflection (energy sent back), scattering (energy redirected to other directions), and dissipation (energy absorbed by heave-plate damping, eddy-making, and hull damping). Whatever isn't reflected, scattered away, or dissipated passes through. Your intuition — legs "bouncing energy in different directions" — is the scattering term; the heave plates add the dissipation term. Both remove energy from the forward-transmitted field.
How strongly a body disturbs a wave depends on body size vs. wavelength. Take the characteristic size a ≈ 6.7 m (half the 44 ft width) and compute ka = 2πa/λ:
| Period T | Wavelength λ = 1.56 T² | ka | Interaction |
|---|---|---|---|
| 3–4 s (wind chop) | 14–25 m | 1.7–3.0 | Strong — body comparable to the wave |
| 5–7 s (wind sea) | 39–76 m | 0.6–1.1 | Moderate |
| 8–12 s | 100–225 m | 0.19–0.42 | Weak |
| >12 s (swell) | >225 m | <0.19 | Nearly transparent |
7.2 A useful coincidence: your heave resonance sits right in the chop
From your own numbers — 27,500 lb displacement, waterplane stiffness such that 1 ft of draft = 1/7 of buoyancy (≈5.7 m² total waterplane) — the heave natural period is:
The hull responds — and its damping dissipates energy — most strongly in the 2.5–5 s band, exactly the short chop that makes life unpleasant. And when the convoy steams into head seas, the encounter period shortens further (6 s waves met at 5 kn are encountered at ~4.7 s), pushing even more energy into the strongly-attenuated band. The convoy attenuates best precisely where attenuation is most valuable — and does almost nothing to long swell, which is what your soft-ride leg design is for anyway. The two comfort mechanisms complement each other.
7.3 The energy math
Deep-water wave energy flux per meter of crest: P ≈ 0.49 · H² · T kW/m (H = significant height in m). A 1.5 m, 6 s sea carries ~6.6 kW past every meter of crest — about 90–130 kW through each seastead's ~15–20 m width.
Define f(T) = fraction of incident wave energy that one seastead removes from the forward-transmitted field (net of forward-scattered refill). Honest estimate ranges, pending measurement:
| Component | T | f per seastead (est.) |
|---|---|---|
| Wind chop | 3–4 s | 10–30% |
| Chop / wind sea | 5–7 s | 4–12% |
| Wind sea / early swell | 8–12 s | 1–5% |
| Swell | >12 s | <2% |
These carry ±3× uncertainty — the structure is an open frame with three thin foils, so the extinction cross-section could be well below the geometric width. §7.7 explains how the convoy measures f for free.
7.4 Convoy shadow
For waves traveling through R rows of seasteads (rows measured along the wave's path):
Example convoy: 10 × 10 seasteads at 100 m spacing (1 km square), head seas:
| Component | f | Energy reaching lee (after 10 rows) | Hs in lee | Calmer by |
|---|---|---|---|---|
| 4 s chop | 10–25% | 6–35% | 24–59% of original | 40–75% |
| 6 s sea | 4–12% | 28–66% | 53–81% | 19–47% |
| 9 s | 1–5% | 60–90% | 77–95% | 5–23% |
| 14 s swell | <2% | >82% | >90% | <10% |