From 65918de780fbf9a198424f9062494ac33ae03e0d Mon Sep 17 00:00:00 2001 From: Jeff Chambliss Date: Wed, 10 Apr 2024 14:25:47 -0400 Subject: [PATCH] test_triton_cal.py completed and functional upon test run. In test_triton.py updated power supply's VISA address and current limit --- assets/style.css | 237 +--- here.html | 506 ++++++++ test.html | 2515 +++++++++++++++++++++++++++++++++++++++ test/test_triton.py | 46 +- test/test_triton_cal.py | 205 +++- 5 files changed, 3259 insertions(+), 250 deletions(-) create mode 100644 here.html create mode 100644 test.html diff --git a/assets/style.css b/assets/style.css index 561524c69..3edac88ee 100644 --- a/assets/style.css +++ b/assets/style.css @@ -33,16 +33,11 @@ table { ******************************/ #environment td { padding: 5px; - border: 1px solid #e6e6e6; - vertical-align: top; + border: 1px solid #E6E6E6; } #environment tr:nth-child(odd) { background-color: #f6f6f6; } -#environment ul { - margin: 0; - padding: 0 20px; -} /****************************** * TEST RESULT COLORS @@ -70,10 +65,6 @@ span.xpassed, color: red; } -.col-links__extra { - margin-right: 3px; -} - /****************************** * RESULTS TABLE * @@ -94,7 +85,7 @@ span.xpassed, #results-table th, #results-table td { padding: 5px; - border: 1px solid #e6e6e6; + border: 1px solid #E6E6E6; text-align: left; } #results-table th { @@ -104,133 +95,63 @@ span.xpassed, /*------------------ * 2. Extra *------------------*/ -.logwrapper { - max-height: 230px; - overflow-y: scroll; +.log { background-color: #e6e6e6; -} -.logwrapper.expanded { - max-height: none; -} -.logwrapper.expanded .logexpander:after { - content: "collapse [-]"; -} -.logwrapper .logexpander { - z-index: 1; - position: sticky; - top: 10px; - width: max-content; - border: 1px solid; - border-radius: 3px; - padding: 5px 7px; - margin: 10px 0 10px calc(100% - 80px); - cursor: pointer; - background-color: #e6e6e6; -} -.logwrapper .logexpander:after { - content: "expand [+]"; -} -.logwrapper .logexpander:hover { - color: #000; - border-color: #000; -} -.logwrapper .log { - min-height: 40px; - position: relative; - top: -50px; - height: calc(100% + 50px); border: 1px solid #e6e6e6; color: black; display: block; font-family: "Courier New", Courier, monospace; + height: 230px; + overflow-y: scroll; padding: 5px; - padding-right: 80px; white-space: pre-wrap; } +.log:only-child { + height: inherit; +} -div.media { +div.image { border: 1px solid #e6e6e6; float: right; height: 240px; - margin: 0 5px; + margin-left: 5px; overflow: hidden; width: 320px; } - -.media-container { - display: grid; - grid-template-columns: 25px auto 25px; - align-items: center; - flex: 1 1; - overflow: hidden; - height: 200px; -} - -.media-container--fullscreen { - grid-template-columns: 0px auto 0px; -} - -.media-container__nav--right, -.media-container__nav--left { - text-align: center; - cursor: pointer; -} - -.media-container__viewport { - cursor: pointer; - text-align: center; - height: inherit; -} -.media-container__viewport img, -.media-container__viewport video { - object-fit: cover; - width: 100%; - max-height: 100%; -} - -.media__name, -.media__counter { - display: flex; - flex-direction: row; - justify-content: space-around; - flex: 0 0 25px; - align-items: center; +div.image img { + width: 320px; } -.collapsible td:not(.col-links) { - cursor: pointer; +div.video { + border: 1px solid #e6e6e6; + float: right; + height: 240px; + margin-left: 5px; + overflow: hidden; + width: 320px; } -.collapsible td:not(.col-links):hover::after { - color: #bbb; - font-style: italic; - cursor: pointer; +div.video video { + overflow: hidden; + width: 320px; + height: 240px; } -.col-result { - width: 130px; -} -.col-result:hover::after { - content: " (hide details)"; +.collapsed { + display: none; } -.col-result.collapsed:hover::after { +.expander::after { content: " (show details)"; -} - -#environment-header h2:hover::after { - content: " (hide details)"; - color: #bbb; + color: #BBB; font-style: italic; cursor: pointer; - font-size: 12px; } -#environment-header.collapsed h2:hover::after { - content: " (show details)"; - color: #bbb; +.collapser::after { + content: " (hide details)"; + color: #BBB; font-style: italic; cursor: pointer; - font-size: 12px; } /*------------------ @@ -239,81 +160,27 @@ div.media { .sortable { cursor: pointer; } -.sortable.desc:after { - content: " "; - position: relative; - left: 5px; - bottom: -12.5px; - border: 10px solid #4caf50; - border-bottom: 0; - border-left-color: transparent; - border-right-color: transparent; -} -.sortable.asc:after { - content: " "; - position: relative; - left: 5px; - bottom: 12.5px; - border: 10px solid #4caf50; - border-top: 0; - border-left-color: transparent; - border-right-color: transparent; -} - -.hidden, .summary__reload__button.hidden { - display: none; -} - -.summary__data { - flex: 0 0 550px; -} -.summary__reload { - flex: 1 1; - display: flex; - justify-content: center; -} -.summary__reload__button { - flex: 0 0 300px; - display: flex; - color: white; - font-weight: bold; - background-color: #4caf50; - text-align: center; - justify-content: center; - align-items: center; - border-radius: 3px; - cursor: pointer; -} -.summary__reload__button:hover { - background-color: #46a049; -} -.summary__spacer { - flex: 0 0 550px; -} - -.controls { - display: flex; - justify-content: space-between; -} - -.filters, -.collapse { - display: flex; - align-items: center; -} -.filters button, -.collapse button { - color: #999; - border: none; - background: none; - cursor: pointer; - text-decoration: underline; -} -.filters button:hover, -.collapse button:hover { - color: #ccc; -} -.filter__label { - margin-right: 10px; +.sort-icon { + font-size: 0px; + float: left; + margin-right: 5px; + margin-top: 5px; + /*triangle*/ + width: 0; + height: 0; + border-left: 8px solid transparent; + border-right: 8px solid transparent; +} +.inactive .sort-icon { + /*finish triangle*/ + border-top: 8px solid #E6E6E6; +} +.asc.active .sort-icon { + /*finish triangle*/ + border-bottom: 8px solid #999; +} +.desc.active .sort-icon { + /*finish triangle*/ + border-top: 8px solid #999; } diff --git a/here.html b/here.html new file mode 100644 index 000000000..90c7f74f5 --- /dev/null +++ b/here.html @@ -0,0 +1,506 @@ + + + + + pyadi-iio Test Report + + + +

