You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
devourer's long-range single-stream video link already exploits two physical-layer
diversity axes:
frequency — single-adapter per-packet hopping (docs/frequency-hopping.md),
which doubles as a frequency-diversity interleaver for the outer FEC;
code — the fused cross-layer FEC stack (docs/fused-fec.md): sub-block
integrity salvage, an MDS outer code, soft-decision inner decode, and
per-temporal-layer unequal error protection.
The spatial axis is unexploited. Because a single-stream video link never
stacks spatial streams, the extra RF chains (1 idle on a 2T2R part, up to 3 on a
4T4R 8814) sit unused. Turning them into diversity/robustness rather than throughput is almost pure upside for this use case: it is USB-free (one
stream in, one stream out — no MIMO-multiplexing bandwidth hit), and it composes
multiplicatively with the frequency and code axes already in place.
The single hard constraint (from docs/frequency-hopping.md): there is one LO
per chip, so the chains share one centre frequency — they give spatial
diversity within a channel, orthogonal to (not a substitute for) the frequency
diversity that hopping provides.
Why this matters
RX MRC across a 4T4R chip's chains is a ~10·log₁₀(N) dB SNR win from a
single ground adapter — partially replacing wfb-ng's multi-adapter diversity
array, in-chip, at zero USB cost.
TX diversity (CSD / STBC) attacks the deep fades that push corruption
into the frame-wide regime where sub-block salvage fails — so spatial diversity
improves the precondition of the whole fused-FEC stack, not just its input.
Chain count is a new lever for the energy-minimizing adaptive link
(docs/adaptive-link.md), which today has no spatial knob: a convex
PA-power-saved vs chain-baseline-added tradeoff with an optimal N per range,
and a per-layer spatial UEP knob alongside modulation and FEC.
Approach
Research/design track — simulators, measurement harnesses, and conceptual docs
first (the way the frequency and code axes were developed), hardware validation
following. Each activity is a separate tracked issue.
Key finding from #130 — re-prioritisation (2026-07-02)
The on-hardware RX-MRC measurement changed the picture: static spatial-diversity
gain is small (MRC over the best single chain was 2–10% across both 8814 SKUs,
1M/6M, several positions), because the chains' instantaneous channels are
effectively correlated at a fixed position — even for the adapter whose rotation
N_eff was 3.8. Rotation-decorrelation does not translate to a static-link
benefit. The value of spatial diversity is in mobility / fading, where the
best chain constantly changes, plus antenna-selection insurance (~60× vs the worst
chain). This reshapes the roadmap:
Linchpin — mobile/fading combining measurement ✅ DONE, thesis CONFIRMED
(PR Mobile combining measurement: RX-path toggle + mobility analyzer (spatial-diversity #130) #142). Toggling a fixed chain vs all-4 while moving the RX: under motion
the best chain constantly shifts, so a fixed antenna hits deep-fade dropouts
that MRC eliminates (half the delivery variance) — static +2 % → moving +17 %
on the 4-internal 8814. That is the moving-drone FPV case, so the spatial
techniques (STBC, spatial×FEC, energy lever) are worth pursuing for the
mobile scenario. Bonus finding: physical antenna spacing decides static
benefit — wide external dipoles decorrelate even at rest (+17 % static), a
packed internal array only under motion; this can invert the rotation N_eff
ranking (spacing > count for real fading).
Frequency diversity is immune to the static-correlation problem — different
channels fade independently regardless of motion. So Spatial × frequency — space-frequency interleave for the outer FEC #134 (space×frequency)
rises in priority: lead with the frequency axis (hopping, already shipped),
which delivers real diversity even static.
Spatial × energy — active-chain count as an adaptive-link lever #135 (energy lever) gets a sharper thesis — since extra chains add little
at static, a ground station should run fewer chains to save baseline power
and light up chains only under fading/motion. Chain count adapts to fade
state, not just range.
Sequencing (updated)
#128, #129, #130 ✅ → mobile combining measurement ✅ (thesis confirmed,
PR #142) → #134 (frequency-led diversity) + #131 (selection) → #132 (STBC,
now justified for the mobile case) → #133, #135, #136 (composition) → #137.
Current-state anchors
CSD is chip-validated; STBC lives in the radiotap path but on-air STBC is
unresolved; 4-path RF is supported for the 8814.
The third diversity axis
devourer's long-range single-stream video link already exploits two physical-layer
diversity axes:
docs/frequency-hopping.md),which doubles as a frequency-diversity interleaver for the outer FEC;
docs/fused-fec.md): sub-blockintegrity salvage, an MDS outer code, soft-decision inner decode, and
per-temporal-layer unequal error protection.
The spatial axis is unexploited. Because a single-stream video link never
stacks spatial streams, the extra RF chains (1 idle on a 2T2R part, up to 3 on a
4T4R 8814) sit unused. Turning them into diversity/robustness rather than
throughput is almost pure upside for this use case: it is USB-free (one
stream in, one stream out — no MIMO-multiplexing bandwidth hit), and it composes
multiplicatively with the frequency and code axes already in place.
The single hard constraint (from
docs/frequency-hopping.md): there is one LOper chip, so the chains share one centre frequency — they give spatial
diversity within a channel, orthogonal to (not a substitute for) the frequency
diversity that hopping provides.
Why this matters
single ground adapter — partially replacing wfb-ng's multi-adapter diversity
array, in-chip, at zero USB cost.
into the frame-wide regime where sub-block salvage fails — so spatial diversity
improves the precondition of the whole fused-FEC stack, not just its input.
(
docs/adaptive-link.md), which today has no spatial knob: a convexPA-power-saved vs chain-baseline-added tradeoff with an optimal N per range,
and a per-layer spatial UEP knob alongside modulation and FEC.
Approach
Research/design track — simulators, measurement harnesses, and conceptual docs
first (the way the frequency and code axes were developed), hardware validation
following. Each activity is a separate tracked issue.
Roadmap
Foundations
Core diversity techniques
Cross-layer composition
Speculative
Key finding from #130 — re-prioritisation (2026-07-02)
The on-hardware RX-MRC measurement changed the picture: static spatial-diversity
gain is small (MRC over the best single chain was 2–10% across both 8814 SKUs,
1M/6M, several positions), because the chains' instantaneous channels are
effectively correlated at a fixed position — even for the adapter whose rotation
N_eff was 3.8. Rotation-decorrelation does not translate to a static-link
benefit. The value of spatial diversity is in mobility / fading, where the
best chain constantly changes, plus antenna-selection insurance (~60× vs the worst
chain). This reshapes the roadmap:
(PR Mobile combining measurement: RX-path toggle + mobility analyzer (spatial-diversity #130) #142). Toggling a fixed chain vs all-4 while moving the RX: under motion
the best chain constantly shifts, so a fixed antenna hits deep-fade dropouts
that MRC eliminates (half the delivery variance) — static +2 % → moving +17 %
on the 4-internal 8814. That is the moving-drone FPV case, so the spatial
techniques (STBC, spatial×FEC, energy lever) are worth pursuing for the
mobile scenario. Bonus finding: physical antenna spacing decides static
benefit — wide external dipoles decorrelate even at rest (+17 % static), a
packed internal array only under motion; this can invert the rotation N_eff
ranking (spacing > count for real fading).
channels fade independently regardless of motion. So Spatial × frequency — space-frequency interleave for the outer FEC #134 (space×frequency)
rises in priority: lead with the frequency axis (hopping, already shipped),
which delivers real diversity even static.
— selection of the best chain captured most of the benefit (MRC added only a
few %). Simpler than combining; worth the ANTSEL probe.
at static, a ground station should run fewer chains to save baseline power
and light up chains only under fading/motion. Chain count adapts to fade
state, not just range.
Sequencing (updated)
#128, #129, #130✅ → mobile combining measurement ✅ (thesis confirmed,PR #142) →
#134(frequency-led diversity) +#131(selection) →#132(STBC,now justified for the mobile case) →
#133, #135, #136(composition) →#137.Current-state anchors
unresolved; 4-path RF is supported for the 8814.