diff options
author | Martin Braun <martin.braun@ettus.com> | 2020-05-12 13:52:38 -0700 |
---|---|---|
committer | Aaron Rossetto <aaron.rossetto@ni.com> | 2020-05-19 13:30:36 -0500 |
commit | eb4bedf3133ce1ed275d03b36839ec61d75f2e60 (patch) | |
tree | a04aaa3eda51197e4a7b677203b7b384473aa7f3 /host/lib/usrp/dboard/twinrx/twinrx_experts.cpp | |
parent | 307e6c5eab88385ba8ad3ab683b99e9e4e62070e (diff) | |
download | uhd-eb4bedf3133ce1ed275d03b36839ec61d75f2e60.tar.gz uhd-eb4bedf3133ce1ed275d03b36839ec61d75f2e60.tar.bz2 uhd-eb4bedf3133ce1ed275d03b36839ec61d75f2e60.zip |
twinrx: Provide power cal ID
Note that the TwinRX has a different behaviour if two or one channel are
enabled. For that reason, TwinRX requires 8 different sets of
calibration data:
- For one vs. two channels
- For channel 0 and channel 1
- For RX1 and RX2
Since every combination of these settings is possible, that results in
2^3 == 8 combinations.
The choice of RX1 vs. RX2 is encoded in the calibration key. The choice
of one vs. two channels is also encoded in the calibration key, and is
derived using an expert node.
Channel 0 and 1 are assumed symmetric, thus, the encoding for those
happens in the calibration serial.
Diffstat (limited to 'host/lib/usrp/dboard/twinrx/twinrx_experts.cpp')
-rw-r--r-- | host/lib/usrp/dboard/twinrx/twinrx_experts.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/host/lib/usrp/dboard/twinrx/twinrx_experts.cpp b/host/lib/usrp/dboard/twinrx/twinrx_experts.cpp index 36bcc1863..d196d99e2 100644 --- a/host/lib/usrp/dboard/twinrx/twinrx_experts.cpp +++ b/host/lib/usrp/dboard/twinrx/twinrx_experts.cpp @@ -459,6 +459,15 @@ void twinrx_antenna_expert::resolve() throw uhd::value_error( "Cannot calibrate channel 1 and export the LO for channel 0."); } + + // Set ID for power cal + if (_enabled_ch0 and _enabled_ch1) { + _id_ch0 = "twinrx2"; + _id_ch1 = "twinrx2"; + } else { + _id_ch0 = "twinrx"; + _id_ch1 = "twinrx"; + } } /*!--------------------------------------------------------- |