pyadi-iio Test Report

+

Report generated on 27-Feb-2024 at 14:49:16 by pytest-html v3.2.0

+

Summary

+

17 tests ran in 175.48 seconds.

+ 15 passed, 0 skipped, 2 failed, 0 errors, 0 expected failures, 0 unexpected passes +

Results

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ResultTestDurationLinks
Failedtest/test_triton.py::test_current_postboot13.20
+
No log output captured.
Failedtest/test_triton.py::test_voltage_postboot12.02
+
No log output captured.
Passedtest/test_triton.py::test_iio_attr0.14
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set0-50000000-0.9--25-5-15-channel:0-adi.Triton]10.64
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set0-50000000-0.9--25-5-15-channel:1-adi.Triton]9.67
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set1-50000000-0.9--25-5-15-channel:0-adi.Triton]9.70
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set1-50000000-0.9--25-5-15-channel:1-adi.Triton]9.77
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set2-50000000-0.9--25-5-15-channel:0-adi.Triton]9.59
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set2-50000000-0.9--25-5-15-channel:1-adi.Triton]9.72
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set3-50000000-0.9--20-5-15-channel:0-adi.Triton]9.59
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set3-50000000-0.9--20-5-15-channel:1-adi.Triton]9.68
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set4-50000000-0.9--30-11-9-channel:0-adi.Triton]9.63
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set4-50000000-0.9--30-11-9-channel:1-adi.Triton]9.63
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set5-50000000-0.9--50-5-15-channel:0-adi.Triton]9.75
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_dds_loopback[param_set5-50000000-0.9--50-5-15-channel:1-adi.Triton]9.68
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_sfdr[60-param_set0-5-15-channel:0-adi.Triton]15.97
+
+ + +
+ +
+
No log output captured.
Passedtest/test_triton.py::test_Triton_sfdr[60-param_set0-5-15-channel:1-adi.Triton]16.04
+
+ + +
+ +
+
No log output captured.
\ No newline at end of file diff --git a/test.html b/test.html new file mode 100644 index 000000000..77f207dc3 --- /dev/null +++ b/test.html @@ -0,0 +1,2515 @@ + + + + + pyadi-iio Test Report + + + +

