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
Jan Käberich
64791e6d4e
option to restore default values of device configuration
Build / PC_Application_Ubuntu (push) Has been cancelled
Build / PC_Application_RPi5 (push) Has been cancelled
Build / PC_Application_Windows (push) Has been cancelled
Build / PC_Application_OSX (push) Has been cancelled
Build / PC_Application_OSX_13 (push) Has been cancelled
Build / Embedded_Firmware (push) Has been cancelled
HIL_Tests / Get_Repository (push) Has been cancelled
Unit_Tests / Tests (push) Has been cancelled
HIL_Tests / PC_Application_RPi5 (push) Has been cancelled
HIL_Tests / Embedded_Firmware (push) Has been cancelled
HIL_Tests / HIL (push) Has been cancelled
2025-11-15 19:22:15 +01:00
Jan Käberich
be123420db
Configuration for hardware version 0xD0
Build / PC_Application_Ubuntu (push) Has been cancelled
Build / PC_Application_RPi5 (push) Has been cancelled
Build / PC_Application_Windows (push) Has been cancelled
Build / PC_Application_OSX (push) Has been cancelled
Build / PC_Application_OSX_13 (push) Has been cancelled
Build / Embedded_Firmware (push) Has been cancelled
HIL_Tests / Get_Repository (push) Has been cancelled
Unit_Tests / Tests (push) Has been cancelled
HIL_Tests / PC_Application_RPi5 (push) Has been cancelled
HIL_Tests / Embedded_Firmware (push) Has been cancelled
HIL_Tests / HIL (push) Has been cancelled
2025-10-28 12:08:13 +01:00
Jan Käberich
273dfa8037
add support for hardware version 0xD0 device status
Build / PC_Application_Ubuntu (push) Has been cancelled
Build / PC_Application_RPi5 (push) Has been cancelled
Build / PC_Application_Windows (push) Has been cancelled
Build / PC_Application_OSX (push) Has been cancelled
Build / PC_Application_OSX_13 (push) Has been cancelled
Build / Embedded_Firmware (push) Has been cancelled
HIL_Tests / Get_Repository (push) Has been cancelled
Unit_Tests / Tests (push) Has been cancelled
HIL_Tests / PC_Application_RPi5 (push) Has been cancelled
HIL_Tests / Embedded_Firmware (push) Has been cancelled
HIL_Tests / HIL (push) Has been cancelled
2025-10-24 12:55:09 +02:00
Jan Käberich
6e2079fcfb
menu entry to run internal alignment if supported by hardware version
Build / PC_Application_Ubuntu (push) Waiting to run
Build / PC_Application_RPi5 (push) Waiting to run
Build / PC_Application_Windows (push) Waiting to run
Build / PC_Application_OSX (push) Waiting to run
Build / PC_Application_OSX_13 (push) Waiting to run
Build / Embedded_Firmware (push) Waiting to run
HIL_Tests / Get_Repository (push) Waiting to run
HIL_Tests / PC_Application_RPi5 (push) Blocked by required conditions
HIL_Tests / Embedded_Firmware (push) Blocked by required conditions
HIL_Tests / HIL (push) Blocked by required conditions
Unit_Tests / Tests (push) Waiting to run
2025-10-23 12:57:49 +02:00
Jan Käberich
ed699cfd6a
hide device specific actions based on the hardware version
Build / PC_Application_Ubuntu (push) Waiting to run
Build / PC_Application_RPi5 (push) Waiting to run
Build / PC_Application_Windows (push) Waiting to run
Build / PC_Application_OSX (push) Waiting to run
Build / PC_Application_OSX_13 (push) Waiting to run
Build / Embedded_Firmware (push) Waiting to run
HIL_Tests / Get_Repository (push) Waiting to run
HIL_Tests / PC_Application_RPi5 (push) Blocked by required conditions
HIL_Tests / Embedded_Firmware (push) Blocked by required conditions
HIL_Tests / HIL (push) Blocked by required conditions
Unit_Tests / Tests (push) Waiting to run
2025-10-23 10:16:33 +02:00
Jan Käberich
f51c6a0bce
Manual control dialog for prototype 0xD0
Build / PC_Application_Ubuntu (push) Has been cancelled
Build / PC_Application_RPi5 (push) Has been cancelled
Build / PC_Application_Windows (push) Has been cancelled
Build / PC_Application_OSX (push) Has been cancelled
Build / PC_Application_OSX_13 (push) Has been cancelled
Build / Embedded_Firmware (push) Has been cancelled
HIL_Tests / Get_Repository (push) Has been cancelled
Unit_Tests / Tests (push) Has been cancelled
HIL_Tests / PC_Application_RPi5 (push) Has been cancelled
HIL_Tests / Embedded_Firmware (push) Has been cancelled
HIL_Tests / HIL (push) Has been cancelled
2025-10-15 10:23:08 +02:00
Jan Käberich
5947584e63
manual control dialog for experimental hardware version 0xE0
Build / PC_Application_Ubuntu (push) Has been cancelled
Build / PC_Application_RPi5 (push) Has been cancelled
Build / PC_Application_Windows (push) Has been cancelled
Build / PC_Application_OSX (push) Has been cancelled
Build / PC_Application_OSX_13 (push) Has been cancelled
Build / Embedded_Firmware (push) Has been cancelled
HIL_Tests / Get_Repository (push) Has been cancelled
Unit_Tests / Tests (push) Has been cancelled
HIL_Tests / PC_Application_RPi5 (push) Has been cancelled
HIL_Tests / Embedded_Firmware (push) Has been cancelled
HIL_Tests / HIL (push) Has been cancelled
2025-08-31 18:49:38 +02:00
Jan Käberich
a4faeb28b0
Working dwell time feature
...
- Bugfixes:
- improve SPI timing in FPGA
- fix markers and reduce CPU load when using markers with fast traces
- New features:
- dwell time configurable in acquisition toolbar
- PLL settling delay in device configuration
- device configuration persistent across power cycles
2025-01-03 14:36:10 +01:00
Jan Käberich
24314e2361
WIP: rework 2.LO + add dwell time
2025-01-02 19:16:53 +01:00
Jan Käberich
11612e44d5
added dialogs for hardware version 0xFE
2023-11-07 14:26:31 +01:00
Jan Käberich
99c6d77ad8
Device protocol update: support device with up to 4 ports
2023-02-23 23:04:50 +01:00
Jan Käberich
a0c45d3c56
VFF device config update
2023-02-23 15:14:49 +01:00
Jan Käberich
9b4865dceb
Renaming packet types, implementing different packet contents per hardware version
2023-02-20 13:08:31 +01:00
Andre Dunford
08fa3fa0a0
implement sweep standby configuration
2022-12-16 23:41:59 -08:00
Andre Dunford
9b38a1fc3d
implement optional device status updates
2022-12-05 22:29:33 -08:00
Andre Dunford
5bf824220e
replace USB protocol literals with named constants
2022-11-29 00:44:27 -08:00
Jan Käberich
f3eb560d61
USB logging
2022-10-31 22:06:23 +01:00
Jan Käberich
658e8252b1
improve USB protocol decoding
2022-10-28 00:14:24 +02:00
Jan Käberich
c05d248f83
interrupt safe USB send function
2022-08-21 22:20:59 +02:00
Jan Käberich
73e26a25c4
WIP: synchronization
2022-08-08 18:08:40 +02:00
Jan Käberich
58918f81c1
WIP: device synchronization
2022-08-07 03:01:22 +02:00
Jan Käberich
047f6ce981
more flexible USB protocol for VNA settings/measurements
2022-08-06 16:22:12 +02:00
Jan Käberich
74e6a439af
Compound device edit dialog
2022-08-05 18:29:31 +02:00
Jan Käberich
8492b38936
Zerospan mode for spectrum analyzer mode
2022-06-26 22:53:12 +02:00
Jan Käberich
edec4d9ec5
handle zero span data throughout the application
2022-06-22 23:50:21 +02:00
Jan Käberich
6393ae7fc3
WIP: preparation for zero span mode
2022-06-20 01:02:09 +02:00
Jan Käberich
c6ef075f4f
split device info and status protocol messages
2022-04-03 20:26:30 +02:00
Jan Käberich
5d8efd4336
user selectable IF frequencies
2022-01-15 16:11:33 +01:00
Jan Käberich
6fd2598ae8
Log option for frequency sweep
2022-01-05 16:01:51 +01:00
Jan Käberich
67489084e9
basic working power sweep
2021-07-09 22:26:44 +02:00
Jan Käberich
7bc18881a5
Allow different source PLL power per sweep point, add power range to sweep
2021-07-09 22:25:54 +02:00
Jan Käberich
75d79ccf31
Merge branch 'master' of github.com:jankae/VNA2
2021-05-01 18:35:04 +02:00
Jan Käberich
938f444c73
TCXO offset calibration
2021-05-01 18:34:53 +02:00
Jan Käberich
29b24e1ab6
Fix settings for release build
2021-04-27 20:31:56 +02:00
Jan Käberich
20b0b336bb
Using attribute packed for protocol structs
2021-02-17 18:37:50 +01:00
Jan Käberich
e3f072b307
display error flags in statusbar (overload/unlock/unlevel)
2021-02-11 22:49:47 +01:00
Jan Käberich
49e0b901fd
Optional harmonic mixing
2020-12-18 15:03:01 +01:00
Jan Käberich
00f0de43f2
Timeout handling in FPGA communication (better recovery from missing reference)
2020-12-15 18:03:29 +01:00
Jan Käberich
6d445631f0
Removed warnings
2020-11-19 17:10:47 +01:00
Jan Käberich
5b771e2a86
Tracking generator with offset + incomplete automatic source/receiver calibration
2020-11-18 19:19:29 +01:00
Jan Käberich
026fffd588
Working source and receiver calibration
2020-11-17 23:03:13 +01:00
Jan Käberich
875f3b0170
Partial source calibration dialog
2020-11-16 20:05:29 +01:00
Jan Käberich
a2389fca13
Protocol adjustment + exposing settings for DFT
2020-11-08 14:38:31 +01:00
Jan Käberich
6bc6b1d202
Speed improvements
2020-10-03 21:56:09 +02:00
Jan Käberich
926392e5b9
Bugfixes and speed improvements
2020-09-26 23:34:31 +02:00
Jan Käberich
57b4ebfb26
mitigation for peaks caused by limited fractional divider in PLLs
2020-09-20 10:13:06 +02:00
Jan Käberich
38e73365df
proof-of-concept spectrum analyzer mode
2020-09-17 15:51:20 +02:00
Jan Käberich
00244022c9
Refactoring, better code encapsulation for different operating modes
2020-09-17 09:53:52 +02:00
Jan Käberich
d9d00b8c71
Windowing option added to sampling
2020-09-16 16:13:06 +02:00