LibreVNA/Software/PC_Application/LibreVNA-GUI/VNA
Roger Henderson 0b571688a9 add Correlated Double Sampling (CDS) support
Implements CDS to reduce noise by taking multiple measurements at
different source PLL phase offsets and combining with cosine weighting.

Firmware changes (VNA.cpp, Protocol.hpp):
- Add cdsPhases field to SweepSettings (0=disabled, 2-7=phase count)
- Configure N internal sweep points per user point with phase offsets
- Accumulate weighted samples: result = Σ(sample[k] × cos(2π×k/N))
- Per-stage accumulators for multi-stage measurements

PC application changes:
- Add "CDS" checkbox to VNA acquisition toolbar
- When enabled, sets cdsPhases=2 for 180° differential measurement
- Tooltip explains the feature

With 180° CDS (2 samples):
- Sample at 0°: weight = cos(0°) = 1
- Sample at 180°: weight = cos(180°) = -1
- Combined result = Sample₀ - Sample₁₈₀

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 23:47:02 +13:00
..
Deembedding Document and fix deembedding SCPI API 2025-12-02 13:43:21 +01:00
s2pImportOptions.ui Move project, add simple test 2022-10-01 17:10:44 +02:00
tracewidgetvna.cpp Preselect most likely matching traces in touchstone export dialog 2025-04-23 15:40:04 +02:00
tracewidgetvna.h TraceWidget: support dropping files for importing measurements 2024-12-02 18:11:20 +01:00
vna.cpp add Correlated Double Sampling (CDS) support 2026-01-31 23:47:02 +13:00
vna.h add Correlated Double Sampling (CDS) support 2026-01-31 23:47:02 +13:00