pyadi-iio Test Report

+

Report generated on 10-Apr-2024 at 14:08:47 by pytest-html v3.2.0

+

Summary

+

170 tests ran in 723.59 seconds.

+ 170 passed, 0 skipped, 0 failed, 0 errors, 0 expected failures, 0 unexpected passes +

Results

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ResultTestDurationLinks
Passedtest/test_triton_cal.py::test_loopback[channel:0-adjacent_loopback-Frequency (MHz):8000]38.84
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 0 input and connect spectrum analyzer into channel 0 output. Press Enter when complete + +Power level (dBm): -1.993954E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-adjacent_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.508462E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-adjacent_loopback-Frequency (MHz):10000]2.06
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.423036E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-adjacent_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.434560E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-adjacent_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.124143E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-combined_loopback-Frequency (MHz):8000]2.05
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.422807E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-combined_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.713770E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-combined_loopback-Frequency (MHz):10000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.927985E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-combined_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.958836E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:0-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.166031E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-adjacent_loopback-Frequency (MHz):8000]17.61
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 1 input and connect spectrum analyzer into channel 1 output. Press Enter when complete + +Power level (dBm): -2.114427E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-adjacent_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.596993E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-adjacent_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.515358E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-adjacent_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.435777E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-adjacent_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.202303E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-combined_loopback-Frequency (MHz):8000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.439084E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-combined_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.685491E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-combined_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.878478E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.901216E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:1-combined_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.241534E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-adjacent_loopback-Frequency (MHz):8000]23.30
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 2 input and connect spectrum analyzer into channel 2 output. Press Enter when complete + +Power level (dBm): -1.991549E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-adjacent_loopback-Frequency (MHz):9000]2.10
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.514659E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-adjacent_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.452373E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-adjacent_loopback-Frequency (MHz):11000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.507069E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-adjacent_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.288894E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-combined_loopback-Frequency (MHz):8000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.437535E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-combined_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.701786E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-combined_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.855451E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-combined_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.896702E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:2-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.213811E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-adjacent_loopback-Frequency (MHz):8000]16.93
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 3 input and connect spectrum analyzer into channel 3 output. Press Enter when complete + +Power level (dBm): -2.112304E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-adjacent_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.641124E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-adjacent_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.533229E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-adjacent_loopback-Frequency (MHz):11000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.558508E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-adjacent_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.458470E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-combined_loopback-Frequency (MHz):8000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.439078E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-combined_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.701880E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-combined_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.899109E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-combined_loopback-Frequency (MHz):11000]2.05
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.933261E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:3-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.210537E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-adjacent_loopback-Frequency (MHz):8000]11.99
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 4 input and connect spectrum analyzer into channel 4 output. Press Enter when complete + +Power level (dBm): -1.980559E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-adjacent_loopback-Frequency (MHz):9000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.444369E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-adjacent_loopback-Frequency (MHz):10000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.378995E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-adjacent_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.443228E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-adjacent_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.233782E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-combined_loopback-Frequency (MHz):8000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.456426E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-combined_loopback-Frequency (MHz):9000]2.10
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.709487E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-combined_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.888331E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.894208E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:4-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.202686E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-adjacent_loopback-Frequency (MHz):8000]18.03
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 5 input and connect spectrum analyzer into channel 5 output. Press Enter when complete + +Power level (dBm): -2.083569E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-adjacent_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.614560E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-adjacent_loopback-Frequency (MHz):10000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.509312E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-adjacent_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.459831E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-adjacent_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.246636E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-combined_loopback-Frequency (MHz):8000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.464600E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-combined_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.707309E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-combined_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.936636E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.893693E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:5-combined_loopback-Frequency (MHz):12000]2.05
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.218611E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-adjacent_loopback-Frequency (MHz):8000]15.54
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 6 input and connect spectrum analyzer into channel 6 output. Press Enter when complete + +Power level (dBm): -2.026429E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-adjacent_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.551971E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-adjacent_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.431257E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-adjacent_loopback-Frequency (MHz):11000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.468519E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-adjacent_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.385063E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-combined_loopback-Frequency (MHz):8000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.467166E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-combined_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.692708E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-combined_loopback-Frequency (MHz):10000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.896517E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-combined_loopback-Frequency (MHz):11000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.904863E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:6-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.245092E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-adjacent_loopback-Frequency (MHz):8000]24.27
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 7 input and connect spectrum analyzer into channel 7 output. Press Enter when complete + +Power level (dBm): -1.914384E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-adjacent_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.492049E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-adjacent_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.411543E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-adjacent_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.436798E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-adjacent_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.313219E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-combined_loopback-Frequency (MHz):8000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.455219E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-combined_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.689711E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-combined_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.890231E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-combined_loopback-Frequency (MHz):11000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.887699E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:7-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.202414E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-adjacent_loopback-Frequency (MHz):8000]16.25
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 8 input and connect spectrum analyzer into channel 8 output. Press Enter when complete + +Power level (dBm): -1.966074E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-adjacent_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.479824E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-adjacent_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.384719E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-adjacent_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.411545E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-adjacent_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.334993E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-combined_loopback-Frequency (MHz):8000]2.07
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.202775E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-combined_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.472009E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-combined_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.294920E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.312851E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:8-combined_loopback-Frequency (MHz):12000]2.08
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.664192E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-adjacent_loopback-Frequency (MHz):8000]17.12
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 9 input and connect spectrum analyzer into channel 9 output. Press Enter when complete + +Power level (dBm): -1.986030E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-adjacent_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.504679E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-adjacent_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.423977E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-adjacent_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.306752E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-adjacent_loopback-Frequency (MHz):12000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.209537E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-combined_loopback-Frequency (MHz):8000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.277603E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-combined_loopback-Frequency (MHz):9000]2.08
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.547169E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-combined_loopback-Frequency (MHz):10000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.240055E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.330992E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:9-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.752595E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-adjacent_loopback-Frequency (MHz):8000]26.26
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 10 input and connect spectrum analyzer into channel 10 output. Press Enter when complete + +Power level (dBm): -2.070835E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-adjacent_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.464830E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-adjacent_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.372793E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-adjacent_loopback-Frequency (MHz):11000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.521016E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-adjacent_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.385495E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-combined_loopback-Frequency (MHz):8000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.235184E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-combined_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.482876E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-combined_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.232035E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-combined_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.331266E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:10-combined_loopback-Frequency (MHz):12000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.714868E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-adjacent_loopback-Frequency (MHz):8000]13.92
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 11 input and connect spectrum analyzer into channel 11 output. Press Enter when complete + +Power level (dBm): -2.107702E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-adjacent_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.585339E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-adjacent_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.476745E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-adjacent_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.603771E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-adjacent_loopback-Frequency (MHz):12000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.390834E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-combined_loopback-Frequency (MHz):8000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.213705E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-combined_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.522259E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-combined_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.263716E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.341585E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:11-combined_loopback-Frequency (MHz):12000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.760705E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-adjacent_loopback-Frequency (MHz):8000]14.27
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 12 input and connect spectrum analyzer into channel 12 output. Press Enter when complete + +Power level (dBm): -2.110463E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-adjacent_loopback-Frequency (MHz):9000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.606191E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-adjacent_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.543264E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-adjacent_loopback-Frequency (MHz):11000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.628441E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-adjacent_loopback-Frequency (MHz):12000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.391249E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-combined_loopback-Frequency (MHz):8000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.515682E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-combined_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.710275E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-combined_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.857360E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.923874E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:12-combined_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.324035E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-adjacent_loopback-Frequency (MHz):8000]13.08
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 13 input and connect spectrum analyzer into channel 13 output. Press Enter when complete + +Power level (dBm): -2.233255E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-adjacent_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.635666E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-adjacent_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.558259E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-adjacent_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.654685E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-adjacent_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.486023E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-combined_loopback-Frequency (MHz):8000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.508287E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-combined_loopback-Frequency (MHz):9000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.742882E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-combined_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.835188E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-combined_loopback-Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.925118E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:13-combined_loopback-Frequency (MHz):12000]2.09
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.264330E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-adjacent_loopback-Frequency (MHz):8000]11.80
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 14 input and connect spectrum analyzer into channel 14 output. Press Enter when complete + +Power level (dBm): -2.014260E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-adjacent_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.521003E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-adjacent_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.390863E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-adjacent_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.446054E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-adjacent_loopback-Frequency (MHz):12000]2.09
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.322129E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-combined_loopback-Frequency (MHz):8000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.525124E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-combined_loopback-Frequency (MHz):9000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.690696E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-combined_loopback-Frequency (MHz):10000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.858456E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-combined_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.936198E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:14-combined_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.246559E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-adjacent_loopback-Frequency (MHz):8000]17.43
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 15 input and connect spectrum analyzer into channel 15 output. Press Enter when complete + +Power level (dBm): -2.142560E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-adjacent_loopback-Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.656389E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-adjacent_loopback-Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -3.558505E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-adjacent_loopback-Frequency (MHz):11000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.623102E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-adjacent_loopback-Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.394006E+00 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-combined_loopback-Frequency (MHz):8000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.524234E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-combined_loopback-Frequency (MHz):9000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.753675E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-combined_loopback-Frequency (MHz):10000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.915437E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-combined_loopback-Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -4.969296E+01 + +
Passedtest/test_triton_cal.py::test_loopback[channel:15-combined_loopback-Frequency (MHz):12000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -5.280259E+01 + +
Passedtest/test_triton_cal.py::test_tx_combined_out[Frequency (MHz):8000]47.65
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into channel 0 input. Connect spectrum analyzer to the combined Tx out SMA port on top of the board. Press enter when complete + +Power level (dBm): -1.780052E+01 + +
Passedtest/test_triton_cal.py::test_tx_combined_out[Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -1.910696E+01 + +
Passedtest/test_triton_cal.py::test_tx_combined_out[Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.134972E+01 + +
Passedtest/test_triton_cal.py::test_tx_combined_out[Frequency (MHz):11000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.219287E+01 + +
Passedtest/test_triton_cal.py::test_tx_combined_out[Frequency (MHz):12000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.346185E+01 + +
Passedtest/test_triton_cal.py::test_rx_combined_in[Frequency (MHz):8000]65.08
+
------------------------------Captured stdout call------------------------------
+ +Connect signal generator into Rx SMA input on top of the board. Connect spectrum analyzer into channel 0 output. Press enter when complete + +Power level (dBm): -1.842821E+01 + +
Passedtest/test_triton_cal.py::test_rx_combined_in[Frequency (MHz):9000]2.03
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -1.921201E+01 + +
Passedtest/test_triton_cal.py::test_rx_combined_in[Frequency (MHz):10000]2.02
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.082514E+01 + +
Passedtest/test_triton_cal.py::test_rx_combined_in[Frequency (MHz):11000]2.01
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.147413E+01 + +
Passedtest/test_triton_cal.py::test_rx_combined_in[Frequency (MHz):12000]2.04
+
------------------------------Captured stdout call------------------------------
+ +Power level (dBm): -2.311755E+01 + +
\ No newline at end of file diff --git a/test/test_triton.py b/test/test_triton.py index 34be33544..de23199c7 100644 --- a/test/test_triton.py +++ b/test/test_triton.py @@ -10,6 +10,8 @@ import pyvisa import time import test.instruments as instruments +# from scpi import signal + @@ -107,28 +109,28 @@ def test_current_preboot(): rm = pyvisa.ResourceManager() rm.list_resources() - inst = rm.open_resource('TCPIP0::192.168.10.1::inst0::INSTR') + inst = rm.open_resource('TCPIP::192.168.10.1::inst0::INSTR') inst.write("OUTP:PAIR PAR") inst.write("INST CH1") inst.write("SOUR:VOLT 12") - inst.write("SOUR:CURR 40") + inst.write("SOUR:CURR 30") # Change as needed print(inst.query("MEASure:CURR?")) current_value = float(inst.query("MEASure:CURR?")) - assert current_value > 3 - assert current_value < 4 + assert current_value > 2 + assert current_value < 4.5 def test_voltage_preboot(): rm = pyvisa.ResourceManager() rm.list_resources() - inst = rm.open_resource('TCPIP0::192.168.10.1::inst0::INSTR') + inst = rm.open_resource('TCPIP::192.168.10.1::inst0::INSTR') inst.write("OUTP:PAIR PAR") inst.write("INST CH1") inst.write("SOUR:VOLT 12") - inst.write("SOUR:CURR 20") + inst.write("SOUR:CURR 30") # Change as needed print(inst.query("MEASure:VOLT?")) voltage_value = float(inst.query("MEASure:VOLT?")) @@ -141,7 +143,7 @@ def test_voltage_preboot(): # # Automated bootup # ########################################## -# @pytest.fixture(scope="module") +@pytest.fixture(scope="module") def test_bootup(): import os import subprocess @@ -193,12 +195,12 @@ def test_bootup(): def test_current_postboot(): rm = pyvisa.ResourceManager() rm.list_resources() - inst = rm.open_resource('TCPIP0::192.168.10.1::inst0::INSTR') + inst = rm.open_resource('TCPIP::192.168.10.1::inst0::INSTR') inst.write("OUTP:PAIR PAR") inst.write("INST CH1") inst.write("SOUR:VOLT 12") - inst.write("SOUR:CURR 40") + inst.write("SOUR:CURR 30") # Change as needed print(inst.query("MEASure:CURR?")) current_value = float(inst.query("MEASure:CURR?")) @@ -209,12 +211,12 @@ def test_current_postboot(): def test_voltage_postboot(): rm = pyvisa.ResourceManager() rm.list_resources() - inst = rm.open_resource('TCPIP0::192.168.10.1::inst0::INSTR') + inst = rm.open_resource('TCPIP::192.168.10.1::inst0::INSTR') inst.write("OUTP:PAIR PAR") inst.write("INST CH1") inst.write("SOUR:VOLT 12") - inst.write("SOUR:CURR 40") + inst.write("SOUR:CURR 30") # Change as needed print(inst.query("MEASure:VOLT?")) voltage_value = float(inst.query("MEASure:VOLT?")) @@ -237,18 +239,18 @@ def test_iio_attr(iio_uri): ######################################### @pytest.mark.parametrize("classname", [(classname)]) -@pytest.mark.parametrize("channel", [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]) -# @pytest.mark.parametrize("channel", [0]) +# @pytest.mark.parametrize("channel", [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], ids=lambda x: f"channel:{x}") +@pytest.mark.parametrize("channel", [0, 1], ids=lambda x: f"channel:{x}") @pytest.mark.parametrize( "param_set, frequency, scale, peak_min, hpf_value, lpf_value", [ - (params["loopback_test_1"], 10000000, 0.9, -25, 5, 15), - (params["loopback_test_2"], 10000000, 0.9, -25, 5, 15), - (params["loopback_test_3"], 10000000, 0.9, -25, 5, 15), - (params["filter_test_1"], 10000000, 0.9, -20, 5, 15), - (params["filter_test_2"], 10000000, 0.9, -30, 11, 9), - (params["dac_adc_loopback_30dB_attenuation"], 10000000, 0.9, -50, 5, 15), - ], + (params["loopback_test_1"], 50000000, 0.9, -25, 5, 15), + (params["loopback_test_2"], 50000000, 0.9, -25, 5, 15), + (params["loopback_test_3"], 50000000, 0.9, -25, 5, 15), + (params["filter_test_1"], 50000000, 0.9, -20, 5, 15), + (params["filter_test_2"], 50000000, 0.9, -30, 11, 9), + (params["dac_adc_loopback_30dB_attenuation"], 50000000, 0.9, -50, 5, 15), + ] ) def test_Triton_dds_loopback( test_dds_loopback, @@ -283,8 +285,8 @@ def test_Triton_dds_loopback( ######################################### @pytest.mark.parametrize("classname", [(classname)]) -@pytest.mark.parametrize("channel", [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]) -# @pytest.mark.parametrize("channel", [0]) +# @pytest.mark.parametrize("channel", [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], ids=lambda x: f"channel:{x}") +@pytest.mark.parametrize("channel", [0, 1], ids=lambda x: f"channel:{x}") @pytest.mark.parametrize( "param_set, hpf_value, lpf_value", [ diff --git a/test/test_triton_cal.py b/test/test_triton_cal.py index dcbd5dfcb..bb46fe001 100644 --- a/test/test_triton_cal.py +++ b/test/test_triton_cal.py @@ -7,18 +7,18 @@ import pyfirmata import time -# def test_arduino_control(): -# board = pyfirmata.Arduino("COM10", baudrate=57600) - -# board.digital[6].write(1) -# board.digital[7].write(1) -# time.sleep(10) +# # Connect to Arduino Uno +board = pyfirmata.Arduino("COM10", baudrate=57600) -# value_6 = board.digital[6].read() -# value_7 = board.digital[7].read() +# # Establish VISA control of spectrum analyzer and signal generator +rm = pyvisa.ResourceManager() +x = rm.list_resources() +HMCT2220 = rm.open_resource('ASRL11::INSTR') +FieldFox = rm.open_resource('TCPIP::192.168.100.23::INSTR') -# assert value_6 == 1 -# assert value_7 == 1 +################################### +### Cal Board Control Functions ### +################################### def set_adjacent_loopback(): @@ -34,45 +34,164 @@ def set_combined_loopback(): board.digital[5].write(1) board.digital[6].write(1) board.digital[7].write(0) - -# Connect to Arduino Uno -board = pyfirmata.Arduino("COM10", baudrate=57600) - -# # Establish VISA control of spectrum analyzer and signal generator -rm = pyvisa.ResourceManager() -x = rm.list_resources() -# # # Spectrum Analyzer -Keysight_N9000A = rm.open_resource('TCPIP0::169.254.41.207::hislip0::INSTR') -HMCT2220 = rm.open_resource('GPIB::00::INSTR') - -HMCT2220.write('SOUR:POW 0') +def set_SMA_inout(): + board.digital[4].write(0) + board.digital[5].write(1) + board.digital[6].write(1) + board.digital[7].write(1) -# set_adjacent_loopback() - -# Keysight_N9000A.write(':CALC:MARK:MAX') -# Keysight_N9000A.write(':CALC:MARK:Y?') -# peak_power = Keysight_N9000A.read() -# print("Peak power:", peak_power) +def set_state(state): + if state == "adjacent_loopback": + set_adjacent_loopback() + if state == 'combined_loopback': + set_combined_loopback() -# set_combined_loopback() -# time.sleep(5) -# Keysight_N9000A.write(':CALC:MARK:MAX') -# Keysight_N9000A.write(':CALC:MARK:Y?') -# peak_power = Keysight_N9000A.read() -# print("Peak power:", peak_power) +####################################### +### HMCT2220 SCPI Functions ### +####################################### -# def test_adjacent_loopback(): -# set_adjacent_loopback() -# Keysight_N9000A.write(':INIT:CONT OFF') # Disable continuous sweep -# Keysight_N9000A.write(':INIT:IMM') # Initiate a single sweep -# Keysight_N9000A.write(':CALC:MARK:MAX') -# Keysight_N9000A.write(':CALC:MARK:Y?') -# peak_power = Keysight_N9000A.read() -# print(peak_power) +# Sets frequency of sig gen in MHz +def _set_frequency_MHz(freq, instr): + instr.write('FREQ {} MHz'.format(freq)) -# assert int(float(peak_power)) > -30 +# Sets power level of sig gen in dBm +def _set_power_level_dBm(power_level, instr): + instr.write('SOUR:POW {}'.format(power_level)) +# Sets output state ON or OFF +def _set_output(state, instr): + instr.write('OUTP {}'.format(state)) +######################################## +### FieldFox SCPI Functions ### +######################################## + +def _set_mode(mode, instr): + instr.write('INST:SEL "{}"'.format(mode)) + +def _set_span_MHz(span, instr): + instr.write('SENSE:FREQ:SPAN {} MHz'.format(span)) + +def _set_center_freq_MHz(center_freq, instr): + instr.write('FREQ:CENT {} MHz'.format(center_freq)) +def _res_bandwidth_auto(state, instr): + instr.write('BAND:AUTO {}'.format(state)) + +def _set_res_bandwidth(res_bandwidth, instr): + instr.write('BAND {} MHz'.format(res_bandwidth)) + +def _set_marker_to_peak(marker_number, instr): + instr.write('CALC:MARK{}:FUNC:MAX'.format(marker_number)) + +def _get_peak_power_level(marker_number, instr): + x = instr.query('CALC:MARK{}:Y?'.format(marker_number)) + return x + +def _set_attenuation_level(attenuation, instr): + instr.write('POW:ATT {}'.format(attenuation)) + +############################################ +### Adjacent and Combined loopback tests ### +############################################ + +@pytest.mark.parametrize("frequency", [8000, 9000, 10000, 11000, 12000], ids=lambda x: f"Frequency (MHz):{x}") +@pytest.mark.parametrize("cal_board_state", ["adjacent_loopback", "combined_loopback"]) +@pytest.mark.parametrize("channel", [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], ids=lambda x: f"channel:{x}") + +def test_loopback(channel, cal_board_state, frequency): + + if (cal_board_state == "adjacent_loopback" and frequency == 8000): + input('\n\nConnect signal generator into channel {} input and connect spectrum analyzer into channel {} output. Press Enter when complete '.format(channel, channel)) + set_adjacent_loopback() + + if cal_board_state == "combined_loopback": + set_combined_loopback() + + # Set up signal generator + _set_frequency_MHz(frequency, HMCT2220) # Set frequency of sig gen + _set_power_level_dBm(15, HMCT2220) # Set sig gen power level to 10 dBm + _set_output('ON', HMCT2220) # Set sig gen output on + time.sleep(1) # Buffer time of 1 second + + # Set up spectrum analyzer + _set_mode('SA', FieldFox) # Select spectrum analyzer mode for FieldFox + _set_attenuation_level(0, FieldFox) # Set attenuation level to 0 dB + _set_center_freq_MHz(10000, FieldFox) # Set center frequency to 10 GHz + _set_span_MHz(20000, FieldFox) # Set span to 20 GHz + _set_res_bandwidth(1, FieldFox) # Sets resolution bandwidth to 1 MHz + time.sleep(1) # Buffer time of 1 second + _set_marker_to_peak(1, FieldFox) # Sets marker 1 to peak + peak_power = _get_peak_power_level(1, FieldFox) # Gets the power at marker 1 + print("\n\nPower level (dBm): {}".format(peak_power)) + + if cal_board_state == "adjacent_loopback": + assert int(float(peak_power)) > -20 + if cal_board_state == "combined_loopback": + assert int(float(peak_power)) > -65 + +################################### +### Tx Combined SMA Output Test ### +################################### + +@pytest.mark.parametrize("frequency", [8000, 9000, 10000, 11000, 12000], ids=lambda x: f"Frequency (MHz):{x}") +def test_tx_combined_out(frequency): + + # Combined Tx Out test + if (frequency == 8000): + input('\n\nConnect signal generator into channel 0 input. Connect spectrum analyzer to the combined Tx out SMA port on top of the board. Press enter when complete') + set_SMA_inout() + + # Set up signal generator + _set_frequency_MHz(frequency, HMCT2220) # Set frequency of sig gen + _set_power_level_dBm(15, HMCT2220) # Set sig gen power level to 10 dBm + _set_output('ON', HMCT2220) # Set sig gen output on + time.sleep(1) # Buffer time of 1 second + + # Set up spectrum analyzer + _set_mode('SA', FieldFox) # Select spectrum analyzer mode for FieldFox + _set_attenuation_level(0, FieldFox) # Set attenuation level to 0 dB + _set_center_freq_MHz(10000, FieldFox) # Set center frequency to 10 GHz + _set_span_MHz(20000, FieldFox) # Set span to 20 GHz + _set_res_bandwidth(1, FieldFox) # Sets resolution bandwidth to 1 MHz + time.sleep(1) # Buffer time of 1 second + _set_marker_to_peak(1, FieldFox) # Sets marker 1 to peak + peak_power = _get_peak_power_level(1, FieldFox) # Gets the power at marker 1 + print("\n\nPower level (dBm): {}".format(peak_power)) + + assert int(float(peak_power)) > -40 + + +################################## +### Rx Combined SMA Input Test ### +################################## + +@pytest.mark.parametrize("frequency", [8000, 9000, 10000, 11000, 12000], ids=lambda x: f"Frequency (MHz):{x}") +def test_rx_combined_in(frequency): + + # Combined Rx In test + if (frequency == 8000): + input('\n\nConnect signal generator into Rx SMA input on top of the board. Connect spectrum analyzer into channel 0 output. Press enter when complete') + set_SMA_inout() + + + # Set up signal generator + _set_frequency_MHz(frequency, HMCT2220) # Set frequency of sig gen + _set_power_level_dBm(15, HMCT2220) # Set sig gen power level to 10 dBm + _set_output('ON', HMCT2220) # Set sig gen output on + time.sleep(1) # Buffer time of 1 second + + # Set up spectrum analyzer + _set_mode('SA', FieldFox) # Select spectrum analyzer mode for FieldFox + _set_attenuation_level(0, FieldFox) # Set attenuation level to 0 dB + _set_center_freq_MHz(10000, FieldFox) # Set center frequency to 10 GHz + _set_span_MHz(20000, FieldFox) # Set span to 20 GHz + _set_res_bandwidth(1, FieldFox) # Sets resolution bandwidth to 1 MHz + time.sleep(1) # Buffer time of 1 second + _set_marker_to_peak(1, FieldFox) # Sets marker 1 to peak + peak_power = _get_peak_power_level(1, FieldFox) # Gets the power at marker 1 + print("\n\nPower level (dBm): {}".format(peak_power)) + + assert int(float(peak_power)) > -40