diff --git a/apps/fft-multi-decoder_auto_freqs_slider-update_8dec.grc b/apps/fft-multi-decoder_auto_freqs_slider-update_8dec.grc
index 72e40b0..7ded980 100644
--- a/apps/fft-multi-decoder_auto_freqs_slider-update_8dec.grc
+++ b/apps/fft-multi-decoder_auto_freqs_slider-update_8dec.grc
@@ -132,7 +132,7 @@
value
- 60000
+ 38000
@@ -384,7 +384,7 @@
value
- 1024*32
+ 1024*52
diff --git a/apps/fft-multi-decoder_fixed_hackrf.grc b/apps/fft-multi-decoder_fixed_hackrf.grc
index ec241fd..1dc71df 100644
--- a/apps/fft-multi-decoder_fixed_hackrf.grc
+++ b/apps/fft-multi-decoder_fixed_hackrf.grc
@@ -132,7 +132,7 @@
value
- 38000
+ 48000
@@ -357,7 +357,7 @@
value
- 1024*52
+ 1024*40
@@ -1812,7 +1812,7 @@
_coordinate
- (2284, 1070)
+ (2361, 1073)
_rotation
diff --git a/apps/fft-single-decoder_fixed_hackrf.grc b/apps/fft-single-decoder_fixed_hackrf.grc
index dc1f7f3..25aa1db 100644
--- a/apps/fft-single-decoder_fixed_hackrf.grc
+++ b/apps/fft-single-decoder_fixed_hackrf.grc
@@ -333,6 +333,69 @@
audio_rate*audio_decim*bb_decim
+
+ variable_qtgui_range
+
+ comment
+
+
+
+ value
+ 0.82
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (1174, 1022)
+
+
+ gui_hint
+
+
+
+ _rotation
+ 0
+
+
+ id
+ corrfreq
+
+
+ label
+
+
+
+ min_len
+ 200
+
+
+ orient
+ Qt.Horizontal
+
+
+ start
+ -10
+
+
+ step
+ .01
+
+
+ stop
+ 10
+
+
+ rangeType
+ float
+
+
+ widget
+ counter_slider
+
+
variable
@@ -384,7 +447,7 @@
value
- 1024*40
+ 1024*52
@@ -1107,6 +1170,100 @@
counter_slider
+
+ analog_const_source_x
+
+ alias
+
+
+
+ comment
+
+
+
+ const
+ 0
+
+
+ affinity
+
+
+
+ _enabled
+ 0
+
+
+ _coordinate
+ (950, 674)
+
+
+ _rotation
+ 0
+
+
+ id
+ analog_const_source_x_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ type
+ float
+
+
+
+ analog_const_source_x
+
+ alias
+
+
+
+ comment
+
+
+
+ const
+ 0
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1062, 794)
+
+
+ _rotation
+ 0
+
+
+ id
+ analog_const_source_x_0_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ type
+ float
+
+
analog_fm_deemph
@@ -1268,7 +1425,7 @@
_coordinate
- (1589, 367)
+ (1589, 399)
_rotation
@@ -1291,6 +1448,49 @@
1
+
+ blocks_complex_to_real
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 0
+
+
+ _coordinate
+ (1102, 543)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_complex_to_real_1
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ vlen
+ 1
+
+
blocks_ctrlport_monitor_performance
@@ -1323,7 +1523,7 @@
- blocks_multiply_const_vxx
+ blocks_float_to_complex
alias
@@ -1332,21 +1532,17 @@
comment
-
- const
- volume
-
affinity
_enabled
- 1
+ 0
_coordinate
- (1869, 99)
+ (1094, 599)
_rotation
@@ -1354,11 +1550,7 @@
id
- blocks_multiply_const_vxx_0_1
-
-
- type
- float
+ blocks_float_to_complex_0
maxoutbuf
@@ -1374,7 +1566,7 @@
- blocks_stream_to_vector
+ blocks_float_to_complex
alias
@@ -1393,19 +1585,15 @@
_coordinate
- (299, 487)
+ (1238, 758)
_rotation
- 270
+ 0
id
- blocks_stream_to_vector_0
-
-
- type
- complex
+ blocks_float_to_complex_0_0
maxoutbuf
@@ -1415,17 +1603,13 @@
minoutbuf
0
-
- num_items
- fft_len
-
vlen
1
- blocks_vector_to_stream
+ blocks_multiply_const_vxx
alias
@@ -1434,6 +1618,10 @@
comment
+
+ const
+ volume
+
affinity
@@ -1444,7 +1632,7 @@
_coordinate
- (638, 331)
+ (1869, 99)
_rotation
@@ -1452,11 +1640,11 @@
id
- blocks_vector_to_stream_0_0_1
+ blocks_multiply_const_vxx_0_1
type
- complex
+ float
maxoutbuf
@@ -1466,17 +1654,13 @@
minoutbuf
0
-
- num_items
- chan_fft_len
-
vlen
1
- digital_binary_slicer_fb
+ blocks_repeat
alias
@@ -1491,19 +1675,23 @@
_enabled
- 1
+ True
_coordinate
- (1916, 559)
+ (1389, 611)
_rotation
- 180
+ 0
id
- digital_binary_slicer_fb_0
+ blocks_repeat_0
+
+
+ interp
+ 16
maxoutbuf
@@ -1513,9 +1701,17 @@
minoutbuf
0
+
+ type
+ complex
+
+
+ vlen
+ 1
+
- digital_diff_decoder_bb
+ blocks_repeat
alias
@@ -1530,22 +1726,430 @@
_enabled
- 1
+ 0
_coordinate
- (1709, 587)
+ (1150, 874)
_rotation
- 180
+ 0
id
- digital_diff_decoder_bb_0
+ blocks_repeat_0_0
- maxoutbuf
+ interp
+ 16
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ type
+ complex
+
+
+ vlen
+ 1
+
+
+
+ blocks_repeat
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1086, 738)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_repeat_1
+
+
+ interp
+ 32
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ type
+ float
+
+
+ vlen
+ 1
+
+
+
+ blocks_repeat
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (1517, 475)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_repeat_2
+
+
+ interp
+ 16
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ type
+ complex
+
+
+ vlen
+ 1
+
+
+
+ blocks_stream_to_vector
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (299, 487)
+
+
+ _rotation
+ 270
+
+
+ id
+ blocks_stream_to_vector_0
+
+
+ type
+ complex
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_items
+ fft_len
+
+
+ vlen
+ 1
+
+
+
+ blocks_vector_to_stream
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (638, 331)
+
+
+ _rotation
+ 0
+
+
+ id
+ blocks_vector_to_stream_0_0_1
+
+
+ type
+ complex
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ num_items
+ chan_fft_len
+
+
+ vlen
+ 1
+
+
+
+ digital_binary_slicer_fb
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (1916, 559)
+
+
+ _rotation
+ 180
+
+
+ id
+ digital_binary_slicer_fb_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+
+ digital_clock_recovery_mm_xx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (918, 950)
+
+
+ _rotation
+ 0
+
+
+ gain_mu
+ 0.050
+
+
+ gain_omega
+ 0.001
+
+
+ id
+ digital_clock_recovery_mm_xx_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ mu
+ 0.5
+
+
+ omega_relative_limit
+ 0.005
+
+
+ omega
+ 16*(1+0.0)
+
+
+ type
+ complex
+
+
+
+ digital_costas_loop_cc
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (662, 982)
+
+
+ _rotation
+ 0
+
+
+ id
+ digital_costas_loop_cc_0
+
+
+ w
+ 3.14/900
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ order
+ 2
+
+
+ use_snr
+ False
+
+
+
+ digital_diff_decoder_bb
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 1
+
+
+ _coordinate
+ (1709, 587)
+
+
+ _rotation
+ 180
+
+
+ id
+ digital_diff_decoder_bb_0
+
+
+ maxoutbuf
0
@@ -1940,11 +2544,11 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
_coordinate
- (1070, 431)
+ (894, 407)
_rotation
- 270
+ 180
id
@@ -4095,7 +4699,7 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
nconnections
- 1
+ 3
size
@@ -4194,7 +4798,7 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
_coordinate
- (910, 674)
+ (567, 714)
gui_hint
@@ -4485,7 +5089,7 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
_enabled
- True
+ 0
fftsize
@@ -4907,140 +5511,371 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
- width5
- 1
+ width5
+ 1
+
+
+ alpha6
+ 1.0
+
+
+ color6
+ "magenta"
+
+
+ label6
+
+
+
+ width6
+ 1
+
+
+ alpha7
+ 1.0
+
+
+ color7
+ "yellow"
+
+
+ label7
+
+
+
+ width7
+ 1
+
+
+ alpha8
+ 1.0
+
+
+ color8
+ "dark red"
+
+
+ label8
+
+
+
+ width8
+ 1
+
+
+ alpha9
+ 1.0
+
+
+ color9
+ "dark green"
+
+
+ label9
+
+
+
+ width9
+ 1
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ name
+
+
+
+ nconnections
+ 1
+
+
+ showports
+ True
+
+
+ freqhalf
+ True
+
+
+ tr_chan
+ 0
+
+
+ tr_level
+ 0.0
+
+
+ tr_mode
+ qtgui.TRIG_MODE_FREE
+
+
+ tr_tag
+ ""
+
+
+ type
+ float
+
+
+ update_time
+ 0.10
+
+
+ wintype
+ firdes.WIN_BLACKMAN_hARRIS
+
+
+ label
+ Relative Gain
+
+
+ ymax
+ 0
+
+
+ ymin
+ -120
+
+
+ units
+ dB
+
+
+
+ qtgui_number_sink
+
+ autoscale
+ False
+
+
+ avg
+ 0
+
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ True
+
+
+ _coordinate
+ (950, 1054)
+
+
+ gui_hint
+
+
+
+ _rotation
+ 0
+
+
+ graph_type
+ qtgui.NUM_GRAPH_HORIZ
+
+
+ id
+ qtgui_number_sink_0
+
+
+ type
+ float
+
+
+ color1
+ ("black", "black")
+
+
+ factor1
+ 1
+
+
+ label1
+
+
+
+ unit1
+
+
+
+ color10
+ ("black", "black")
+
+
+ factor10
+ 1
+
+
+ label10
+
+
+
+ unit10
+
+
+
+ color2
+ ("black", "black")
+
+
+ factor2
+ 1
+
+
+ label2
+
+
+
+ unit2
+
- alpha6
- 1.0
+ color3
+ ("black", "black")
- color6
- "magenta"
+ factor3
+ 1
- label6
+ label3
- width6
- 1
+ unit3
+
- alpha7
- 1.0
+ color4
+ ("black", "black")
- color7
- "yellow"
+ factor4
+ 1
- label7
+ label4
- width7
- 1
+ unit4
+
- alpha8
- 1.0
+ color5
+ ("black", "black")
- color8
- "dark red"
+ factor5
+ 1
- label8
+ label5
- width8
- 1
+ unit5
+
- alpha9
- 1.0
+ color6
+ ("black", "black")
- color9
- "dark green"
+ factor6
+ 1
- label9
+ label6
- width9
- 1
+ unit6
+
- maxoutbuf
- 0
+ color7
+ ("black", "black")
- minoutbuf
- 0
+ factor7
+ 1
- name
+ label7
- nconnections
- 1
+ unit7
+
- showports
- True
+ color8
+ ("black", "black")
- freqhalf
- True
+ factor8
+ 1
- tr_chan
- 0
+ label8
+
- tr_level
- 0.0
+ unit8
+
- tr_mode
- qtgui.TRIG_MODE_FREE
+ color9
+ ("black", "black")
- tr_tag
- ""
+ factor9
+ 1
- type
- float
+ label9
+
- update_time
- 0.10
+ unit9
+
- wintype
- firdes.WIN_BLACKMAN_hARRIS
+ max
+ 1
- label
- Relative Gain
+ min
+ -1
- ymax
- 0
+ name
+ "freq"
- ymin
- -120
+ nconnections
+ 1
- units
- dB
+ update_time
+ 0.10
@@ -5079,7 +5914,7 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
_coordinate
- (1333, 642)
+ (1445, 694)
gui_hint
@@ -5187,11 +6022,11 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
marker3
- -1
+ 1
style3
- 1
+ 0
width3
@@ -5215,7 +6050,7 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
style4
- 1
+ 0
width4
@@ -5235,11 +6070,11 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
marker5
- -1
+ 1
style5
- 1
+ 0
width5
@@ -5347,7 +6182,7 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
nconnections
- 2
+ 3
size
@@ -5399,70 +6234,11 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
ymax
- 1
+ 2
ymin
- -1
-
-
-
- rational_resampler_xxx
-
- alias
-
-
-
- comment
-
-
-
- affinity
-
-
-
- decim
- 1
-
-
- _enabled
- 1
-
-
- fbw
- 0
-
-
- _coordinate
- (1501, 527)
-
-
- _rotation
- 0
-
-
- id
- rational_resampler_xxx_0
-
-
- interp
- 16
-
-
- maxoutbuf
- 0
-
-
- minoutbuf
- 0
-
-
- taps
-
-
-
- type
- ccc
+ -2
@@ -5497,11 +6273,11 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
_coordinate
- (1158, 407)
+ (854, 495)
_rotation
- 90
+ 0
gain
@@ -5651,6 +6427,18 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
2
+
+ analog_const_source_x_0
+ blocks_float_to_complex_0
+ 0
+ 1
+
+
+ analog_const_source_x_0_0
+ blocks_float_to_complex_0_0
+ 0
+ 1
+
analog_fm_deemph_0_0_1
blocks_multiply_const_vxx_0_1
@@ -5687,12 +6475,60 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
0
0
+
+ blocks_complex_to_real_1
+ blocks_float_to_complex_0
+ 0
+ 0
+
+
+ blocks_float_to_complex_0
+ digital_mpsk_receiver_cc_0
+ 0
+ 0
+
+
+ blocks_float_to_complex_0
+ qtgui_time_sink_x_0
+ 0
+ 0
+
+
+ blocks_float_to_complex_0_0
+ qtgui_time_sink_x_0
+ 0
+ 2
+
blocks_multiply_const_vxx_0_1
audio_sink_0_0
0
0
+
+ blocks_repeat_0
+ qtgui_const_sink_x_0
+ 0
+ 2
+
+
+ blocks_repeat_0
+ qtgui_time_sink_x_0
+ 0
+ 1
+
+
+ blocks_repeat_1
+ blocks_float_to_complex_0_0
+ 0
+ 0
+
+
+ blocks_repeat_2
+ qtgui_const_sink_x_0
+ 0
+ 0
+
blocks_stream_to_vector_0
fft_vxx_0
@@ -5718,26 +6554,56 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
0
- digital_diff_decoder_bb_0
- multirds_rds_decoder_redsea_0
+ digital_clock_recovery_mm_xx_0
+ blocks_complex_to_real_0
0
0
- digital_mpsk_receiver_cc_0
- blocks_complex_to_real_0
+ digital_clock_recovery_mm_xx_0
+ blocks_repeat_0_0
0
0
- digital_mpsk_receiver_cc_0
+ digital_clock_recovery_mm_xx_0
+ blocks_repeat_2
+ 0
+ 0
+
+
+ digital_costas_loop_cc_0
+ qtgui_number_sink_0
+ 1
+ 0
+
+
+ digital_costas_loop_cc_0
+ digital_clock_recovery_mm_xx_0
+ 0
+ 0
+
+
+ digital_costas_loop_cc_0
qtgui_const_sink_x_0
0
+ 1
+
+
+ digital_costas_loop_cc_0
+ qtgui_time_sink_x_0
+ 0
+ 0
+
+
+ digital_diff_decoder_bb_0
+ multirds_rds_decoder_redsea_0
+ 0
0
digital_mpsk_receiver_cc_0
- rational_resampler_xxx_0
+ blocks_repeat_0
0
0
@@ -5807,6 +6673,12 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
ctrl
in
+
+ multirds_symbol_combiner_0
+ blocks_repeat_1
+ 0
+ 0
+
multirds_symbol_combiner_0
digital_binary_slicer_fb_0
@@ -5832,21 +6704,21 @@ class blk(gr.sync_block): # other base classes are basic_block, decim_block, in
0
- rational_resampler_xxx_0
- qtgui_time_sink_x_0
+ root_raised_cosine_filter_0
+ blocks_complex_to_real_1
0
0
root_raised_cosine_filter_0
- digital_mpsk_receiver_cc_0
+ digital_costas_loop_cc_0
0
0
root_raised_cosine_filter_0
- qtgui_time_sink_x_0
+ digital_mpsk_receiver_cc_0
0
- 1
+ 0
diff --git a/apps/ifft-RDS-decoder_hier-block.grc b/apps/ifft-RDS-decoder_hier-block.grc
index 573cbd6..e230bae 100644
--- a/apps/ifft-RDS-decoder_hier-block.grc
+++ b/apps/ifft-RDS-decoder_hier-block.grc
@@ -132,7 +132,7 @@
value
- 38000
+ 48000
@@ -1088,6 +1088,120 @@
0
+
+ digital_clock_recovery_mm_xx
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 0
+
+
+ _coordinate
+ (798, 279)
+
+
+ _rotation
+ 0
+
+
+ gain_mu
+ 0.050
+
+
+ gain_omega
+ 0.001
+
+
+ id
+ digital_clock_recovery_mm_xx_0
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ mu
+ 0.5
+
+
+ omega_relative_limit
+ 0.005
+
+
+ omega
+ 16*(1+0.0)
+
+
+ type
+ complex
+
+
+
+ digital_costas_loop_cc
+
+ alias
+
+
+
+ comment
+
+
+
+ affinity
+
+
+
+ _enabled
+ 0
+
+
+ _coordinate
+ (543, 311)
+
+
+ _rotation
+ 0
+
+
+ id
+ digital_costas_loop_cc_0
+
+
+ w
+ loop_bw
+
+
+ maxoutbuf
+ 0
+
+
+ minoutbuf
+ 0
+
+
+ order
+ 2
+
+
+ use_snr
+ False
+
+
digital_diff_decoder_bb
@@ -3406,6 +3520,24 @@
0
0
+
+ digital_clock_recovery_mm_xx_0
+ blocks_complex_to_real_0
+ 0
+ 0
+
+
+ digital_clock_recovery_mm_xx_0
+ pad_sink_1
+ 0
+ 0
+
+
+ digital_costas_loop_cc_0
+ digital_clock_recovery_mm_xx_0
+ 0
+ 0
+
digital_diff_decoder_bb_0
multirds_rds_decoder_3
@@ -3616,6 +3748,12 @@
0
0
+
+ root_raised_cosine_filter_0
+ digital_costas_loop_cc_0
+ 0
+ 0
+
root_raised_cosine_filter_0
digital_mpsk_receiver_cc_0