Selector Demo
Adapted from GNU Radio's own example (gr-blocks/examples/selector.grc). Reduced to one output so no sink sits idle; input_index still selects between three sources live.
- Category Blocks
- Blocks 8
- Connections 4
- File
blocks/selector.grc
Blocks used
| Block | Module | Used |
|---|---|---|
| Signal Source | GNU Radio | 3 |
| QT GUI Range | GNU Radio | 2 |
| QT GUI Time Sink | GNU Radio | 1 |
| Selector | GNU Radio | 1 |
| Variable | GNU Radio | 1 |
Flowgraph source
blocks/selector.grc
options:
parameters:
author: ''
category: '[GRC Hier Blocks]'
cmake_opt: ''
comment: ''
copyright: ''
description: Adapted from GNU Radio's own example (gr-blocks/examples/selector.grc). Reduced to one output so no sink
sits idle; input_index still selects between three sources live.
gen_cmake: 'On'
gen_linking: dynamic
generate_options: qt_gui
hier_block_src_path: '.:'
id: top_block
max_nouts: '0'
output_language: python
placement: (0,0)
qt_qss_theme: ''
realtime_scheduling: ''
run: 'True'
run_command: '{python} -u {filename}'
run_options: prompt
sizing_mode: fixed
thread_safe_setters: ''
title: Selector Demo
window_size: ''
states:
coordinate: [10, 10]
rotation: 0
state: enabled
blocks:
- name: freq
id: variable_qtgui_range
parameters:
comment: ''
gui_hint: (2,0,1,2)
label: ''
min_len: '200'
orient: QtCore.Qt.Horizontal
rangeType: float
start: '0'
step: '1'
stop: samp_rate/4
value: '200'
widget: counter_slider
states:
coordinate: [590, 10]
rotation: 0
state: true
- name: input_index
id: variable_qtgui_range
parameters:
comment: ''
gui_hint: (3,0,1,2)
label: ''
min_len: '200'
orient: QtCore.Qt.Horizontal
rangeType: int
start: '0'
step: '1'
stop: '2'
value: '0'
widget: counter_slider
states:
coordinate: [840, 10]
rotation: 0
state: true
- name: samp_rate
id: variable
parameters:
comment: ''
value: '32000'
states:
coordinate: [1090, 10]
rotation: 0
state: enabled
- name: analog_sig_source_x_0
id: analog_sig_source_x
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
offset: '0'
samp_rate: samp_rate
type: complex
waveform: analog.GR_COS_WAVE
frequency: freq
amplitude: '1'
states:
coordinate: [10, 210]
rotation: 0
state: true
- name: analog_sig_source_x_1
id: analog_sig_source_x
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
offset: '0'
samp_rate: samp_rate
type: complex
waveform: analog.GR_TRI_WAVE
frequency: freq
amplitude: '1'
states:
coordinate: [10, 350]
rotation: 0
state: true
- name: analog_sig_source_x_2
id: analog_sig_source_x
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
offset: '0'
samp_rate: samp_rate
type: complex
waveform: analog.GR_SAW_WAVE
frequency: freq
amplitude: '1'
states:
coordinate: [10, 490]
rotation: 0
state: true
- name: blocks_selector_0
id: blocks_selector
parameters:
affinity: ''
alias: ''
comment: "The Selector block passes \nsamples from the input selected\n by input_index to the output \nselected by output_index.\n\
\nOutputs != output_index \ndo not produce samples\n\nWhen Enabled is set to Off, \nno output samples are produced"
enabled: 'True'
input_index: input_index
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '3'
num_outputs: '1'
output_index: '0'
showports: 'True'
type: complex
vlen: '1'
states:
coordinate: [330, 230]
rotation: 0
state: true
- name: qtgui_time_sink_x_0
id: qtgui_time_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
axislabels: 'True'
color1: blue
color10: blue
color2: green
color3: black
color4: cyan
color5: magenta
color6: yellow
color7: dark red
color8: dark green
color9: dark blue
comment: ''
ctrlpanel: 'False'
entags: 'True'
grid: 'False'
gui_hint: (0,0,1,1)
label1: Signal 1
label10: Signal 10
label2: Signal 2
label3: Signal 3
label4: Signal 4
label5: Signal 5
label6: Signal 6
label7: Signal 7
label8: Signal 8
label9: Signal 9
legend: 'True'
marker1: '1'
marker10: '1'
marker2: '1'
marker3: '1'
marker4: '1'
marker5: '1'
marker6: '1'
marker7: '1'
marker8: '1'
marker9: '1'
name: '"Output 0"'
nconnections: '1'
size: '1024'
stemplot: 'False'
style1: '1'
style10: '1'
style2: '1'
style3: '1'
style4: '1'
style5: '1'
style6: '1'
style7: '1'
style8: '1'
style9: '1'
tr_chan: '0'
tr_delay: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_slope: qtgui.TRIG_SLOPE_POS
tr_tag: '""'
type: complex
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
ylabel: Amplitude
ymax: '1'
ymin: '-1'
yunit: '""'
samp_rate: samp_rate
states:
coordinate: [650, 240]
rotation: 0
state: true
connections:
- [analog_sig_source_x_0, '0', blocks_selector_0, '0']
- [analog_sig_source_x_1, '0', blocks_selector_0, '1']
- [analog_sig_source_x_2, '0', blocks_selector_0, '2']
- [blocks_selector_0, '0', qtgui_time_sink_x_0, '0']
metadata:
file_format: 1