diff options
author | andreas128 <Andreas> | 2016-12-14 16:22:48 +0100 |
---|---|---|
committer | andreas128 <Andreas> | 2016-12-14 16:22:48 +0100 |
commit | 02e4cf6ab3ea3f55cfcd904d462fd3c494af8593 (patch) | |
tree | 1cc479962ab9b5f1b8e824a9a2eb82da6e33a11d | |
parent | bf1dcd15c041b73aeca73cd1aebe894d3128b4f2 (diff) | |
download | ODR-StaticPrecorrection-02e4cf6ab3ea3f55cfcd904d462fd3c494af8593.tar.gz ODR-StaticPrecorrection-02e4cf6ab3ea3f55cfcd904d462fd3c494af8593.tar.bz2 ODR-StaticPrecorrection-02e4cf6ab3ea3f55cfcd904d462fd3c494af8593.zip |
Add live analyse for sholders of dab signal
-rw-r--r-- | .gitignore | 92 | ||||
-rw-r--r-- | live_analyse.grc | 1288 | ||||
-rw-r--r-- | live_analyse_py.grc | 2655 | ||||
-rw-r--r-- | run.ipynb | 176 | ||||
-rw-r--r-- | src/gen_source.py | 85 |
5 files changed, 3139 insertions, 1157 deletions
@@ -46,3 +46,95 @@ Session.vim *~ # auto-generated tag files tags + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +env/ +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +*.egg-info/ +.installed.cfg +*.egg + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*,cover +.hypothesis/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# dotenv +.env + +# virtualenv +.venv/ +venv/ +ENV/ + +# Spyder project settings +.spyderproject + +# Rope project settings +.ropeproject diff --git a/live_analyse.grc b/live_analyse.grc index 5b3db4b..737798e 100644 --- a/live_analyse.grc +++ b/live_analyse.grc @@ -136,33 +136,6 @@ </param> </block> <block> - <key>variable</key> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(88, 237)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>freq</value> - </param> - <param> - <key>value</key> - <value>222e6</value> - </param> - </block> - <block> <key>variable_qtgui_range</key> <param> <key>comment</key> @@ -170,78 +143,15 @@ </param> <param> <key>value</key> - <value>2000000</value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(336, 568)</value> - </param> - <param> - <key>gui_hint</key> - <value></value> - </param> - <param> - <key>_rotation</key> <value>0</value> </param> <param> - <key>id</key> - <value>high</value> - </param> - <param> - <key>label</key> - <value></value> - </param> - <param> - <key>min_len</key> - <value>200</value> - </param> - <param> - <key>orient</key> - <value>Qt.Horizontal</value> - </param> - <param> - <key>start</key> - <value>50000</value> - </param> - <param> - <key>step</key> - <value>1</value> - </param> - <param> - <key>stop</key> - <value>2000000</value> - </param> - <param> - <key>rangeType</key> - <value>float</value> - </param> - <param> - <key>widget</key> - <value>counter_slider</value> - </param> - </block> - <block> - <key>variable_qtgui_range</key> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>value</key> - <value>50000</value> - </param> - <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> - <value>(168, 568)</value> + <value>(256, 417)</value> </param> <param> <key>gui_hint</key> @@ -253,11 +163,11 @@ </param> <param> <key>id</key> - <value>low</value> + <value>file_gain</value> </param> <param> <key>label</key> - <value></value> + <value>file_gain</value> </param> <param> <key>min_len</key> @@ -269,15 +179,15 @@ </param> <param> <key>start</key> - <value>50000</value> + <value>0</value> </param> <param> <key>step</key> - <value>1</value> + <value>0.000001</value> </param> <param> <key>stop</key> - <value>2000000</value> + <value>1</value> </param> <param> <key>rangeType</key> @@ -300,88 +210,7 @@ </param> <param> <key>_coordinate</key> - <value>(8, 301)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>rxgain</value> - </param> - <param> - <key>value</key> - <value>variable_qtgui_rxgain</value> - </param> - </block> - <block> - <key>variable</key> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(8, 85)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>samp_rate</value> - </param> - <param> - <key>value</key> - <value>4e6</value> - </param> - </block> - <block> - <key>variable</key> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(88, 165)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>source_ampl</value> - </param> - <param> - <key>value</key> - <value>variable_qtgui_source_ampl</value> - </param> - </block> - <block> - <key>variable</key> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(8, 237)</value> + <value>(88, 237)</value> </param> <param> <key>_rotation</key> @@ -389,11 +218,11 @@ </param> <param> <key>id</key> - <value>txgain</value> + <value>freq</value> </param> <param> <key>value</key> - <value>variable_qtgui_txgain</value> + <value>222e6</value> </param> </block> <block> @@ -412,7 +241,7 @@ </param> <param> <key>_coordinate</key> - <value>(8, 553)</value> + <value>(16, 417)</value> </param> <param> <key>gui_hint</key> @@ -424,7 +253,7 @@ </param> <param> <key>id</key> - <value>variable_qtgui_rxgain</value> + <value>rxgain</value> </param> <param> <key>label</key> @@ -460,26 +289,18 @@ </param> </block> <block> - <key>variable_qtgui_range</key> + <key>variable</key> <param> <key>comment</key> <value></value> </param> <param> - <key>value</key> - <value>1</value> - </param> - <param> <key>_enabled</key> <value>True</value> </param> <param> <key>_coordinate</key> - <value>(160, 401)</value> - </param> - <param> - <key>gui_hint</key> - <value></value> + <value>(8, 85)</value> </param> <param> <key>_rotation</key> @@ -487,39 +308,11 @@ </param> <param> <key>id</key> - <value>variable_qtgui_source_ampl</value> - </param> - <param> - <key>label</key> - <value>source_ampl</value> - </param> - <param> - <key>min_len</key> - <value>200</value> - </param> - <param> - <key>orient</key> - <value>Qt.Horizontal</value> - </param> - <param> - <key>start</key> - <value>0</value> - </param> - <param> - <key>step</key> - <value>0.05</value> - </param> - <param> - <key>stop</key> - <value>1</value> - </param> - <param> - <key>rangeType</key> - <value>float</value> + <value>samp_rate</value> </param> <param> - <key>widget</key> - <value>counter_slider</value> + <key>value</key> + <value>8e6</value> </param> </block> <block> @@ -530,7 +323,7 @@ </param> <param> <key>value</key> - <value>83</value> + <value>1</value> </param> <param> <key>_enabled</key> @@ -538,7 +331,7 @@ </param> <param> <key>_coordinate</key> - <value>(8, 400)</value> + <value>(376, 417)</value> </param> <param> <key>gui_hint</key> @@ -550,11 +343,11 @@ </param> <param> <key>id</key> - <value>variable_qtgui_txgain</value> + <value>sig_gain</value> </param> <param> <key>label</key> - <value>txgain</value> + <value>sig_gain</value> </param> <param> <key>min_len</key> @@ -570,11 +363,11 @@ </param> <param> <key>step</key> - <value>1</value> + <value>0.001</value> </param> <param> <key>stop</key> - <value>89</value> + <value>100</value> </param> <param> <key>rangeType</key> @@ -593,7 +386,7 @@ </param> <param> <key>value</key> - <value>500</value> + <value>20</value> </param> <param> <key>_enabled</key> @@ -601,7 +394,7 @@ </param> <param> <key>_coordinate</key> - <value>(168, 688)</value> + <value>(136, 417)</value> </param> <param> <key>gui_hint</key> @@ -613,11 +406,11 @@ </param> <param> <key>id</key> - <value>width</value> + <value>txgain</value> </param> <param> <key>label</key> - <value></value> + <value>txgain</value> </param> <param> <key>min_len</key> @@ -629,7 +422,7 @@ </param> <param> <key>start</key> - <value>1</value> + <value>0</value> </param> <param> <key>step</key> @@ -637,7 +430,7 @@ </param> <param> <key>stop</key> - <value>5000000</value> + <value>100</value> </param> <param> <key>rangeType</key> @@ -649,284 +442,6 @@ </param> </block> <block> - <key>analog_const_source_x</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>const</key> - <value>0</value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(512, 92)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>analog_const_source_x_0</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>type</key> - <value>complex</value> - </param> - </block> - <block> - <key>blocks_add_xx</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(696, 121)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_add_xx_1</value> - </param> - <param> - <key>type</key> - <value>complex</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>num_inputs</key> - <value>2</value> - </param> - <param> - <key>vlen</key> - <value>1</value> - </param> - </block> - <block> - <key>blocks_complex_to_arg</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(968, 321)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_complex_to_arg_0</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>vlen</key> - <value>1</value> - </param> - </block> - <block> - <key>blocks_complex_to_mag_squared</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(800, 225)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_complex_to_mag_squared_0</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>vlen</key> - <value>1</value> - </param> - </block> - <block> - <key>blocks_complex_to_mag_squared</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>1</value> - </param> - <param> - <key>_coordinate</key> - <value>(792, 401)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_complex_to_mag_squared_0_0</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>vlen</key> - <value>1</value> - </param> - </block> - <block> - <key>blocks_file_sink</key> - <param> - <key>append</key> - <value>False</value> - </param> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>file</key> - <value>fft_sink</value> - </param> - <param> - <key>_coordinate</key> - <value>(1312, 599)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_file_sink_0</value> - </param> - <param> - <key>type</key> - <value>float</value> - </param> - <param> - <key>unbuffered</key> - <value>False</value> - </param> - <param> - <key>vlen</key> - <value>8192</value> - </param> - </block> - <block> <key>blocks_file_source</key> <param> <key>alias</key> @@ -946,11 +461,11 @@ </param> <param> <key>file</key> - <value>/home/andreas/dab/ODR-StaticPrecorrection/np_twotone</value> + <value>/home/andreas/dab/dab_normalized_c64.dat</value> </param> <param> <key>_coordinate</key> - <value>(344, 141)</value> + <value>(264, 21)</value> </param> <param> <key>_rotation</key> @@ -1001,7 +516,7 @@ </param> <param> <key>_coordinate</key> - <value>(896, 785)</value> + <value>(560, 329)</value> </param> <param> <key>_rotation</key> @@ -1029,214 +544,6 @@ </param> </block> <block> - <key>blocks_moving_average_xx</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(1168, 302)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_moving_average_xx_0</value> - </param> - <param> - <key>length</key> - <value>decim</value> - </param> - <param> - <key>max_iter</key> - <value>4000</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>scale</key> - <value>1</value> - </param> - <param> - <key>type</key> - <value>float</value> - </param> - </block> - <block> - <key>blocks_moving_average_xx</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(976, 206)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_moving_average_xx_0_0</value> - </param> - <param> - <key>length</key> - <value>decim</value> - </param> - <param> - <key>max_iter</key> - <value>4000</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>scale</key> - <value>1</value> - </param> - <param> - <key>type</key> - <value>float</value> - </param> - </block> - <block> - <key>blocks_moving_average_xx</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(1168, 382)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_moving_average_xx_0_1</value> - </param> - <param> - <key>length</key> - <value>decim</value> - </param> - <param> - <key>max_iter</key> - <value>4000</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>scale</key> - <value>1</value> - </param> - <param> - <key>type</key> - <value>float</value> - </param> - </block> - <block> - <key>blocks_multiply_conjugate_cc</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>_enabled</key> - <value>1</value> - </param> - <param> - <key>_coordinate</key> - <value>(792, 305)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>blocks_multiply_conjugate_cc_0</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>vlen</key> - <value>1</value> - </param> - </block> - <block> <key>blocks_multiply_const_vxx</key> <param> <key>alias</key> @@ -1248,7 +555,7 @@ </param> <param> <key>const</key> - <value>1</value> + <value>file_gain</value> </param> <param> <key>affinity</key> @@ -1260,7 +567,7 @@ </param> <param> <key>_coordinate</key> - <value>(536, 148)</value> + <value>(552, 52)</value> </param> <param> <key>_rotation</key> @@ -1311,7 +618,7 @@ </param> <param> <key>_coordinate</key> - <value>(1384, 225)</value> + <value>(984, 329)</value> </param> <param> <key>_rotation</key> @@ -1319,11 +626,11 @@ </param> <param> <key>id</key> - <value>blocks_null_sink_0</value> + <value>blocks_null_sink_0_2</value> </param> <param> <key>type</key> - <value>float</value> + <value>byte</value> </param> <param> <key>num_inputs</key> @@ -1335,65 +642,34 @@ </param> </block> <block> - <key>blocks_null_sink</key> + <key>qtgui_freq_sink_x</key> <param> - <key>alias</key> - <value></value> + <key>autoscale</key> + <value>False</value> </param> <param> - <key>bus_conns</key> - <value>[[0,],]</value> + <key>average</key> + <value>1.0</value> </param> <param> - <key>comment</key> - <value></value> + <key>bw</key> + <value>samp_rate</value> </param> <param> - <key>affinity</key> + <key>alias</key> <value></value> </param> <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(1552, 321)</value> - </param> - <param> - <key>_rotation</key> + <key>fc</key> <value>0</value> </param> <param> - <key>id</key> - <value>blocks_null_sink_0_0</value> - </param> - <param> - <key>type</key> - <value>float</value> - </param> - <param> - <key>num_inputs</key> - <value>1</value> - </param> - <param> - <key>vlen</key> - <value>1</value> - </param> - </block> - <block> - <key>blocks_null_sink</key> - <param> - <key>alias</key> + <key>comment</key> <value></value> </param> <param> - <key>bus_conns</key> - <value>[[0,],]</value> - </param> - <param> - <key>comment</key> - <value></value> + <key>ctrlpanel</key> + <value>False</value> </param> <param> <key>affinity</key> @@ -1404,220 +680,192 @@ <value>True</value> </param> <param> - <key>_coordinate</key> - <value>(1552, 401)</value> + <key>fftsize</key> + <value>16000</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>_coordinate</key> + <value>(704, 222)</value> </param> <param> - <key>id</key> - <value>blocks_null_sink_0_1</value> + <key>gui_hint</key> + <value></value> </param> <param> - <key>type</key> - <value>float</value> + <key>_rotation</key> + <value>0</value> </param> <param> - <key>num_inputs</key> - <value>1</value> + <key>grid</key> + <value>False</value> </param> <param> - <key>vlen</key> - <value>1</value> + <key>id</key> + <value>qtgui_freq_sink_x_0_0</value> </param> - </block> - <block> - <key>blocks_null_sink</key> <param> - <key>alias</key> - <value></value> + <key>legend</key> + <value>True</value> </param> <param> - <key>bus_conns</key> - <value>[[0,],]</value> + <key>alpha1</key> + <value>1.0</value> </param> <param> - <key>comment</key> - <value></value> + <key>color1</key> + <value>"blue"</value> </param> <param> - <key>affinity</key> + <key>label1</key> <value></value> </param> <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>_coordinate</key> - <value>(1320, 785)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> + <key>width1</key> + <value>1</value> </param> <param> - <key>id</key> - <value>blocks_null_sink_0_2</value> + <key>alpha10</key> + <value>1.0</value> </param> <param> - <key>type</key> - <value>byte</value> + <key>color10</key> + <value>"dark blue"</value> </param> <param> - <key>num_inputs</key> - <value>1</value> + <key>label10</key> + <value></value> </param> <param> - <key>vlen</key> + <key>width10</key> <value>1</value> </param> - </block> - <block> - <key>fir_filter_xxx</key> <param> - <key>alias</key> - <value></value> + <key>alpha2</key> + <value>1.0</value> </param> <param> - <key>comment</key> - <value></value> + <key>color2</key> + <value>"red"</value> </param> <param> - <key>affinity</key> + <key>label2</key> <value></value> </param> <param> - <key>decim</key> - <value>decim</value> - </param> - <param> - <key>_enabled</key> - <value>True</value> + <key>width2</key> + <value>1</value> </param> <param> - <key>_coordinate</key> - <value>(1328, 309)</value> + <key>alpha3</key> + <value>1.0</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>color3</key> + <value>"green"</value> </param> <param> - <key>id</key> - <value>fir_filter_xxx_0</value> + <key>label3</key> + <value></value> </param> <param> - <key>maxoutbuf</key> - <value>0</value> + <key>width3</key> + <value>1</value> </param> <param> - <key>minoutbuf</key> - <value>0</value> + <key>alpha4</key> + <value>1.0</value> </param> <param> - <key>samp_delay</key> - <value>0</value> + <key>color4</key> + <value>"black"</value> </param> <param> - <key>taps</key> - <value>[1]</value> + <key>label4</key> + <value></value> </param> <param> - <key>type</key> - <value>fff</value> + <key>width4</key> + <value>1</value> </param> - </block> - <block> - <key>fir_filter_xxx</key> <param> - <key>alias</key> - <value></value> + <key>alpha5</key> + <value>1.0</value> </param> <param> - <key>comment</key> - <value></value> + <key>color5</key> + <value>"cyan"</value> </param> <param> - <key>affinity</key> + <key>label5</key> <value></value> </param> <param> - <key>decim</key> - <value>decim</value> - </param> - <param> - <key>_enabled</key> - <value>True</value> + <key>width5</key> + <value>1</value> </param> <param> - <key>_coordinate</key> - <value>(1136, 213)</value> + <key>alpha6</key> + <value>1.0</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>color6</key> + <value>"magenta"</value> </param> <param> - <key>id</key> - <value>fir_filter_xxx_0_0</value> + <key>label6</key> + <value></value> </param> <param> - <key>maxoutbuf</key> - <value>0</value> + <key>width6</key> + <value>1</value> </param> <param> - <key>minoutbuf</key> - <value>0</value> + <key>alpha7</key> + <value>1.0</value> </param> <param> - <key>samp_delay</key> - <value>0</value> + <key>color7</key> + <value>"yellow"</value> </param> <param> - <key>taps</key> - <value>[1]</value> + <key>label7</key> + <value></value> </param> <param> - <key>type</key> - <value>fff</value> + <key>width7</key> + <value>1</value> </param> - </block> - <block> - <key>fir_filter_xxx</key> <param> - <key>alias</key> - <value></value> + <key>alpha8</key> + <value>1.0</value> </param> <param> - <key>comment</key> - <value></value> + <key>color8</key> + <value>"dark red"</value> </param> <param> - <key>affinity</key> + <key>label8</key> <value></value> </param> <param> - <key>decim</key> - <value>decim</value> + <key>width8</key> + <value>1</value> </param> <param> - <key>_enabled</key> - <value>True</value> + <key>alpha9</key> + <value>1.0</value> </param> <param> - <key>_coordinate</key> - <value>(1328, 389)</value> + <key>color9</key> + <value>"dark green"</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>label9</key> + <value></value> </param> <param> - <key>id</key> - <value>fir_filter_xxx_0_1</value> + <key>width9</key> + <value>1</value> </param> <param> <key>maxoutbuf</key> @@ -1628,83 +876,56 @@ <value>0</value> </param> <param> - <key>samp_delay</key> - <value>0</value> - </param> - <param> - <key>taps</key> - <value>[1]</value> - </param> - <param> - <key>type</key> - <value>fff</value> - </param> - </block> - <block> - <key>logpwrfft_x</key> - <param> - <key>avg_alpha</key> - <value>1.0</value> - </param> - <param> - <key>average</key> - <value>False</value> - </param> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> + <key>name</key> + <value>""</value> </param> <param> - <key>affinity</key> - <value></value> + <key>nconnections</key> + <value>1</value> </param> <param> - <key>_enabled</key> + <key>showports</key> <value>True</value> </param> <param> - <key>fft_size</key> - <value>8192</value> + <key>freqhalf</key> + <value>True</value> </param> <param> - <key>frame_rate</key> - <value>30</value> + <key>tr_chan</key> + <value>0</value> </param> <param> - <key>_coordinate</key> - <value>(1048, 585)</value> + <key>tr_level</key> + <value>0.0</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>tr_mode</key> + <value>qtgui.TRIG_MODE_FREE</value> </param> <param> - <key>id</key> - <value>logpwrfft_x_0</value> + <key>tr_tag</key> + <value>""</value> </param> <param> <key>type</key> <value>complex</value> </param> <param> - <key>maxoutbuf</key> - <value>0</value> + <key>update_time</key> + <value>0.1</value> </param> <param> - <key>minoutbuf</key> - <value>0</value> + <key>wintype</key> + <value>firdes.WIN_BLACKMAN_hARRIS</value> </param> <param> - <key>ref_scale</key> - <value>2</value> + <key>ymax</key> + <value>10</value> </param> <param> - <key>sample_rate</key> - <value>samp_rate</value> + <key>ymin</key> + <value>-140</value> </param> </block> <block> @@ -1719,7 +940,7 @@ </param> <param> <key>bw</key> - <value>samp_rate/decimate</value> + <value>samp_rate</value> </param> <param> <key>alias</key> @@ -1747,11 +968,11 @@ </param> <param> <key>fftsize</key> - <value>8192</value> + <value>16000</value> </param> <param> <key>_coordinate</key> - <value>(1008, 478)</value> + <value>(1056, 38)</value> </param> <param> <key>gui_hint</key> @@ -1767,7 +988,7 @@ </param> <param> <key>id</key> - <value>qtgui_freq_sink_x_0_0</value> + <value>qtgui_freq_sink_x_0_0_0</value> </param> <param> <key>legend</key> @@ -1995,65 +1216,6 @@ </param> </block> <block> - <key>rational_resampler_xxx</key> - <param> - <key>alias</key> - <value></value> - </param> - <param> - <key>comment</key> - <value></value> - </param> - <param> - <key>affinity</key> - <value></value> - </param> - <param> - <key>decim</key> - <value>decimate</value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>fbw</key> - <value>0</value> - </param> - <param> - <key>_coordinate</key> - <value>(776, 471)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - <param> - <key>id</key> - <value>rational_resampler_xxx_0_0</value> - </param> - <param> - <key>interp</key> - <value>1</value> - </param> - <param> - <key>maxoutbuf</key> - <value>0</value> - </param> - <param> - <key>minoutbuf</key> - <value>0</value> - </param> - <param> - <key>taps</key> - <value></value> - </param> - <param> - <key>type</key> - <value>ccc</value> - </param> - </block> - <block> <key>uhd_amsg_source</key> <param> <key>alias</key> @@ -2077,7 +1239,7 @@ </param> <param> <key>_coordinate</key> - <value>(504, 785)</value> + <value>(232, 329)</value> </param> <param> <key>_rotation</key> @@ -2768,7 +1930,7 @@ </param> <param> <key>_coordinate</key> - <value>(808, 111)</value> + <value>(1056, 119)</value> </param> <param> <key>_rotation</key> @@ -3843,7 +3005,7 @@ </param> <param> <key>_coordinate</key> - <value>(512, 462)</value> + <value>(256, 222)</value> </param> <param> <key>_rotation</key> @@ -3995,48 +3157,6 @@ </param> </block> <connection> - <source_block_id>analog_const_source_x_0</source_block_id> - <sink_block_id>blocks_add_xx_1</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_add_xx_1</source_block_id> - <sink_block_id>blocks_complex_to_mag_squared_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_add_xx_1</source_block_id> - <sink_block_id>blocks_multiply_conjugate_cc_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_add_xx_1</source_block_id> - <sink_block_id>uhd_usrp_sink_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_complex_to_arg_0</source_block_id> - <sink_block_id>blocks_moving_average_xx_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_complex_to_mag_squared_0</source_block_id> - <sink_block_id>blocks_moving_average_xx_0_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_complex_to_mag_squared_0_0</source_block_id> - <sink_block_id>blocks_moving_average_xx_0_1</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> <source_block_id>blocks_file_source_0</source_block_id> <sink_block_id>blocks_multiply_const_vxx_1</sink_block_id> <source_key>0</source_key> @@ -4049,62 +3169,14 @@ <sink_key>0</sink_key> </connection> <connection> - <source_block_id>blocks_moving_average_xx_0</source_block_id> - <sink_block_id>fir_filter_xxx_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_moving_average_xx_0_0</source_block_id> - <sink_block_id>fir_filter_xxx_0_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_moving_average_xx_0_1</source_block_id> - <sink_block_id>fir_filter_xxx_0_1</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>blocks_multiply_conjugate_cc_0</source_block_id> - <sink_block_id>blocks_complex_to_arg_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> <source_block_id>blocks_multiply_const_vxx_1</source_block_id> - <sink_block_id>blocks_add_xx_1</sink_block_id> - <source_key>0</source_key> - <sink_key>1</sink_key> - </connection> - <connection> - <source_block_id>fir_filter_xxx_0</source_block_id> - <sink_block_id>blocks_null_sink_0_0</sink_block_id> + <sink_block_id>qtgui_freq_sink_x_0_0_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>fir_filter_xxx_0_0</source_block_id> - <sink_block_id>blocks_null_sink_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>fir_filter_xxx_0_1</source_block_id> - <sink_block_id>blocks_null_sink_0_1</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>logpwrfft_x_0</source_block_id> - <sink_block_id>blocks_file_sink_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>rational_resampler_xxx_0_0</source_block_id> - <sink_block_id>qtgui_freq_sink_x_0_0</sink_block_id> + <source_block_id>blocks_multiply_const_vxx_1</source_block_id> + <sink_block_id>uhd_usrp_sink_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> @@ -4116,25 +3188,7 @@ </connection> <connection> <source_block_id>uhd_usrp_source_0</source_block_id> - <sink_block_id>blocks_complex_to_mag_squared_0_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>uhd_usrp_source_0</source_block_id> - <sink_block_id>blocks_multiply_conjugate_cc_0</sink_block_id> - <source_key>0</source_key> - <sink_key>1</sink_key> - </connection> - <connection> - <source_block_id>uhd_usrp_source_0</source_block_id> - <sink_block_id>logpwrfft_x_0</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>uhd_usrp_source_0</source_block_id> - <sink_block_id>rational_resampler_xxx_0_0</sink_block_id> + <sink_block_id>qtgui_freq_sink_x_0_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> diff --git a/live_analyse_py.grc b/live_analyse_py.grc new file mode 100644 index 0000000..aada771 --- /dev/null +++ b/live_analyse_py.grc @@ -0,0 +1,2655 @@ +<?xml version='1.0' encoding='utf-8'?> +<?grc format='1' created='3.7.9'?> +<flow_graph> + <timestamp>Wed Oct 28 18:49:28 2015</timestamp> + <block> + <key>options</key> + <param> + <key>author</key> + <value></value> + </param> + <param> + <key>window_size</key> + <value>2000,2000</value> + </param> + <param> + <key>category</key> + <value>Custom</value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>description</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(8, 8)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>generate_options</key> + <value>no_gui</value> + </param> + <param> + <key>hier_block_src_path</key> + <value>.:</value> + </param> + <param> + <key>id</key> + <value>live_analyse_py</value> + </param> + <param> + <key>max_nouts</key> + <value>0</value> + </param> + <param> + <key>qt_qss_theme</key> + <value></value> + </param> + <param> + <key>realtime_scheduling</key> + <value></value> + </param> + <param> + <key>run_command</key> + <value>{python} -u {filename}</value> + </param> + <param> + <key>run_options</key> + <value>prompt</value> + </param> + <param> + <key>run</key> + <value>True</value> + </param> + <param> + <key>thread_safe_setters</key> + <value></value> + </param> + <param> + <key>title</key> + <value></value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(8, 165)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>decim</value> + </param> + <param> + <key>value</key> + <value>4000</value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(88, 301)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>decimate</value> + </param> + <param> + <key>value</key> + <value>1</value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(88, 237)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>freq</value> + </param> + <param> + <key>value</key> + <value>222e6</value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(8, 301)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>rxgain</value> + </param> + <param> + <key>value</key> + <value>20</value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(8, 85)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>samp_rate</value> + </param> + <param> + <key>value</key> + <value>8e6</value> + </param> + </block> + <block> + <key>variable</key> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(8, 237)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>txgain</value> + </param> + <param> + <key>value</key> + <value>50</value> + </param> + </block> + <block> + <key>analog_const_source_x</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>const</key> + <value>0</value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(896, 76)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>analog_const_source_x_0</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + <param> + <key>type</key> + <value>complex</value> + </param> + </block> + <block> + <key>blks2_tcp_sink</key> + <param> + <key>addr</key> + <value>127.0.0.1</value> + </param> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(1256, 838)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>blks2_tcp_sink_1</value> + </param> + <param> + <key>type</key> + <value>byte</value> + </param> + <param> + <key>server</key> + <value>True</value> + </param> + <param> + <key>port</key> + <value>47010</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + </block> + <block> + <key>blks2_tcp_sink</key> + <param> + <key>addr</key> + <value>127.0.0.1</value> + </param> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(1368, 599)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>blks2_tcp_sink_1_0</value> + </param> + <param> + <key>type</key> + <value>float</value> + </param> + <param> + <key>server</key> + <value>True</value> + </param> + <param> + <key>port</key> + <value>47009</value> + </param> + <param> + <key>vlen</key> + <value>8192</value> + </param> + </block> + <block> + <key>blocks_add_xx</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(1112, 121)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>blocks_add_xx_1</value> + </param> + <param> + <key>type</key> + <value>complex</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + <param> + <key>num_inputs</key> + <value>2</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + </block> + <block> + <key>blocks_file_source</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>file</key> + <value>/home/andreas/dab/dab_run.dat</value> + </param> + <param> + <key>_coordinate</key> + <value>(312, 141)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>blocks_file_source_0</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + <param> + <key>type</key> + <value>complex</value> + </param> + <param> + <key>repeat</key> + <value>True</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + </block> + <block> + <key>blocks_message_burst_source</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(904, 857)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>blocks_message_burst_source_0_0</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + <param> + <key>type</key> + <value>byte</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + </block> + <block> + <key>blocks_multiply_const_vxx</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>const</key> + <value>1</value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(512, 148)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>blocks_multiply_const_vxx_1</value> + </param> + <param> + <key>type</key> + <value>complex</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + </block> + <block> + <key>logpwrfft_x</key> + <param> + <key>avg_alpha</key> + <value>1.0</value> + </param> + <param> + <key>average</key> + <value>False</value> + </param> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>fft_size</key> + <value>8192</value> + </param> + <param> + <key>frame_rate</key> + <value>30</value> + </param> + <param> + <key>_coordinate</key> + <value>(1048, 585)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>logpwrfft_x_0</value> + </param> + <param> + <key>type</key> + <value>complex</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + <param> + <key>ref_scale</key> + <value>2</value> + </param> + <param> + <key>sample_rate</key> + <value>samp_rate</value> + </param> + </block> + <block> + <key>uhd_amsg_source</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>dev_addr</key> + <value></value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(512, 857)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>uhd_amsg_source_0_0</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + </block> + <block> + <key>uhd_usrp_sink</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>ant0</key> + <value></value> + </param> + <param> + <key>bw0</key> + <value>0</value> + </param> + <param> + <key>center_freq0</key> + <value>freq</value> + </param> + <param> + <key>norm_gain0</key> + <value>False</value> + </param> + <param> + <key>gain0</key> + <value>txgain</value> + </param> + <param> + <key>ant10</key> + <value></value> + </param> + <param> + <key>bw10</key> + <value>0</value> + </param> + <param> + <key>center_freq10</key> + <value>0</value> + </param> + <param> + <key>norm_gain10</key> + <value>False</value> + </param> + <param> + <key>gain10</key> + <value>0</value> + </param> + <param> + <key>ant11</key> + <value></value> + </param> + <param> + <key>bw11</key> + <value>0</value> + </param> + <param> + <key>center_freq11</key> + <value>0</value> + </param> + <param> + <key>norm_gain11</key> + <value>False</value> + </param> + <param> + <key>gain11</key> + <value>0</value> + </param> + <param> + <key>ant12</key> + <value></value> + </param> + <param> + <key>bw12</key> + <value>0</value> + </param> + <param> + <key>center_freq12</key> + <value>0</value> + </param> + <param> + <key>norm_gain12</key> + <value>False</value> + </param> + <param> + <key>gain12</key> + <value>0</value> + </param> + <param> + <key>ant13</key> + <value></value> + </param> + <param> + <key>bw13</key> + <value>0</value> + </param> + <param> + <key>center_freq13</key> + <value>0</value> + </param> + <param> + <key>norm_gain13</key> + <value>False</value> + </param> + <param> + <key>gain13</key> + <value>0</value> + </param> + <param> + <key>ant14</key> + <value></value> + </param> + <param> + <key>bw14</key> + <value>0</value> + </param> + <param> + <key>center_freq14</key> + <value>0</value> + </param> + <param> + <key>norm_gain14</key> + <value>False</value> + </param> + <param> + <key>gain14</key> + <value>0</value> + </param> + <param> + <key>ant15</key> + <value></value> + </param> + <param> + <key>bw15</key> + <value>0</value> + </param> + <param> + <key>center_freq15</key> + <value>0</value> + </param> + <param> + <key>norm_gain15</key> + <value>False</value> + </param> + <param> + <key>gain15</key> + <value>0</value> + </param> + <param> + <key>ant16</key> + <value></value> + </param> + <param> + <key>bw16</key> + <value>0</value> + </param> + <param> + <key>center_freq16</key> + <value>0</value> + </param> + <param> + <key>norm_gain16</key> + <value>False</value> + </param> + <param> + <key>gain16</key> + <value>0</value> + </param> + <param> + <key>ant17</key> + <value></value> + </param> + <param> + <key>bw17</key> + <value>0</value> + </param> + <param> + <key>center_freq17</key> + <value>0</value> + </param> + <param> + <key>norm_gain17</key> + <value>False</value> + </param> + <param> + <key>gain17</key> + <value>0</value> + </param> + <param> + <key>ant18</key> + <value></value> + </param> + <param> + <key>bw18</key> + <value>0</value> + </param> + <param> + <key>center_freq18</key> + <value>0</value> + </param> + <param> + <key>norm_gain18</key> + <value>False</value> + </param> + <param> + <key>gain18</key> + <value>0</value> + </param> + <param> + <key>ant19</key> + <value></value> + </param> + <param> + <key>bw19</key> + <value>0</value> + </param> + <param> + <key>center_freq19</key> + <value>0</value> + </param> + <param> + <key>norm_gain19</key> + <value>False</value> + </param> + <param> + <key>gain19</key> + <value>0</value> + </param> + <param> + <key>ant1</key> + <value></value> + </param> + <param> + <key>bw1</key> + <value>0</value> + </param> + <param> + <key>center_freq1</key> + <value>0</value> + </param> + <param> + <key>norm_gain1</key> + <value>False</value> + </param> + <param> + <key>gain1</key> + <value>0</value> + </param> + <param> + <key>ant20</key> + <value></value> + </param> + <param> + <key>bw20</key> + <value>0</value> + </param> + <param> + <key>center_freq20</key> + <value>0</value> + </param> + <param> + <key>norm_gain20</key> + <value>False</value> + </param> + <param> + <key>gain20</key> + <value>0</value> + </param> + <param> + <key>ant21</key> + <value></value> + </param> + <param> + <key>bw21</key> + <value>0</value> + </param> + <param> + <key>center_freq21</key> + <value>0</value> + </param> + <param> + <key>norm_gain21</key> + <value>False</value> + </param> + <param> + <key>gain21</key> + <value>0</value> + </param> + <param> + <key>ant22</key> + <value></value> + </param> + <param> + <key>bw22</key> + <value>0</value> + </param> + <param> + <key>center_freq22</key> + <value>0</value> + </param> + <param> + <key>norm_gain22</key> + <value>False</value> + </param> + <param> + <key>gain22</key> + <value>0</value> + </param> + <param> + <key>ant23</key> + <value></value> + </param> + <param> + <key>bw23</key> + <value>0</value> + </param> + <param> + <key>center_freq23</key> + <value>0</value> + </param> + <param> + <key>norm_gain23</key> + <value>False</value> + </param> + <param> + <key>gain23</key> + <value>0</value> + </param> + <param> + <key>ant24</key> + <value></value> + </param> + <param> + <key>bw24</key> + <value>0</value> + </param> + <param> + <key>center_freq24</key> + <value>0</value> + </param> + <param> + <key>norm_gain24</key> + <value>False</value> + </param> + <param> + <key>gain24</key> + <value>0</value> + </param> + <param> + <key>ant25</key> + <value></value> + </param> + <param> + <key>bw25</key> + <value>0</value> + </param> + <param> + <key>center_freq25</key> + <value>0</value> + </param> + <param> + <key>norm_gain25</key> + <value>False</value> + </param> + <param> + <key>gain25</key> + <value>0</value> + </param> + <param> + <key>ant26</key> + <value></value> + </param> + <param> + <key>bw26</key> + <value>0</value> + </param> + <param> + <key>center_freq26</key> + <value>0</value> + </param> + <param> + <key>norm_gain26</key> + <value>False</value> + </param> + <param> + <key>gain26</key> + <value>0</value> + </param> + <param> + <key>ant27</key> + <value></value> + </param> + <param> + <key>bw27</key> + <value>0</value> + </param> + <param> + <key>center_freq27</key> + <value>0</value> + </param> + <param> + <key>norm_gain27</key> + <value>False</value> + </param> + <param> + <key>gain27</key> + <value>0</value> + </param> + <param> + <key>ant28</key> + <value></value> + </param> + <param> + <key>bw28</key> + <value>0</value> + </param> + <param> + <key>center_freq28</key> + <value>0</value> + </param> + <param> + <key>norm_gain28</key> + <value>False</value> + </param> + <param> + <key>gain28</key> + <value>0</value> + </param> + <param> + <key>ant29</key> + <value></value> + </param> + <param> + <key>bw29</key> + <value>0</value> + </param> + <param> + <key>center_freq29</key> + <value>0</value> + </param> + <param> + <key>norm_gain29</key> + <value>False</value> + </param> + <param> + <key>gain29</key> + <value>0</value> + </param> + <param> + <key>ant2</key> + <value></value> + </param> + <param> + <key>bw2</key> + <value>0</value> + </param> + <param> + <key>center_freq2</key> + <value>0</value> + </param> + <param> + <key>norm_gain2</key> + <value>False</value> + </param> + <param> + <key>gain2</key> + <value>0</value> + </param> + <param> + <key>ant30</key> + <value></value> + </param> + <param> + <key>bw30</key> + <value>0</value> + </param> + <param> + <key>center_freq30</key> + <value>0</value> + </param> + <param> + <key>norm_gain30</key> + <value>False</value> + </param> + <param> + <key>gain30</key> + <value>0</value> + </param> + <param> + <key>ant31</key> + <value></value> + </param> + <param> + <key>bw31</key> + <value>0</value> + </param> + <param> + <key>center_freq31</key> + <value>0</value> + </param> + <param> + <key>norm_gain31</key> + <value>False</value> + </param> + <param> + <key>gain31</key> + <value>0</value> + </param> + <param> + <key>ant3</key> + <value></value> + </param> + <param> + <key>bw3</key> + <value>0</value> + </param> + <param> + <key>center_freq3</key> + <value>0</value> + </param> + <param> + <key>norm_gain3</key> + <value>False</value> + </param> + <param> + <key>gain3</key> + <value>0</value> + </param> + <param> + <key>ant4</key> + <value></value> + </param> + <param> + <key>bw4</key> + <value>0</value> + </param> + <param> + <key>center_freq4</key> + <value>0</value> + </param> + <param> + <key>norm_gain4</key> + <value>False</value> + </param> + <param> + <key>gain4</key> + <value>0</value> + </param> + <param> + <key>ant5</key> + <value></value> + </param> + <param> + <key>bw5</key> + <value>0</value> + </param> + <param> + <key>center_freq5</key> + <value>0</value> + </param> + <param> + <key>norm_gain5</key> + <value>False</value> + </param> + <param> + <key>gain5</key> + <value>0</value> + </param> + <param> + <key>ant6</key> + <value></value> + </param> + <param> + <key>bw6</key> + <value>0</value> + </param> + <param> + <key>center_freq6</key> + <value>0</value> + </param> + <param> + <key>norm_gain6</key> + <value>False</value> + </param> + <param> + <key>gain6</key> + <value>0</value> + </param> + <param> + <key>ant7</key> + <value></value> + </param> + <param> + <key>bw7</key> + <value>0</value> + </param> + <param> + <key>center_freq7</key> + <value>0</value> + </param> + <param> + <key>norm_gain7</key> + <value>False</value> + </param> + <param> + <key>gain7</key> + <value>0</value> + </param> + <param> + <key>ant8</key> + <value></value> + </param> + <param> + <key>bw8</key> + <value>0</value> + </param> + <param> + <key>center_freq8</key> + <value>0</value> + </param> + <param> + <key>norm_gain8</key> + <value>False</value> + </param> + <param> + <key>gain8</key> + <value>0</value> + </param> + <param> + <key>ant9</key> + <value></value> + </param> + <param> + <key>bw9</key> + <value>0</value> + </param> + <param> + <key>center_freq9</key> + <value>0</value> + </param> + <param> + <key>norm_gain9</key> + <value>False</value> + </param> + <param> + <key>gain9</key> + <value>0</value> + </param> + <param> + <key>clock_rate</key> + <value>0.0</value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>dev_addr</key> + <value>""</value> + </param> + <param> + <key>dev_args</key> + <value>""</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(1232, 95)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>uhd_usrp_sink_0</value> + </param> + <param> + <key>type</key> + <value>fc32</value> + </param> + <param> + <key>clock_source0</key> + <value></value> + </param> + <param> + <key>sd_spec0</key> + <value></value> + </param> + <param> + <key>time_source0</key> + <value></value> + </param> + <param> + <key>clock_source1</key> + <value></value> + </param> + <param> + <key>sd_spec1</key> + <value></value> + </param> + <param> + <key>time_source1</key> + <value></value> + </param> + <param> + <key>clock_source2</key> + <value></value> + </param> + <param> + <key>sd_spec2</key> + <value></value> + </param> + <param> + <key>time_source2</key> + <value></value> + </param> + <param> + <key>clock_source3</key> + <value></value> + </param> + <param> + <key>sd_spec3</key> + <value></value> + </param> + <param> + <key>time_source3</key> + <value></value> + </param> + <param> + <key>clock_source4</key> + <value></value> + </param> + <param> + <key>sd_spec4</key> + <value></value> + </param> + <param> + <key>time_source4</key> + <value></value> + </param> + <param> + <key>clock_source5</key> + <value></value> + </param> + <param> + <key>sd_spec5</key> + <value></value> + </param> + <param> + <key>time_source5</key> + <value></value> + </param> + <param> + <key>clock_source6</key> + <value></value> + </param> + <param> + <key>sd_spec6</key> + <value></value> + </param> + <param> + <key>time_source6</key> + <value></value> + </param> + <param> + <key>clock_source7</key> + <value></value> + </param> + <param> + <key>sd_spec7</key> + <value></value> + </param> + <param> + <key>time_source7</key> + <value></value> + </param> + <param> + <key>nchan</key> + <value>1</value> + </param> + <param> + <key>num_mboards</key> + <value>1</value> + </param> + <param> + <key>samp_rate</key> + <value>samp_rate</value> + </param> + <param> + <key>hide_cmd_port</key> + <value>False</value> + </param> + <param> + <key>stream_args</key> + <value></value> + </param> + <param> + <key>stream_chans</key> + <value>[]</value> + </param> + <param> + <key>sync</key> + <value></value> + </param> + <param> + <key>len_tag_name</key> + <value></value> + </param> + <param> + <key>otw</key> + <value></value> + </param> + </block> + <block> + <key>uhd_usrp_source</key> + <param> + <key>alias</key> + <value></value> + </param> + <param> + <key>ant0</key> + <value></value> + </param> + <param> + <key>bw0</key> + <value>0</value> + </param> + <param> + <key>center_freq0</key> + <value>freq</value> + </param> + <param> + <key>dc_offs_enb0</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb0</key> + <value>""</value> + </param> + <param> + <key>norm_gain0</key> + <value>False</value> + </param> + <param> + <key>gain0</key> + <value>rxgain</value> + </param> + <param> + <key>ant10</key> + <value></value> + </param> + <param> + <key>bw10</key> + <value>0</value> + </param> + <param> + <key>center_freq10</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb10</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb10</key> + <value>""</value> + </param> + <param> + <key>norm_gain10</key> + <value>False</value> + </param> + <param> + <key>gain10</key> + <value>0</value> + </param> + <param> + <key>ant11</key> + <value></value> + </param> + <param> + <key>bw11</key> + <value>0</value> + </param> + <param> + <key>center_freq11</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb11</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb11</key> + <value>""</value> + </param> + <param> + <key>norm_gain11</key> + <value>False</value> + </param> + <param> + <key>gain11</key> + <value>0</value> + </param> + <param> + <key>ant12</key> + <value></value> + </param> + <param> + <key>bw12</key> + <value>0</value> + </param> + <param> + <key>center_freq12</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb12</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb12</key> + <value>""</value> + </param> + <param> + <key>norm_gain12</key> + <value>False</value> + </param> + <param> + <key>gain12</key> + <value>0</value> + </param> + <param> + <key>ant13</key> + <value></value> + </param> + <param> + <key>bw13</key> + <value>0</value> + </param> + <param> + <key>center_freq13</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb13</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb13</key> + <value>""</value> + </param> + <param> + <key>norm_gain13</key> + <value>False</value> + </param> + <param> + <key>gain13</key> + <value>0</value> + </param> + <param> + <key>ant14</key> + <value></value> + </param> + <param> + <key>bw14</key> + <value>0</value> + </param> + <param> + <key>center_freq14</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb14</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb14</key> + <value>""</value> + </param> + <param> + <key>norm_gain14</key> + <value>False</value> + </param> + <param> + <key>gain14</key> + <value>0</value> + </param> + <param> + <key>ant15</key> + <value></value> + </param> + <param> + <key>bw15</key> + <value>0</value> + </param> + <param> + <key>center_freq15</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb15</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb15</key> + <value>""</value> + </param> + <param> + <key>norm_gain15</key> + <value>False</value> + </param> + <param> + <key>gain15</key> + <value>0</value> + </param> + <param> + <key>ant16</key> + <value></value> + </param> + <param> + <key>bw16</key> + <value>0</value> + </param> + <param> + <key>center_freq16</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb16</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb16</key> + <value>""</value> + </param> + <param> + <key>norm_gain16</key> + <value>False</value> + </param> + <param> + <key>gain16</key> + <value>0</value> + </param> + <param> + <key>ant17</key> + <value></value> + </param> + <param> + <key>bw17</key> + <value>0</value> + </param> + <param> + <key>center_freq17</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb17</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb17</key> + <value>""</value> + </param> + <param> + <key>norm_gain17</key> + <value>False</value> + </param> + <param> + <key>gain17</key> + <value>0</value> + </param> + <param> + <key>ant18</key> + <value></value> + </param> + <param> + <key>bw18</key> + <value>0</value> + </param> + <param> + <key>center_freq18</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb18</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb18</key> + <value>""</value> + </param> + <param> + <key>norm_gain18</key> + <value>False</value> + </param> + <param> + <key>gain18</key> + <value>0</value> + </param> + <param> + <key>ant19</key> + <value></value> + </param> + <param> + <key>bw19</key> + <value>0</value> + </param> + <param> + <key>center_freq19</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb19</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb19</key> + <value>""</value> + </param> + <param> + <key>norm_gain19</key> + <value>False</value> + </param> + <param> + <key>gain19</key> + <value>0</value> + </param> + <param> + <key>ant1</key> + <value></value> + </param> + <param> + <key>bw1</key> + <value>0</value> + </param> + <param> + <key>center_freq1</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb1</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb1</key> + <value>""</value> + </param> + <param> + <key>norm_gain1</key> + <value>False</value> + </param> + <param> + <key>gain1</key> + <value>0</value> + </param> + <param> + <key>ant20</key> + <value></value> + </param> + <param> + <key>bw20</key> + <value>0</value> + </param> + <param> + <key>center_freq20</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb20</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb20</key> + <value>""</value> + </param> + <param> + <key>norm_gain20</key> + <value>False</value> + </param> + <param> + <key>gain20</key> + <value>0</value> + </param> + <param> + <key>ant21</key> + <value></value> + </param> + <param> + <key>bw21</key> + <value>0</value> + </param> + <param> + <key>center_freq21</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb21</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb21</key> + <value>""</value> + </param> + <param> + <key>norm_gain21</key> + <value>False</value> + </param> + <param> + <key>gain21</key> + <value>0</value> + </param> + <param> + <key>ant22</key> + <value></value> + </param> + <param> + <key>bw22</key> + <value>0</value> + </param> + <param> + <key>center_freq22</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb22</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb22</key> + <value>""</value> + </param> + <param> + <key>norm_gain22</key> + <value>False</value> + </param> + <param> + <key>gain22</key> + <value>0</value> + </param> + <param> + <key>ant23</key> + <value></value> + </param> + <param> + <key>bw23</key> + <value>0</value> + </param> + <param> + <key>center_freq23</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb23</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb23</key> + <value>""</value> + </param> + <param> + <key>norm_gain23</key> + <value>False</value> + </param> + <param> + <key>gain23</key> + <value>0</value> + </param> + <param> + <key>ant24</key> + <value></value> + </param> + <param> + <key>bw24</key> + <value>0</value> + </param> + <param> + <key>center_freq24</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb24</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb24</key> + <value>""</value> + </param> + <param> + <key>norm_gain24</key> + <value>False</value> + </param> + <param> + <key>gain24</key> + <value>0</value> + </param> + <param> + <key>ant25</key> + <value></value> + </param> + <param> + <key>bw25</key> + <value>0</value> + </param> + <param> + <key>center_freq25</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb25</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb25</key> + <value>""</value> + </param> + <param> + <key>norm_gain25</key> + <value>False</value> + </param> + <param> + <key>gain25</key> + <value>0</value> + </param> + <param> + <key>ant26</key> + <value></value> + </param> + <param> + <key>bw26</key> + <value>0</value> + </param> + <param> + <key>center_freq26</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb26</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb26</key> + <value>""</value> + </param> + <param> + <key>norm_gain26</key> + <value>False</value> + </param> + <param> + <key>gain26</key> + <value>0</value> + </param> + <param> + <key>ant27</key> + <value></value> + </param> + <param> + <key>bw27</key> + <value>0</value> + </param> + <param> + <key>center_freq27</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb27</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb27</key> + <value>""</value> + </param> + <param> + <key>norm_gain27</key> + <value>False</value> + </param> + <param> + <key>gain27</key> + <value>0</value> + </param> + <param> + <key>ant28</key> + <value></value> + </param> + <param> + <key>bw28</key> + <value>0</value> + </param> + <param> + <key>center_freq28</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb28</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb28</key> + <value>""</value> + </param> + <param> + <key>norm_gain28</key> + <value>False</value> + </param> + <param> + <key>gain28</key> + <value>0</value> + </param> + <param> + <key>ant29</key> + <value></value> + </param> + <param> + <key>bw29</key> + <value>0</value> + </param> + <param> + <key>center_freq29</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb29</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb29</key> + <value>""</value> + </param> + <param> + <key>norm_gain29</key> + <value>False</value> + </param> + <param> + <key>gain29</key> + <value>0</value> + </param> + <param> + <key>ant2</key> + <value></value> + </param> + <param> + <key>bw2</key> + <value>0</value> + </param> + <param> + <key>center_freq2</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb2</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb2</key> + <value>""</value> + </param> + <param> + <key>norm_gain2</key> + <value>False</value> + </param> + <param> + <key>gain2</key> + <value>0</value> + </param> + <param> + <key>ant30</key> + <value></value> + </param> + <param> + <key>bw30</key> + <value>0</value> + </param> + <param> + <key>center_freq30</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb30</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb30</key> + <value>""</value> + </param> + <param> + <key>norm_gain30</key> + <value>False</value> + </param> + <param> + <key>gain30</key> + <value>0</value> + </param> + <param> + <key>ant31</key> + <value></value> + </param> + <param> + <key>bw31</key> + <value>0</value> + </param> + <param> + <key>center_freq31</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb31</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb31</key> + <value>""</value> + </param> + <param> + <key>norm_gain31</key> + <value>False</value> + </param> + <param> + <key>gain31</key> + <value>0</value> + </param> + <param> + <key>ant3</key> + <value></value> + </param> + <param> + <key>bw3</key> + <value>0</value> + </param> + <param> + <key>center_freq3</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb3</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb3</key> + <value>""</value> + </param> + <param> + <key>norm_gain3</key> + <value>False</value> + </param> + <param> + <key>gain3</key> + <value>0</value> + </param> + <param> + <key>ant4</key> + <value></value> + </param> + <param> + <key>bw4</key> + <value>0</value> + </param> + <param> + <key>center_freq4</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb4</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb4</key> + <value>""</value> + </param> + <param> + <key>norm_gain4</key> + <value>False</value> + </param> + <param> + <key>gain4</key> + <value>0</value> + </param> + <param> + <key>ant5</key> + <value></value> + </param> + <param> + <key>bw5</key> + <value>0</value> + </param> + <param> + <key>center_freq5</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb5</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb5</key> + <value>""</value> + </param> + <param> + <key>norm_gain5</key> + <value>False</value> + </param> + <param> + <key>gain5</key> + <value>0</value> + </param> + <param> + <key>ant6</key> + <value></value> + </param> + <param> + <key>bw6</key> + <value>0</value> + </param> + <param> + <key>center_freq6</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb6</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb6</key> + <value>""</value> + </param> + <param> + <key>norm_gain6</key> + <value>False</value> + </param> + <param> + <key>gain6</key> + <value>0</value> + </param> + <param> + <key>ant7</key> + <value></value> + </param> + <param> + <key>bw7</key> + <value>0</value> + </param> + <param> + <key>center_freq7</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb7</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb7</key> + <value>""</value> + </param> + <param> + <key>norm_gain7</key> + <value>False</value> + </param> + <param> + <key>gain7</key> + <value>0</value> + </param> + <param> + <key>ant8</key> + <value></value> + </param> + <param> + <key>bw8</key> + <value>0</value> + </param> + <param> + <key>center_freq8</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb8</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb8</key> + <value>""</value> + </param> + <param> + <key>norm_gain8</key> + <value>False</value> + </param> + <param> + <key>gain8</key> + <value>0</value> + </param> + <param> + <key>ant9</key> + <value></value> + </param> + <param> + <key>bw9</key> + <value>0</value> + </param> + <param> + <key>center_freq9</key> + <value>0</value> + </param> + <param> + <key>dc_offs_enb9</key> + <value>""</value> + </param> + <param> + <key>iq_imbal_enb9</key> + <value>""</value> + </param> + <param> + <key>norm_gain9</key> + <value>False</value> + </param> + <param> + <key>gain9</key> + <value>0</value> + </param> + <param> + <key>clock_rate</key> + <value>0.0</value> + </param> + <param> + <key>comment</key> + <value></value> + </param> + <param> + <key>affinity</key> + <value></value> + </param> + <param> + <key>dev_addr</key> + <value>""</value> + </param> + <param> + <key>dev_args</key> + <value>""</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>_coordinate</key> + <value>(512, 462)</value> + </param> + <param> + <key>_rotation</key> + <value>0</value> + </param> + <param> + <key>id</key> + <value>uhd_usrp_source_0</value> + </param> + <param> + <key>maxoutbuf</key> + <value>0</value> + </param> + <param> + <key>clock_source0</key> + <value></value> + </param> + <param> + <key>sd_spec0</key> + <value></value> + </param> + <param> + <key>time_source0</key> + <value></value> + </param> + <param> + <key>clock_source1</key> + <value></value> + </param> + <param> + <key>sd_spec1</key> + <value></value> + </param> + <param> + <key>time_source1</key> + <value></value> + </param> + <param> + <key>clock_source2</key> + <value></value> + </param> + <param> + <key>sd_spec2</key> + <value></value> + </param> + <param> + <key>time_source2</key> + <value></value> + </param> + <param> + <key>clock_source3</key> + <value></value> + </param> + <param> + <key>sd_spec3</key> + <value></value> + </param> + <param> + <key>time_source3</key> + <value></value> + </param> + <param> + <key>clock_source4</key> + <value></value> + </param> + <param> + <key>sd_spec4</key> + <value></value> + </param> + <param> + <key>time_source4</key> + <value></value> + </param> + <param> + <key>clock_source5</key> + <value></value> + </param> + <param> + <key>sd_spec5</key> + <value></value> + </param> + <param> + <key>time_source5</key> + <value></value> + </param> + <param> + <key>clock_source6</key> + <value></value> + </param> + <param> + <key>sd_spec6</key> + <value></value> + </param> + <param> + <key>time_source6</key> + <value></value> + </param> + <param> + <key>clock_source7</key> + <value></value> + </param> + <param> + <key>sd_spec7</key> + <value></value> + </param> + <param> + <key>time_source7</key> + <value></value> + </param> + <param> + <key>minoutbuf</key> + <value>0</value> + </param> + <param> + <key>nchan</key> + <value>1</value> + </param> + <param> + <key>num_mboards</key> + <value>1</value> + </param> + <param> + <key>type</key> + <value>fc32</value> + </param> + <param> + <key>samp_rate</key> + <value>samp_rate</value> + </param> + <param> + <key>hide_cmd_port</key> + <value>False</value> + </param> + <param> + <key>stream_args</key> + <value></value> + </param> + <param> + <key>stream_chans</key> + <value>[]</value> + </param> + <param> + <key>sync</key> + <value></value> + </param> + <param> + <key>otw</key> + <value></value> + </param> + </block> + <connection> + <source_block_id>analog_const_source_x_0</source_block_id> + <sink_block_id>blocks_add_xx_1</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>blocks_add_xx_1</source_block_id> + <sink_block_id>uhd_usrp_sink_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>blocks_file_source_0</source_block_id> + <sink_block_id>blocks_multiply_const_vxx_1</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>blocks_message_burst_source_0_0</source_block_id> + <sink_block_id>blks2_tcp_sink_1</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>blocks_multiply_const_vxx_1</source_block_id> + <sink_block_id>blocks_add_xx_1</sink_block_id> + <source_key>0</source_key> + <sink_key>1</sink_key> + </connection> + <connection> + <source_block_id>logpwrfft_x_0</source_block_id> + <sink_block_id>blks2_tcp_sink_1_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> + <connection> + <source_block_id>uhd_amsg_source_0_0</source_block_id> + <sink_block_id>blocks_message_burst_source_0_0</sink_block_id> + <source_key>msg</source_key> + <sink_key>msg</sink_key> + </connection> + <connection> + <source_block_id>uhd_usrp_source_0</source_block_id> + <sink_block_id>logpwrfft_x_0</sink_block_id> + <source_key>0</source_key> + <sink_key>0</sink_key> + </connection> +</flow_graph> @@ -11,6 +11,8 @@ "import numpy as np\n", "import time\n", "import src.gen_source as gen_source\n", + "from guppy import hpy \n", + "import mydab\n", "\n", "import tcp_async\n", "import tcp_sync\n", @@ -29,6 +31,7 @@ " reload(tcp_async)\n", " reload(tcp_sync)\n", " reload(gen_source)\n", + " reload(mydab)\n", "except:\n", " pass" ] @@ -124,38 +127,114 @@ "metadata": {}, "outputs": [], "source": [ - "top.set_txgain(85)\n", - "for x2 in np.linspace(-0.15, 0.15, num = 15):\n", + "import itertools\n", + "x = np.linspace(-0.1, 0.1, num = 5)\n", + "l = list(itertools.product(x,x,x,x,x))\n", + "mag = [sum(map(lambda x:x*x,el)) for el in l]\n", + "idx = list(np.argsort(mag))\n", + "l = list(np.array(l)[idx])\n", + "len(l)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "top.set_txgain(84)\n", + "sync.has_msg()\n", + "msgs = np.array(sync.get_msgs(2))\n", + "fft = np.fft.fftshift(msgs[0])\n", + "#plt.plot(fft)\n", + "#plt.plot((4000 - f, 4000 -f),(-180,-40))\n", + "\n", + "mydab.calc_signal_sholder_ratio(fft, fft_size, samp_rate)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def meas(i):\n", + " import sys\n", + " sys.stdout.write(str(i) + \" \")\n", + " top.set_txgain(i)\n", + " sync.has_msg()\n", + " msgs = np.array(sync.get_msgs(10))\n", + " \n", + " res = []\n", + " for msg in msgs:\n", + " fft = np.fft.fftshift(msg)\n", + " res.append(mydab.calc_signal_sholder_ratio(fft, fft_size, samp_rate))\n", + " return np.mean(res)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "res = [meas(i) for i in range(89)]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "plt.plot(res)\n", + "plt.title(\"DAB sholders\")\n", + "plt.xlabel(\"tx gain [db]\")\n", + "plt.ylabel(\"signal - sholder [db]\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "top.set_txgain(84)\n", + "for el in l:\n", " t2 = time.time()\n", - " for x3 in np.linspace(-0.15, 0.15, num = 14):\n", - " for x4 in np.linspace(-0.15, 0.15, num = 7):\n", - " path = gen_source.gen_file(frequency_0=frequency_0,\n", - " frequency_1=frequency_1,\n", - " samp_rate=samp_rate,\n", - " x2 = x2,\n", - " x3 = x3,\n", - " x4 = x4,\n", - " path='./np_twotone')\n", - " #a_load = np.fromfile(path, dtype=np.complex64)\n", - " #plt.plot(a_load.real[0:100])\n", - " \n", - " sync.has_msg()\n", - " np.array(sync.get_msgs(2))\n", - " msgs = np.array(sync.get_msgs(5))\n", - " inter_mod_avg = (np.max(score(msgs[0], frequency_0, frequency_1, samp_rate)) \n", - " + np.max(score(msgs[1], frequency_0, frequency_1, samp_rate)) \n", - " + np.max(score(msgs[2], frequency_0, frequency_1, samp_rate)) \n", - " + np.max(score(msgs[3], frequency_0, frequency_1, samp_rate)) \n", - " + np.max(score(msgs[4], frequency_0, frequency_1, samp_rate)))/5\n", - " msg = msgs[0]\n", - " \n", - " \n", - " print(\"inter_mod %.3f, x_2 %.3f, x_3 %.3f\" % (inter_mod_avg, x2, x3))\n", - " \n", - " plt.plot(msg)\n", - " plt.savefig(\"/tmp/out/inter_mod_%.3f_x_2_%.3f_x_3_%.3f_x_4_%.3f.png\" % (inter_mod_avg, x2, x3, x4))\n", - " plt.clf()\n", - " print(time.time() - t2)" + " path = gen_source.gen_file(frequency_0=frequency_0,\n", + " frequency_1=frequency_1,\n", + " samp_rate=samp_rate,\n", + " coefs = el,\n", + " path='./np_twotone',\n", + " count = 10\n", + " )\n", + " #a_load = np.fromfile(path, dtype=np.complex64)\n", + " #plt.plot(a_load.real[0:100])\n", + " \n", + " sync.has_msg()\n", + " np.array(sync.get_msgs(2))\n", + " msgs = np.array(sync.get_msgs(5))\n", + " scores = [np.max(score(msg, frequency_0, frequency_1, samp_rate)) for msg in msgs]\n", + " inter_mod_avg = np.mean(scores)\n", + " inter_mod_var = np.var(scores)\n", + " msg = msgs[0]\n", + " \n", + " \n", + " param_str = \"_\".join([\"%.3f\" % f for f in el])\n", + " print(\"inter_mod %.3f +- %.3f, %s\" % (inter_mod_avg, inter_mod_var, param_str))\n", + " \n", + " plt.plot(msg)\n", + " plt.savefig(\"/tmp/out/inter_mod_%.3f_+-%.3f_%s.png\" % (inter_mod_avg, inter_mod_var, param_str))\n", + " plt.clf()\n", + " \n", + " a = np.fromfile(\"./np_twotone\", dtype=np.complex64)\n", + " plt.plot(a.real)\n", + " plt.savefig(\"/tmp/out/inter_mod_%.3f_+-%.3f_%s_wave.png\" % (inter_mod_avg, inter_mod_var, param_str))\n", + " plt.clf()\n", + " #h = hpy() \n", + " #print h.heap()\n", + " print(time.time() - t2)" ] }, { @@ -207,6 +286,41 @@ "execution_count": null, "metadata": {}, "outputs": [], + "source": [ + "gen_source.gen_file_d(800000, 1000000, 0, 0.5, 0, 0, 4000000, count = 5)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "a2 = np.fromfile(\"./np_twotone\", dtype=np.complex64)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "plt.plot(a.real)\n", + "plt.plot(a2.real)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], "source": [] }, { diff --git a/src/gen_source.py b/src/gen_source.py index a8c2ef2..7620bc3 100644 --- a/src/gen_source.py +++ b/src/gen_source.py @@ -6,24 +6,91 @@ def complex_exp(freq, samp_rate, periods, phase_deg=0): t = np.arange(t_max) fac = t / samp_rate * freq phase = 1j * phase_deg/360*2*np.pi - ret = np.exp(phase + 1j * 2 * np.pi * fac - 1j * np.pi / 2, dtype=np.complex64) + ret = np.exp(phase + 1j * 2 * np.pi * fac - 1j * np.pi / 2, dtype=np.complex128) return ret ret = complex_exp(10,40,2) -def gen_file(frequency_0, frequency_1, x1 = 0, x2 = 0, x3 = 0, x4 = 0, samp_rate = 4000000, path = "./np_twotone"): - tone_0 = complex_exp(frequency_0, samp_rate, samp_rate/frequency_1) - tone_1 = complex_exp(frequency_1, samp_rate, samp_rate/frequency_0) +def gen_file(frequency_0, frequency_1, coefs = [], samp_rate = 4000000, path = "./np_twotone", count = 1): + tone_0 = complex_exp(frequency_0, samp_rate, samp_rate/frequency_1 * count) + tone_1 = complex_exp(frequency_1, samp_rate, samp_rate/frequency_0 * count) + + min_len = min(tone_0.shape[0], tone_1.shape[0]) + two_tone = (tone_0[0:min_len] + tone_1[0:min_len]) + res = two_tone + + for idx, coef in enumerate(coefs): + res += two_tone * np.abs(two_tone)**(idx+1) * coef #+1 because first correction term is squared + + res = res / np.max(res) * 0.9 + + res = res.astype(np.complex64) + res.tofile(path) + + a_load = np.fromfile(path, dtype=np.complex64) + assert(np.isclose(a_load, res).all()), "Inconsistent stored file" + + return path + +def gen_file_d(frequency_0, frequency_1, x1 = 0, x2 = 0, x3 = 0, x4 = 0, samp_rate = 4000000, path = "./np_twotone", count = 1): + tone_0 = complex_exp(frequency_0, samp_rate, samp_rate/frequency_1 * count) + tone_1 = complex_exp(frequency_1, samp_rate, samp_rate/frequency_0 * count) + + min_len = min(tone_0.shape[0], tone_1.shape[0]) + two_tone = (tone_0[0:min_len] + tone_1[0:min_len]) + + two_tone_1 = np.gradient(two_tone) + two_tone_2 = np.gradient(two_tone_1) + two_tone_3 = np.gradient(two_tone_2) + two_tone_4 = np.gradient(two_tone_3) + + two_tone = two_tone \ + + two_tone_1 * x1 \ + + two_tone_2 * x2 \ + + two_tone_3 * x3 \ + + two_tone_4 * x4 + + two_tone = two_tone / np.max(two_tone) * 0.9 + + two_tone = two_tone.astype(np.complex64) + two_tone.tofile(path) + + a_load = np.fromfile(path, dtype=np.complex64) + assert(np.isclose(a_load, two_tone).all()), "Inconsistent stored file" + + return path + +def gen_file_i(frequency_0, frequency_1, x1 = 0, x2 = 0, x3 = 0, x4 = 0, samp_rate = 4000000, path = "./np_twotone", count = 1): + if frequency_0 > frequency_1: + f = frequency_0 + frequency_1 = frequency_0 + frequency_0 = f + + tone_0 = complex_exp(frequency_0, samp_rate, samp_rate/frequency_1 * count) + tone_1 = complex_exp(frequency_1, samp_rate, samp_rate/frequency_0 * count) + + df = frequency_1 - frequency_0 + tone_0_0 = complex_exp(frequency_0 - df, samp_rate, samp_rate/frequency_1 * count, pahse = x2) + tone_0_1 = complex_exp(frequency_1 + df, samp_rate, samp_rate/frequency_1 * count, pahse = x2) + + + min_len = min(tone_0.shape[0], tone_1.shape[0]) + two_tone = (tone_0[0:min_len] + tone_1[0:min_len]) + + two_tone_1 = np.gradient(two_tone) + two_tone_2 = np.gradient(two_tone_1) + two_tone_3 = np.gradient(two_tone_2) + two_tone_4 = np.gradient(two_tone_3) - two_tone = (tone_0 + tone_1) two_tone = two_tone \ - + np.abs(two_tone)**1 * x1 \ - + np.abs(two_tone)**2 * x2 \ - + np.abs(two_tone)**3 * x3 \ - + np.abs(two_tone)**4 * x4 + + two_tone_1 * x1 \ + + two_tone_2 * x2 \ + + two_tone_3 * x3 \ + + two_tone_4 * x4 two_tone = two_tone / np.max(two_tone) * 0.9 + two_tone = two_tone.astype(np.complex64) two_tone.tofile(path) a_load = np.fromfile(path, dtype=np.complex64) |