diff --git a/examples/README b/examples/README
index c012bdfa..7c87b768 100644
--- a/examples/README
+++ b/examples/README
@@ -1,4 +1,4 @@
-It is considered good practice to add examples in here to demonstrate the
-functionality of your OOT module. Python scripts, GRC flow graphs or other
-code can go here.
+simple_top.grc - all-in-one receiving block usage sample.
+dab_mer.grc - Hierarchical block, which counts MER.
+dab_measurement_graph_rtlsdr.grc - Top block to make measurements of DAB signal. Reception by RTL-SDR Stick.
diff --git a/examples/dab_measurement_graph_rtlsdr.grc b/examples/dab_measurement_graph_rtlsdr.grc
new file mode 100644
index 00000000..5f6c2ca0
--- /dev/null
+++ b/examples/dab_measurement_graph_rtlsdr.grc
@@ -0,0 +1,3132 @@
+
+
+
+ Mon Jan 25 20:55:55 2016
+
+ options
+
+ author
+ Serge G
+
+
+ window_size
+ 1280, 1024
+
+
+ category
+ Custom
+
+
+ comment
+
+
+
+ description
+ Constellation+MER+Spectrum (all blocks are extracted)
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (10, 10)
+
+
+ _rotation
+ 0
+
+
+ generate_options
+ wx_gui
+
+
+ hier_block_src_path
+ .:
+
+
+ id
+ dab_whole_graph
+
+
+ max_nouts
+ 0
+
+
+ qt_qss_theme
+
+
+
+ realtime_scheduling
+
+
+
+ run_command
+ {python} -u {filename}
+
+
+ run_options
+ prompt
+
+
+ run
+ True
+
+
+ thread_safe_setters
+
+
+
+ title
+ DAB Measurement tool
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ 0
+
+
+ _coordinate
+ (1101, 9)
+
+
+ _rotation
+ 0
+
+
+ id
+ cp_gap__
+
+
+ value
+ [30, 10, 5, 20]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (1104, 339)
+
+
+ _rotation
+ 0
+
+
+ id
+ cp_gap__
+
+
+ value
+ [252, 63, 31, 124]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (912, 201)
+
+
+ _rotation
+ 0
+
+
+ id
+ cp_length__
+
+
+ value
+ [504, 126, 63, 252]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (8, 123)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_mode
+
+
+ value
+ 1
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (911, 138)
+
+
+ _rotation
+ 0
+
+
+ id
+ fft_length__
+
+
+ value
+ [2048, 512, 256, 1024]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (911, 77)
+
+
+ _rotation
+ 0
+
+
+ id
+ frame_length__
+
+
+ value
+ [196608, 49152, 49152, 98304]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1101, 201)
+
+
+ _rotation
+ 0
+
+
+ id
+ ns_length__
+
+
+ value
+ [2656, 664, 345, 1328]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (910, 12)
+
+
+ _rotation
+ 0
+
+
+ id
+ num_carriers__
+
+
+ value
+ [1536, 384, 192, 768]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (104, 123)
+
+
+ _rotation
+ 0
+
+
+ id
+ samp_rate
+
+
+ value
+ 2048000
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (912, 266)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbol_length__
+
+
+ value
+ [2552, 638, 319, 1276]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1100, 72)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbols_for_ffs_estimation__
+
+
+ value
+ [8,8,16,8]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1099, 268)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbols_for_magnitude_equalization__
+
+
+ value
+ [6,6,12,6]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1101, 135)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbols_per_frame__
+
+
+ value
+ [76, 76, 153, 76]
+
+
+
+ analog_frequency_modulator_fc
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (736, 251)
+
+
+ _rotation
+ 0
+
+
+ id
+ analog_frequency_modulator_fc_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ sensitivity
+ 1
+
+
+
+ blocks_complex_to_mag_squared
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (241, 9)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_complex_to_mag_squared_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ vlen
+ 1
+
+
+
+ blocks_delay
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ delay
+ (fft_length__[dab_mode-1]+cp_length__[dab_mode-1])*symbols_for_ffs_estimation__[dab_mode-1]
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (528, 403)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_delay_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 4096
+
+
+ num_ports
+ 1
+
+
+ type
+ complex
+
+
+ vlen
+ 1
+
+
+
+ blocks_delay
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ delay
+ (fft_length__[dab_mode-1]+cp_length__[dab_mode-1])*symbols_for_ffs_estimation__[dab_mode-1]
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (528, 483)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_delay_0_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 4096
+
+
+ num_ports
+ 1
+
+
+ type
+ byte
+
+
+ vlen
+ 1
+
+
+
+ blocks_multiply_const_vxx
+
+ alias
+
+
+
+ comment
+
+
+
+ const
+ -1
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (266, 95)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_multiply_const_vxx_0
+
+
+ type
+ float
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ vlen
+ 1
+
+
+
+ blocks_multiply_xx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (785, 366)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_multiply_xx_0
+
+
+ type
+ complex
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_inputs
+ 2
+
+
+ vlen
+ 1
+
+
+
+ blocks_null_sink
+
+ alias
+
+
+
+ bus_conns
+ [[0,],]
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (576, 713)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_null_sink_0
+
+
+ type
+ byte
+
+
+ num_inputs
+ 1
+
+
+ vlen
+ 1
+
+
+
+ blocks_peak_detector_xb
+
+ alpha
+ 0.0001
+
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (256, 147)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_peak_detector_xb_0_0
+
+
+ type
+ float
+
+
+ look_ahead
+ 10
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ threshold_factor_fall
+ 0.7
+
+
+ threshold_factor_rise
+ 0.6
+
+
+
+ blocks_vector_to_stream
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (737, 640)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_vector_to_stream_0
+
+
+ type
+ complex
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_items
+ 1536
+
+
+ vlen
+ 1
+
+
+
+ dab_diff_phasor_vcc
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (279, 613)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_diff_phasor_vcc_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_carriers
+ num_carriers__[dab_mode-1]
+
+
+
+ dab_mer
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (744, 697)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_mer_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+
+ dab_moving_sum_ff
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (266, 48)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_moving_sum_ff_0
+
+
+ length
+ ns_length__[dab_mode-1]
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+
+ dab_ofdm_coarse_frequency_correct
+
+ alias
+
+
+
+ cp_length
+ cp_length__[dab_mode-1]
+
+
+ num_carriers
+ num_carriers__[dab_mode-1]
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (67, 651)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_ofdm_coarse_frequency_correct_0
+
+
+ fft_length
+ fft_length__[dab_mode-1]
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+
+ dab_ofdm_ffe_all_in_one
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ fft_length
+ fft_length__[dab_mode-1]
+
+
+ _coordinate
+ (528, 219)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_ofdm_ffe_all_in_one_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_symbols
+ symbols_for_ffs_estimation__[dab_mode-1]
+
+
+ sample_rate
+ samp_rate
+
+
+ symbol_length
+ fft_length__[dab_mode-1]+cp_length__[dab_mode-1]
+
+
+ alpha
+ 0.5
+
+
+
+ dab_ofdm_remove_first_symbol_vcc
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (470, 642)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_ofdm_remove_first_symbol_vcc_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_carriers
+ num_carriers__[dab_mode-1]
+
+
+
+ dab_ofdm_sampler
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (709, 447)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_ofdm_sampler_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ cp_length
+ cp_length__[dab_mode-1]
+
+
+ fft_length
+ fft_length__[dab_mode-1]
+
+
+ gap
+ cp_gap__[dab_mode-1]
+
+
+ symbols_per_frame
+ symbols_per_frame__[dab_mode-1]
+
+
+
+ fft_vxx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ fft_size
+ fft_length__[dab_mode-1]
+
+
+ forward
+ True
+
+
+ _coordinate
+ (944, 419)
+
+
+ _rotation
+ 0
+
+
+ id
+ fft_vxx_0
+
+
+ type
+ complex
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ nthreads
+ 4
+
+
+ shift
+ True
+
+
+ window
+ []
+
+
+
+ rtlsdr_source
+
+ alias
+
+
+
+ ant0
+
+
+
+ bb_gain0
+ 20
+
+
+ bw0
+ 0
+
+
+ dc_offset_mode0
+ 0
+
+
+ corr0
+ 68
+
+
+ freq0
+ 194064e3
+
+
+ gain_mode0
+ False
+
+
+ if_gain0
+ 20
+
+
+ iq_balance_mode0
+ 0
+
+
+ gain0
+ 30
+
+
+ ant10
+
+
+
+ bb_gain10
+ 20
+
+
+ bw10
+ 0
+
+
+ dc_offset_mode10
+ 0
+
+
+ corr10
+ 0
+
+
+ freq10
+ 100e6
+
+
+ gain_mode10
+ False
+
+
+ if_gain10
+ 20
+
+
+ iq_balance_mode10
+ 0
+
+
+ gain10
+ 10
+
+
+ ant11
+
+
+
+ bb_gain11
+ 20
+
+
+ bw11
+ 0
+
+
+ dc_offset_mode11
+ 0
+
+
+ corr11
+ 0
+
+
+ freq11
+ 100e6
+
+
+ gain_mode11
+ False
+
+
+ if_gain11
+ 20
+
+
+ iq_balance_mode11
+ 0
+
+
+ gain11
+ 10
+
+
+ ant12
+
+
+
+ bb_gain12
+ 20
+
+
+ bw12
+ 0
+
+
+ dc_offset_mode12
+ 0
+
+
+ corr12
+ 0
+
+
+ freq12
+ 100e6
+
+
+ gain_mode12
+ False
+
+
+ if_gain12
+ 20
+
+
+ iq_balance_mode12
+ 0
+
+
+ gain12
+ 10
+
+
+ ant13
+
+
+
+ bb_gain13
+ 20
+
+
+ bw13
+ 0
+
+
+ dc_offset_mode13
+ 0
+
+
+ corr13
+ 0
+
+
+ freq13
+ 100e6
+
+
+ gain_mode13
+ False
+
+
+ if_gain13
+ 20
+
+
+ iq_balance_mode13
+ 0
+
+
+ gain13
+ 10
+
+
+ ant14
+
+
+
+ bb_gain14
+ 20
+
+
+ bw14
+ 0
+
+
+ dc_offset_mode14
+ 0
+
+
+ corr14
+ 0
+
+
+ freq14
+ 100e6
+
+
+ gain_mode14
+ False
+
+
+ if_gain14
+ 20
+
+
+ iq_balance_mode14
+ 0
+
+
+ gain14
+ 10
+
+
+ ant15
+
+
+
+ bb_gain15
+ 20
+
+
+ bw15
+ 0
+
+
+ dc_offset_mode15
+ 0
+
+
+ corr15
+ 0
+
+
+ freq15
+ 100e6
+
+
+ gain_mode15
+ False
+
+
+ if_gain15
+ 20
+
+
+ iq_balance_mode15
+ 0
+
+
+ gain15
+ 10
+
+
+ ant16
+
+
+
+ bb_gain16
+ 20
+
+
+ bw16
+ 0
+
+
+ dc_offset_mode16
+ 0
+
+
+ corr16
+ 0
+
+
+ freq16
+ 100e6
+
+
+ gain_mode16
+ False
+
+
+ if_gain16
+ 20
+
+
+ iq_balance_mode16
+ 0
+
+
+ gain16
+ 10
+
+
+ ant17
+
+
+
+ bb_gain17
+ 20
+
+
+ bw17
+ 0
+
+
+ dc_offset_mode17
+ 0
+
+
+ corr17
+ 0
+
+
+ freq17
+ 100e6
+
+
+ gain_mode17
+ False
+
+
+ if_gain17
+ 20
+
+
+ iq_balance_mode17
+ 0
+
+
+ gain17
+ 10
+
+
+ ant18
+
+
+
+ bb_gain18
+ 20
+
+
+ bw18
+ 0
+
+
+ dc_offset_mode18
+ 0
+
+
+ corr18
+ 0
+
+
+ freq18
+ 100e6
+
+
+ gain_mode18
+ False
+
+
+ if_gain18
+ 20
+
+
+ iq_balance_mode18
+ 0
+
+
+ gain18
+ 10
+
+
+ ant19
+
+
+
+ bb_gain19
+ 20
+
+
+ bw19
+ 0
+
+
+ dc_offset_mode19
+ 0
+
+
+ corr19
+ 0
+
+
+ freq19
+ 100e6
+
+
+ gain_mode19
+ False
+
+
+ if_gain19
+ 20
+
+
+ iq_balance_mode19
+ 0
+
+
+ gain19
+ 10
+
+
+ ant1
+
+
+
+ bb_gain1
+ 20
+
+
+ bw1
+ 0
+
+
+ dc_offset_mode1
+ 0
+
+
+ corr1
+ 0
+
+
+ freq1
+ 100e6
+
+
+ gain_mode1
+ False
+
+
+ if_gain1
+ 20
+
+
+ iq_balance_mode1
+ 0
+
+
+ gain1
+ 10
+
+
+ ant20
+
+
+
+ bb_gain20
+ 20
+
+
+ bw20
+ 0
+
+
+ dc_offset_mode20
+ 0
+
+
+ corr20
+ 0
+
+
+ freq20
+ 100e6
+
+
+ gain_mode20
+ False
+
+
+ if_gain20
+ 20
+
+
+ iq_balance_mode20
+ 0
+
+
+ gain20
+ 10
+
+
+ ant21
+
+
+
+ bb_gain21
+ 20
+
+
+ bw21
+ 0
+
+
+ dc_offset_mode21
+ 0
+
+
+ corr21
+ 0
+
+
+ freq21
+ 100e6
+
+
+ gain_mode21
+ False
+
+
+ if_gain21
+ 20
+
+
+ iq_balance_mode21
+ 0
+
+
+ gain21
+ 10
+
+
+ ant22
+
+
+
+ bb_gain22
+ 20
+
+
+ bw22
+ 0
+
+
+ dc_offset_mode22
+ 0
+
+
+ corr22
+ 0
+
+
+ freq22
+ 100e6
+
+
+ gain_mode22
+ False
+
+
+ if_gain22
+ 20
+
+
+ iq_balance_mode22
+ 0
+
+
+ gain22
+ 10
+
+
+ ant23
+
+
+
+ bb_gain23
+ 20
+
+
+ bw23
+ 0
+
+
+ dc_offset_mode23
+ 0
+
+
+ corr23
+ 0
+
+
+ freq23
+ 100e6
+
+
+ gain_mode23
+ False
+
+
+ if_gain23
+ 20
+
+
+ iq_balance_mode23
+ 0
+
+
+ gain23
+ 10
+
+
+ ant24
+
+
+
+ bb_gain24
+ 20
+
+
+ bw24
+ 0
+
+
+ dc_offset_mode24
+ 0
+
+
+ corr24
+ 0
+
+
+ freq24
+ 100e6
+
+
+ gain_mode24
+ False
+
+
+ if_gain24
+ 20
+
+
+ iq_balance_mode24
+ 0
+
+
+ gain24
+ 10
+
+
+ ant25
+
+
+
+ bb_gain25
+ 20
+
+
+ bw25
+ 0
+
+
+ dc_offset_mode25
+ 0
+
+
+ corr25
+ 0
+
+
+ freq25
+ 100e6
+
+
+ gain_mode25
+ False
+
+
+ if_gain25
+ 20
+
+
+ iq_balance_mode25
+ 0
+
+
+ gain25
+ 10
+
+
+ ant26
+
+
+
+ bb_gain26
+ 20
+
+
+ bw26
+ 0
+
+
+ dc_offset_mode26
+ 0
+
+
+ corr26
+ 0
+
+
+ freq26
+ 100e6
+
+
+ gain_mode26
+ False
+
+
+ if_gain26
+ 20
+
+
+ iq_balance_mode26
+ 0
+
+
+ gain26
+ 10
+
+
+ ant27
+
+
+
+ bb_gain27
+ 20
+
+
+ bw27
+ 0
+
+
+ dc_offset_mode27
+ 0
+
+
+ corr27
+ 0
+
+
+ freq27
+ 100e6
+
+
+ gain_mode27
+ False
+
+
+ if_gain27
+ 20
+
+
+ iq_balance_mode27
+ 0
+
+
+ gain27
+ 10
+
+
+ ant28
+
+
+
+ bb_gain28
+ 20
+
+
+ bw28
+ 0
+
+
+ dc_offset_mode28
+ 0
+
+
+ corr28
+ 0
+
+
+ freq28
+ 100e6
+
+
+ gain_mode28
+ False
+
+
+ if_gain28
+ 20
+
+
+ iq_balance_mode28
+ 0
+
+
+ gain28
+ 10
+
+
+ ant29
+
+
+
+ bb_gain29
+ 20
+
+
+ bw29
+ 0
+
+
+ dc_offset_mode29
+ 0
+
+
+ corr29
+ 0
+
+
+ freq29
+ 100e6
+
+
+ gain_mode29
+ False
+
+
+ if_gain29
+ 20
+
+
+ iq_balance_mode29
+ 0
+
+
+ gain29
+ 10
+
+
+ ant2
+
+
+
+ bb_gain2
+ 20
+
+
+ bw2
+ 0
+
+
+ dc_offset_mode2
+ 0
+
+
+ corr2
+ 0
+
+
+ freq2
+ 100e6
+
+
+ gain_mode2
+ False
+
+
+ if_gain2
+ 20
+
+
+ iq_balance_mode2
+ 0
+
+
+ gain2
+ 10
+
+
+ ant30
+
+
+
+ bb_gain30
+ 20
+
+
+ bw30
+ 0
+
+
+ dc_offset_mode30
+ 0
+
+
+ corr30
+ 0
+
+
+ freq30
+ 100e6
+
+
+ gain_mode30
+ False
+
+
+ if_gain30
+ 20
+
+
+ iq_balance_mode30
+ 0
+
+
+ gain30
+ 10
+
+
+ ant31
+
+
+
+ bb_gain31
+ 20
+
+
+ bw31
+ 0
+
+
+ dc_offset_mode31
+ 0
+
+
+ corr31
+ 0
+
+
+ freq31
+ 100e6
+
+
+ gain_mode31
+ False
+
+
+ if_gain31
+ 20
+
+
+ iq_balance_mode31
+ 0
+
+
+ gain31
+ 10
+
+
+ ant3
+
+
+
+ bb_gain3
+ 20
+
+
+ bw3
+ 0
+
+
+ dc_offset_mode3
+ 0
+
+
+ corr3
+ 0
+
+
+ freq3
+ 100e6
+
+
+ gain_mode3
+ False
+
+
+ if_gain3
+ 20
+
+
+ iq_balance_mode3
+ 0
+
+
+ gain3
+ 10
+
+
+ ant4
+
+
+
+ bb_gain4
+ 20
+
+
+ bw4
+ 0
+
+
+ dc_offset_mode4
+ 0
+
+
+ corr4
+ 0
+
+
+ freq4
+ 100e6
+
+
+ gain_mode4
+ False
+
+
+ if_gain4
+ 20
+
+
+ iq_balance_mode4
+ 0
+
+
+ gain4
+ 10
+
+
+ ant5
+
+
+
+ bb_gain5
+ 20
+
+
+ bw5
+ 0
+
+
+ dc_offset_mode5
+ 0
+
+
+ corr5
+ 0
+
+
+ freq5
+ 100e6
+
+
+ gain_mode5
+ False
+
+
+ if_gain5
+ 20
+
+
+ iq_balance_mode5
+ 0
+
+
+ gain5
+ 10
+
+
+ ant6
+
+
+
+ bb_gain6
+ 20
+
+
+ bw6
+ 0
+
+
+ dc_offset_mode6
+ 0
+
+
+ corr6
+ 0
+
+
+ freq6
+ 100e6
+
+
+ gain_mode6
+ False
+
+
+ if_gain6
+ 20
+
+
+ iq_balance_mode6
+ 0
+
+
+ gain6
+ 10
+
+
+ ant7
+
+
+
+ bb_gain7
+ 20
+
+
+ bw7
+ 0
+
+
+ dc_offset_mode7
+ 0
+
+
+ corr7
+ 0
+
+
+ freq7
+ 100e6
+
+
+ gain_mode7
+ False
+
+
+ if_gain7
+ 20
+
+
+ iq_balance_mode7
+ 0
+
+
+ gain7
+ 10
+
+
+ ant8
+
+
+
+ bb_gain8
+ 20
+
+
+ bw8
+ 0
+
+
+ dc_offset_mode8
+ 0
+
+
+ corr8
+ 0
+
+
+ freq8
+ 100e6
+
+
+ gain_mode8
+ False
+
+
+ if_gain8
+ 20
+
+
+ iq_balance_mode8
+ 0
+
+
+ gain8
+ 10
+
+
+ ant9
+
+
+
+ bb_gain9
+ 20
+
+
+ bw9
+ 0
+
+
+ dc_offset_mode9
+ 0
+
+
+ corr9
+ 0
+
+
+ freq9
+ 100e6
+
+
+ gain_mode9
+ False
+
+
+ if_gain9
+ 20
+
+
+ iq_balance_mode9
+ 0
+
+
+ gain9
+ 10
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ args
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (0, 243)
+
+
+ _rotation
+ 0
+
+
+ id
+ rtlsdr_source_0
+
+
+ maxoutbuf
+ 0
+
+
+ clock_source0
+
+
+
+ time_source0
+
+
+
+ clock_source1
+
+
+
+ time_source1
+
+
+
+ clock_source2
+
+
+
+ time_source2
+
+
+
+ clock_source3
+
+
+
+ time_source3
+
+
+
+ clock_source4
+
+
+
+ time_source4
+
+
+
+ clock_source5
+
+
+
+ time_source5
+
+
+
+ clock_source6
+
+
+
+ time_source6
+
+
+
+ clock_source7
+
+
+
+ time_source7
+
+
+
+ minoutbuf
+ 0
+
+
+ nchan
+ 1
+
+
+ num_mboards
+ 1
+
+
+ type
+ fc32
+
+
+ sample_rate
+ samp_rate
+
+
+ sync
+
+
+
+
+ wxgui_fftsink2
+
+ avg_alpha
+ 0.2
+
+
+ average
+ True
+
+
+ baseband_freq
+ 0
+
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ fft_size
+ 1024
+
+
+ freqvar
+ None
+
+
+ _coordinate
+ (192, 331)
+
+
+ _rotation
+ 0
+
+
+ grid_pos
+
+
+
+ id
+ wxgui_fftsink2_0
+
+
+ notebook
+
+
+
+ peak_hold
+ True
+
+
+ ref_level
+ 0
+
+
+ ref_scale
+ 2.0
+
+
+ fft_rate
+ 10
+
+
+ samp_rate
+ samp_rate
+
+
+ title
+ Input Spectrum
+
+
+ type
+ complex
+
+
+ win_size
+ 450,400
+
+
+ win
+ None
+
+
+ y_divs
+ 10
+
+
+ y_per_div
+ 10
+
+
+
+ wxgui_numbersink2
+
+ avg_alpha
+ 0.2
+
+
+ average
+ False
+
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ decimal_places
+ 10
+
+
+ _enabled
+ 1
+
+
+ factor
+ 100.0
+
+
+ _coordinate
+ (1072, 739)
+
+
+ _rotation
+ 0
+
+
+ grid_pos
+
+
+
+ id
+ wxgui_numbersink2_0_0
+
+
+ max_value
+ 100
+
+
+ min_value
+ 0
+
+
+ notebook
+
+
+
+ number_rate
+ 25
+
+
+ peak_hold
+ False
+
+
+ ref_level
+ 0.01
+
+
+ samp_rate
+ 100
+
+
+ show_gauge
+ True
+
+
+ title
+ Modulation Error
+
+
+ type
+ float
+
+
+ units
+ % MER
+
+
+ win_size
+
+
+
+
+ wxgui_scopesink2
+
+ ac_couple
+ False
+
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (1088, 595)
+
+
+ _rotation
+ 0
+
+
+ grid_pos
+
+
+
+ id
+ wxgui_scopesink2_0
+
+
+ notebook
+
+
+
+ num_inputs
+ 1
+
+
+ samp_rate
+ 1200000
+
+
+ t_scale
+ 0
+
+
+ title
+ I/Q Display
+
+
+ trig_mode
+ wxgui.TRIG_MODE_NORM
+
+
+ type
+ complex
+
+
+ v_offset
+ 0
+
+
+ v_scale
+ 0
+
+
+ win_size
+ 450,400
+
+
+ xy_mode
+ True
+
+
+ y_axis_label
+ I/Q
+
+
+
+ analog_frequency_modulator_fc_0
+ blocks_multiply_xx_0
+ 0
+ 0
+
+
+ blocks_complex_to_mag_squared_0
+ dab_moving_sum_ff_0
+ 0
+ 0
+
+
+ blocks_delay_0
+ blocks_multiply_xx_0
+ 0
+ 1
+
+
+ blocks_delay_0_0
+ dab_ofdm_sampler_0
+ 0
+ 1
+
+
+ blocks_multiply_const_vxx_0
+ blocks_peak_detector_xb_0_0
+ 0
+ 0
+
+
+ blocks_multiply_xx_0
+ dab_ofdm_sampler_0
+ 0
+ 0
+
+
+ blocks_peak_detector_xb_0_0
+ blocks_delay_0_0
+ 0
+ 0
+
+
+ blocks_peak_detector_xb_0_0
+ dab_ofdm_ffe_all_in_one_0
+ 0
+ 1
+
+
+ blocks_vector_to_stream_0
+ wxgui_scopesink2_0
+ 0
+ 0
+
+
+ dab_diff_phasor_vcc_0
+ dab_ofdm_remove_first_symbol_vcc_0
+ 0
+ 0
+
+
+ dab_mer_0
+ wxgui_numbersink2_0_0
+ 0
+ 0
+
+
+ dab_moving_sum_ff_0
+ blocks_multiply_const_vxx_0
+ 0
+ 0
+
+
+ dab_ofdm_coarse_frequency_correct_0
+ dab_diff_phasor_vcc_0
+ 0
+ 0
+
+
+ dab_ofdm_coarse_frequency_correct_0
+ dab_ofdm_remove_first_symbol_vcc_0
+ 1
+ 1
+
+
+ dab_ofdm_ffe_all_in_one_0
+ analog_frequency_modulator_fc_0
+ 0
+ 0
+
+
+ dab_ofdm_remove_first_symbol_vcc_0
+ blocks_vector_to_stream_0
+ 0
+ 0
+
+
+ dab_ofdm_remove_first_symbol_vcc_0
+ dab_mer_0
+ 0
+ 0
+
+
+ dab_ofdm_remove_first_symbol_vcc_0
+ blocks_null_sink_0
+ 1
+ 0
+
+
+ dab_ofdm_sampler_0
+ fft_vxx_0
+ 0
+ 0
+
+
+ dab_ofdm_sampler_0
+ dab_ofdm_coarse_frequency_correct_0
+ 1
+ 1
+
+
+ fft_vxx_0
+ dab_ofdm_coarse_frequency_correct_0
+ 0
+ 0
+
+
+ rtlsdr_source_0
+ blocks_complex_to_mag_squared_0
+ 0
+ 0
+
+
+ rtlsdr_source_0
+ blocks_delay_0
+ 0
+ 0
+
+
+ rtlsdr_source_0
+ dab_ofdm_ffe_all_in_one_0
+ 0
+ 0
+
+
+ rtlsdr_source_0
+ wxgui_fftsink2_0
+ 0
+ 0
+
+
diff --git a/examples/dab_mer.grc b/examples/dab_mer.grc
new file mode 100644
index 00000000..6c743e11
--- /dev/null
+++ b/examples/dab_mer.grc
@@ -0,0 +1,987 @@
+
+
+
+ Mon Jan 25 19:24:01 2016
+
+ options
+
+ author
+ Serge G
+
+
+ window_size
+ 1280, 1024
+
+
+ category
+ Custom
+
+
+ comment
+
+
+
+ description
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (11, 10)
+
+
+ _rotation
+ 0
+
+
+ generate_options
+ hb
+
+
+ hier_block_src_path
+ .:
+
+
+ id
+ dab_mer
+
+
+ max_nouts
+ 0
+
+
+ qt_qss_theme
+
+
+
+ realtime_scheduling
+
+
+
+ run_command
+ {python} -u {filename}
+
+
+ run_options
+ prompt
+
+
+ run
+ True
+
+
+ thread_safe_setters
+
+
+
+ title
+ DAB Mode I Mer Calc
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (804, 5)
+
+
+ _rotation
+ 0
+
+
+ id
+ cp_gap__
+
+
+ value
+ [30, 10, 5, 20]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (924, 134)
+
+
+ _rotation
+ 0
+
+
+ id
+ cp_length__
+
+
+ value
+ [504, 126, 63, 252]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (202, 14)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_mode
+
+
+ value
+ 1
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1089, 70)
+
+
+ _rotation
+ 0
+
+
+ id
+ fft_length__
+
+
+ value
+ [2048, 512, 256, 1024]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1087, 7)
+
+
+ _rotation
+ 0
+
+
+ id
+ frame_length__
+
+
+ value
+ [196608, 49152, 49152, 98304]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1088, 133)
+
+
+ _rotation
+ 0
+
+
+ id
+ ns_length__
+
+
+ value
+ [2656, 664, 345, 1328]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (634, 6)
+
+
+ _rotation
+ 0
+
+
+ id
+ num_carriers__
+
+
+ value
+ [1536, 384, 192, 768]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (385, 344)
+
+
+ _rotation
+ 0
+
+
+ id
+ phase_var_estimate_alpha
+
+
+ value
+ 0.01
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (209, 343)
+
+
+ _rotation
+ 0
+
+
+ id
+ phase_var_estimate_downsample
+
+
+ value
+ 100
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1086, 200)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbol_length__
+
+
+ value
+ [2552, 638, 319, 1276]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (925, 5)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbols_for_ffs_estimation__
+
+
+ value
+ [8,8,16,8]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (763, 70)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbols_for_magnitude_equalization__
+
+
+ value
+ [6,6,12,6]
+
+
+
+ variable
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (925, 68)
+
+
+ _rotation
+ 0
+
+
+ id
+ symbols_per_frame__
+
+
+ value
+ [76, 76, 153, 76]
+
+
+
+ blocks_complex_to_arg
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (412, 126)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_complex_to_arg_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ vlen
+ num_carriers__[dab_mode-1]
+
+
+
+ blocks_keep_one_in_n
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (233, 121)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_keep_one_in_n_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ n
+ phase_var_estimate_downsample
+
+
+ type
+ complex
+
+
+ vlen
+ num_carriers__[dab_mode-1]
+
+
+
+ blocks_multiply_xx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (639, 244)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_multiply_xx_1
+
+
+ type
+ float
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_inputs
+ 2
+
+
+ vlen
+ 1
+
+
+
+ blocks_sub_xx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (488, 244)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_sub_xx_0
+
+
+ type
+ float
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_inputs
+ 2
+
+
+ vlen
+ 1
+
+
+
+ blocks_vector_to_stream
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (619, 126)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_vector_to_stream_0_0
+
+
+ type
+ float
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_items
+ num_carriers__[dab_mode-1]
+
+
+ vlen
+ 1
+
+
+
+ dab_modulo_ff
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ div_f
+ 1.5707963
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (76, 240)
+
+
+ _rotation
+ 0
+
+
+ id
+ dab_modulo_ff_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+
+ iir_filter_xxx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ fftaps
+ [phase_var_estimate_alpha]
+
+
+ fbtaps
+ [0,1-phase_var_estimate_alpha]
+
+
+ _coordinate
+ (776, 251)
+
+
+ _rotation
+ 0
+
+
+ id
+ iir_filter_xxx_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ oldstyle
+ True
+
+
+ type
+ ffd
+
+
+
+ iir_filter_xxx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ fftaps
+ [phase_var_estimate_alpha]
+
+
+ fbtaps
+ [0,1-phase_var_estimate_alpha]
+
+
+ _coordinate
+ (272, 267)
+
+
+ _rotation
+ 0
+
+
+ id
+ iir_filter_xxx_0_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ oldstyle
+ True
+
+
+ type
+ ffd
+
+
+
+ pad_sink
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1039, 272)
+
+
+ _rotation
+ 0
+
+
+ id
+ pad_sink_0
+
+
+ type
+ float
+
+
+ label
+ out
+
+
+ num_streams
+ 1
+
+
+ optional
+ False
+
+
+ vlen
+ 1
+
+
+
+ pad_source
+
+ comment
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (17, 122)
+
+
+ _rotation
+ 0
+
+
+ id
+ pad_source_0
+
+
+ label
+ in
+
+
+ num_streams
+ 1
+
+
+ optional
+ False
+
+
+ type
+ complex
+
+
+ vlen
+ 1536
+
+
+
+ blocks_complex_to_arg_0
+ blocks_vector_to_stream_0_0
+ 0
+ 0
+
+
+ blocks_keep_one_in_n_0
+ blocks_complex_to_arg_0
+ 0
+ 0
+
+
+ blocks_multiply_xx_1
+ iir_filter_xxx_0
+ 0
+ 0
+
+
+ blocks_sub_xx_0
+ blocks_multiply_xx_1
+ 0
+ 0
+
+
+ blocks_sub_xx_0
+ blocks_multiply_xx_1
+ 0
+ 1
+
+
+ blocks_vector_to_stream_0_0
+ dab_modulo_ff_0
+ 0
+ 0
+
+
+ dab_modulo_ff_0
+ blocks_sub_xx_0
+ 0
+ 0
+
+
+ dab_modulo_ff_0
+ iir_filter_xxx_0_0
+ 0
+ 0
+
+
+ iir_filter_xxx_0
+ pad_sink_0
+ 0
+ 0
+
+
+ iir_filter_xxx_0_0
+ blocks_sub_xx_0
+ 0
+ 1
+
+
+ pad_source_0
+ blocks_keep_one_in_n_0
+ 0
+ 0
+
+