diff --git a/gnuradio/.gitignore b/gnuradio/.gitignore new file mode 100644 index 00000000..f104652b --- /dev/null +++ b/gnuradio/.gitignore @@ -0,0 +1 @@ +*.py diff --git a/gnuradio/dual_rx_sim.grc b/gnuradio/dual_rx_sim.grc new file mode 100644 index 00000000..54b3d4ad --- /dev/null +++ b/gnuradio/dual_rx_sim.grc @@ -0,0 +1,2671 @@ + + + + Sun Oct 12 18:56:47 2014 + + options + + id + dual_rx_sim + + + _enabled + True + + + title + Dual RX Simulator + + + author + SM0SVX + + + description + + + + window_size + 1280, 1024 + + + generate_options + wx_gui + + + category + Custom + + + run_options + prompt + + + run + True + + + max_nouts + 0 + + + realtime_scheduling + + + + alias + + + + _coordinate + (10, 10) + + + _rotation + 0 + + + + variable + + id + samp_rate + + + _enabled + True + + + value + 48000 + + + alias + + + + _coordinate + (180, 11) + + + _rotation + 0 + + + + variable_slider + + id + bw + + + _enabled + True + + + label + Bw + + + value + 16000 + + + min + 0 + + + max + 30000 + + + num_steps + 100 + + + style + wx.SL_HORIZONTAL + + + converver + float_converter + + + grid_pos + 5,0,1,1 + + + notebook + + + + alias + + + + _coordinate + (568, 10) + + + _rotation + 0 + + + + variable_slider + + id + af_gain + + + _enabled + True + + + label + AF Gain + + + value + 20 + + + min + 0 + + + max + 50 + + + num_steps + 50 + + + style + wx.SL_HORIZONTAL + + + converver + float_converter + + + grid_pos + 5,1,1,1 + + + notebook + + + + alias + + + + _coordinate + (710, 11) + + + _rotation + 0 + + + + variable_slider + + id + rx1_att + + + _enabled + True + + + label + Rx1 Attenuation + + + value + 0.0 + + + min + 0.0 + + + max + 100.0 + + + num_steps + 100 + + + style + wx.SL_HORIZONTAL + + + converver + float_converter + + + grid_pos + 6,0,1,2 + + + notebook + + + + alias + + + + _coordinate + (286, 13) + + + _rotation + 0 + + + + variable_slider + + id + rx2_att + + + _enabled + True + + + label + Rx2 Attenuation + + + value + 0.0 + + + min + 0.0 + + + max + 100.0 + + + num_steps + 100 + + + style + wx.SL_HORIZONTAL + + + converver + float_converter + + + grid_pos + 6,2,1,2 + + + notebook + + + + alias + + + + _coordinate + (423, 12) + + + _rotation + 0 + + + + variable_slider + + id + mod_fq + + + _enabled + True + + + label + Mod Fq + + + value + 1000 + + + min + 0 + + + max + 7000 + + + num_steps + 70 + + + style + wx.SL_HORIZONTAL + + + converver + float_converter + + + grid_pos + 7,3,1,1 + + + notebook + + + + alias + + + + _coordinate + (589, 758) + + + _rotation + 0 + + + + variable_slider + + id + swing + + + _enabled + True + + + label + Swing + + + value + 3000 + + + min + 0 + + + max + 5000 + + + num_steps + 100 + + + style + wx.SL_HORIZONTAL + + + converver + float_converter + + + grid_pos + 7,1,1,1 + + + notebook + + + + alias + + + + _coordinate + (440, 755) + + + _rotation + 0 + + + + audio_source + + id + audio_source_0 + + + _enabled + True + + + samp_rate + samp_rate + + + device_name + plughw:0 + + + ok_to_block + True + + + num_outputs + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (266, 762) + + + _rotation + 180 + + + + variable_chooser + + id + mod_source + + + _enabled + True + + + label + Mod Source + + + value + 0 + + + choices + [0, 1, 2, 3] + + + labels + ["Mic","TX","Noise","Tone"] + + + type + radio_buttons + + + style + wx.RA_HORIZONTAL + + + grid_pos + 7,0,1,1 + + + notebook + + + + alias + + + + _coordinate + (14, 807) + + + _rotation + 0 + + + + blocks_add_xx + + id + blocks_add_xx_0 + + + _enabled + True + + + type + complex + + + num_inputs + 2 + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (544, 175) + + + _rotation + 0 + + + + blocks_multiply_const_vxx + + id + blocks_multiply_const_vxx_0 + + + _enabled + True + + + type + complex + + + const + 1/(10**(rx1_att/20)) + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (312, 156) + + + _rotation + 0 + + + + analog_noise_source_x + + id + analog_noise_source_x_0 + + + _enabled + True + + + type + complex + + + noise_type + analog.GR_GAUSSIAN + + + amp + 0.001 + + + seed + 0 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (296, 206) + + + _rotation + 0 + + + + blocks_multiply_const_vxx + + id + blocks_multiply_const_vxx_1 + + + _enabled + True + + + type + complex + + + const + 1/(10**(rx2_att/20)) + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (312, 292) + + + _rotation + 0 + + + + low_pass_filter + + id + low_pass_filter_0 + + + _enabled + True + + + type + fir_filter_ccf + + + decim + 1 + + + interp + 1 + + + gain + 1 + + + samp_rate + samp_rate + + + cutoff_freq + bw/2 + + + width + 1500 + + + win + firdes.WIN_HAMMING + + + beta + 6.76 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (82, 159) + + + _rotation + 0 + + + + analog_nbfm_tx + + id + analog_nbfm_tx_0 + + + _enabled + True + + + audio_rate + 48000 + + + quad_rate + 48000 + + + tau + 500e-6 + + + max_dev + 5e3 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (80, 295) + + + _rotation + 180 + + + + blocks_throttle + + id + blocks_throttle_0 + + + _enabled + True + + + type + float + + + samples_per_second + samp_rate + + + vlen + 1 + + + ignoretag + True + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (104, 388) + + + _rotation + 0 + + + + analog_sig_source_x + + id + analog_sig_source_x_0 + + + _enabled + True + + + type + float + + + samp_rate + samp_rate + + + waveform + analog.GR_COS_WAVE + + + freq + mod_fq + + + amp + swing/5000.0 + + + offset + 0 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (32, 536) + + + _rotation + 0 + + + + blocks_add_xx + + id + blocks_add_xx_1 + + + _enabled + True + + + type + complex + + + num_inputs + 2 + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (544, 247) + + + _rotation + 0 + + + + low_pass_filter + + id + low_pass_filter_1 + + + _enabled + True + + + type + fir_filter_fff + + + decim + 1 + + + interp + 1 + + + gain + 1 + + + samp_rate + samp_rate + + + cutoff_freq + 5500 + + + width + 500 + + + win + firdes.WIN_HAMMING + + + beta + 6.76 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (224, 586) + + + _rotation + 180 + + + + analog_noise_source_x + + id + analog_noise_source_x_1 + + + _enabled + True + + + type + float + + + noise_type + analog.GR_GAUSSIAN + + + amp + swing/5000.0 + + + seed + 0 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (424, 614) + + + _rotation + 180 + + + + blocks_udp_source + + id + blocks_udp_source_0 + + + _enabled + True + + + type + short + + + ipaddr + 127.0.0.1 + + + port + 10001 + + + psize + 4096 + + + eof + True + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (200, 911) + + + _rotation + 0 + + + + blks2_selector + + id + blks2_selector_0 + + + _enabled + True + + + type + float + + + num_inputs + 4 + + + num_outputs + 1 + + + input_index + mod_source + + + output_index + 0 + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (34, 653) + + + _rotation + 180 + + + + blocks_deinterleave + + id + blocks_deinterleave_0 + + + _enabled + True + + + type + short + + + num_streams + 2 + + + blocksize + 1 + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (392, 919) + + + _rotation + 0 + + + + wxgui_fftsink2 + + id + wxgui_fftsink2_1 + + + _enabled + True + + + type + float + + + title + TX Audio + + + samp_rate + samp_rate + + + baseband_freq + 0 + + + y_per_div + 10 + + + y_divs + 10 + + + ref_level + 0 + + + ref_scale + 2.0 + + + fft_size + 1024 + + + fft_rate + 15 + + + peak_hold + False + + + average + True + + + avg_alpha + 0 + + + win + None + + + win_size + + + + grid_pos + 8,2,2,2 + + + notebook + + + + freqvar + None + + + alias + + + + affinity + + + + _coordinate + (840, 687) + + + _rotation + 0 + + + + blocks_null_sink + + id + blocks_null_sink_0 + + + _enabled + True + + + type + short + + + vlen + 1 + + + num_inputs + 1 + + + bus_conns + [[0,],] + + + alias + + + + affinity + + + + _coordinate + (552, 919) + + + _rotation + 0 + + + + low_pass_filter + + id + low_pass_filter_0_0 + + + _enabled + True + + + type + fir_filter_ccf + + + decim + 1 + + + interp + 1 + + + gain + 1 + + + samp_rate + samp_rate + + + cutoff_freq + bw/2 + + + width + 1500 + + + win + firdes.WIN_HAMMING + + + beta + 6.76 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (692, 174) + + + _rotation + 0 + + + + wxgui_fftsink2 + + id + wxgui_fftsink2_1_0 + + + _enabled + True + + + type + float + + + title + Rx1 Audio + + + samp_rate + samp_rate + + + baseband_freq + 0 + + + y_per_div + 10 + + + y_divs + 10 + + + ref_level + 0 + + + ref_scale + 2.0 + + + fft_size + 1024 + + + fft_rate + 15 + + + peak_hold + False + + + average + True + + + avg_alpha + 0 + + + win + None + + + win_size + + + + grid_pos + 8,0,2,2 + + + notebook + + + + freqvar + None + + + alias + + + + affinity + + + + _coordinate + (1128, 7) + + + _rotation + 0 + + + + analog_nbfm_rx + + id + analog_nbfm_rx_0 + + + _enabled + True + + + audio_rate + 48000 + + + quad_rate + 48000 + + + tau + 500e-6 + + + max_dev + 5e3 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (920, 247) + + + _rotation + 0 + + + + low_pass_filter + + id + low_pass_filter_0_0_0 + + + _enabled + True + + + type + fir_filter_ccf + + + decim + 1 + + + interp + 1 + + + gain + 1 + + + samp_rate + samp_rate + + + cutoff_freq + bw/2 + + + width + 1500 + + + win + firdes.WIN_HAMMING + + + beta + 6.76 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (448, 410) + + + _rotation + 0 + + + + blocks_multiply_const_vxx + + id + blocks_multiply_const_vxx_2 + + + _enabled + True + + + type + float + + + const + af_gain + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (1124, 304) + + + _rotation + 90 + + + + analog_nbfm_rx + + id + analog_nbfm_rx_0_0 + + + _enabled + True + + + audio_rate + 48000 + + + quad_rate + 48000 + + + tau + 500e-6 + + + max_dev + 5e3 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (688, 599) + + + _rotation + 0 + + + + wxgui_fftsink2 + + id + wxgui_fftsink2_1_0_0 + + + _enabled + False + + + type + float + + + title + Rx2 Audio + + + samp_rate + samp_rate + + + baseband_freq + 0 + + + y_per_div + 10 + + + y_divs + 10 + + + ref_level + 0 + + + ref_scale + 2.0 + + + fft_size + 1024 + + + fft_rate + 15 + + + peak_hold + False + + + average + True + + + avg_alpha + 0 + + + win + None + + + win_size + + + + grid_pos + 8,2,2,2 + + + notebook + + + + freqvar + None + + + alias + + + + affinity + + + + _coordinate + (863, 389) + + + _rotation + 180 + + + + blocks_multiply_const_vxx + + id + blocks_multiply_const_vxx_2_0 + + + _enabled + True + + + type + float + + + const + af_gain + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (872, 620) + + + _rotation + 0 + + + + blocks_interleave + + id + blocks_interleave_0 + + + _enabled + True + + + type + short + + + num_streams + 2 + + + blocksize + 1 + + + vlen + 1 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (1151, 792) + + + _rotation + 270 + + + + wxgui_fftsink2 + + id + wxgui_fftsink2_0_0 + + + _enabled + True + + + type + complex + + + title + Rx1 Baseband + + + samp_rate + samp_rate + + + baseband_freq + 0 + + + y_per_div + 10 + + + y_divs + 10 + + + ref_level + 10 + + + ref_scale + 2.0 + + + fft_size + 512 + + + fft_rate + 15 + + + peak_hold + False + + + average + True + + + avg_alpha + 0.5 + + + win + None + + + win_size + 600,100 + + + grid_pos + 0,0,5,2 + + + notebook + + + + freqvar + None + + + alias + + + + affinity + + + + _coordinate + (920, 8) + + + _rotation + 0 + + + + wxgui_fftsink2 + + id + wxgui_fftsink2_0 + + + _enabled + True + + + type + complex + + + title + Rx2 Baseband + + + samp_rate + samp_rate + + + baseband_freq + 0 + + + y_per_div + 10 + + + y_divs + 10 + + + ref_level + 10 + + + ref_scale + 2.0 + + + fft_size + 512 + + + fft_rate + 15 + + + peak_hold + False + + + average + True + + + avg_alpha + 0.5 + + + win + None + + + win_size + 600,100 + + + grid_pos + 0,2,5,2 + + + notebook + + + + freqvar + None + + + alias + + + + affinity + + + + _coordinate + (690, 375) + + + _rotation + 0 + + + + blocks_udp_sink + + id + blocks_udp_sink_0 + + + _enabled + True + + + type + short + + + ipaddr + 127.0.0.1 + + + port + 10000 + + + psize + 4096 + + + eof + True + + + vlen + 1 + + + alias + + + + affinity + + + + _coordinate + (1104, 911) + + + _rotation + 0 + + + + blocks_float_to_short + + id + blocks_float_to_short_0_0 + + + _enabled + True + + + vlen + 1 + + + scale + 32767 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (1148, 632) + + + _rotation + 270 + + + + blocks_float_to_short + + id + blocks_float_to_short_0 + + + _enabled + True + + + vlen + 1 + + + scale + 32767 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (1180, 304) + + + _rotation + 270 + + + + blocks_short_to_float + + id + blocks_short_to_float_0 + + + _enabled + True + + + vlen + 1 + + + scale + 32767 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (640, 948) + + + _rotation + 0 + + + + audio_sink + + id + audio_sink_0 + + + _enabled + False + + + samp_rate + 48000 + + + device_name + plughw:0 + + + ok_to_block + True + + + num_inputs + 1 + + + alias + + + + affinity + + + + _coordinate + (840, 909) + + + _rotation + 0 + + + + low_pass_filter_0_0 + wxgui_fftsink2_0_0 + 0 + 0 + + + low_pass_filter_0_0_0 + wxgui_fftsink2_0 + 0 + 0 + + + low_pass_filter_1 + blks2_selector_0 + 0 + 2 + + + audio_source_0 + blks2_selector_0 + 0 + 0 + + + low_pass_filter_0 + blocks_multiply_const_vxx_0 + 0 + 0 + + + blocks_multiply_const_vxx_0 + blocks_add_xx_0 + 0 + 0 + + + blocks_add_xx_0 + low_pass_filter_0_0 + 0 + 0 + + + analog_noise_source_x_0 + blocks_add_xx_0 + 0 + 1 + + + low_pass_filter_0 + blocks_multiply_const_vxx_1 + 0 + 0 + + + blocks_multiply_const_vxx_1 + blocks_add_xx_1 + 0 + 1 + + + analog_noise_source_x_0 + blocks_add_xx_1 + 0 + 0 + + + analog_nbfm_tx_0 + low_pass_filter_0 + 0 + 0 + + + blocks_throttle_0 + analog_nbfm_tx_0 + 0 + 0 + + + blks2_selector_0 + blocks_throttle_0 + 0 + 0 + + + analog_sig_source_x_0 + blks2_selector_0 + 0 + 3 + + + blocks_add_xx_1 + low_pass_filter_0_0_0 + 0 + 0 + + + analog_noise_source_x_1 + low_pass_filter_1 + 0 + 0 + + + blocks_udp_source_0 + blocks_deinterleave_0 + 0 + 0 + + + blocks_deinterleave_0 + blocks_short_to_float_0 + 1 + 0 + + + blocks_short_to_float_0 + audio_sink_0 + 0 + 0 + + + blocks_short_to_float_0 + wxgui_fftsink2_1 + 0 + 0 + + + blocks_short_to_float_0 + blks2_selector_0 + 0 + 1 + + + blocks_deinterleave_0 + blocks_null_sink_0 + 0 + 0 + + + low_pass_filter_0_0 + analog_nbfm_rx_0 + 0 + 0 + + + analog_nbfm_rx_0 + blocks_multiply_const_vxx_2 + 0 + 0 + + + blocks_multiply_const_vxx_2 + wxgui_fftsink2_1_0 + 0 + 0 + + + blocks_multiply_const_vxx_2 + blocks_float_to_short_0 + 0 + 0 + + + low_pass_filter_0_0_0 + analog_nbfm_rx_0_0 + 0 + 0 + + + analog_nbfm_rx_0_0 + blocks_multiply_const_vxx_2_0 + 0 + 0 + + + blocks_multiply_const_vxx_2_0 + wxgui_fftsink2_1_0_0 + 0 + 0 + + + blocks_multiply_const_vxx_2_0 + blocks_float_to_short_0_0 + 0 + 0 + + + blocks_float_to_short_0_0 + blocks_interleave_0 + 0 + 1 + + + blocks_float_to_short_0 + blocks_interleave_0 + 0 + 0 + + + blocks_interleave_0 + blocks_udp_sink_0 + 0 + 0 + +