FM Loopback
Noisy FM transmitter and quadrature-demodulator loopback with live tone and noise controls
- Author Claude
- Category Analog
- Blocks 10
- Connections 7
- File
analog/fm_loopback.grc
Blocks used
| Block | Module | Used |
|---|---|---|
| QT GUI Range | GNU Radio | 2 |
| Add | GNU Radio | 1 |
| Frequency Mod | GNU Radio | 1 |
| Noise Source | GNU Radio | 1 |
| QT GUI Frequency Sink | GNU Radio | 1 |
| QT GUI Time Sink | GNU Radio | 1 |
| Quadrature Demod | GNU Radio | 1 |
| Signal Source | GNU Radio | 1 |
| Throttle | GNU Radio | 1 |
Flowgraph source
analog/fm_loopback.grc
options:
parameters:
author: Claude
copyright: ''
description: Noisy FM transmitter and quadrature-demodulator loopback with live tone and noise controls
generate_options: qt_gui
id: FM_Loopback
title: FM Loopback
states:
coordinate: [10, 10]
rotation: 0
state: enabled
blocks:
- name: noise_amplitude
id: variable_qtgui_range
parameters:
comment: ''
label: Channel noise
min_len: '240'
orient: QtCore.Qt.Horizontal
rangeType: float
start: '0'
step: '0.01'
stop: '0.5'
value: '0.05'
widget: counter_slider
states:
coordinate: [590, 10]
rotation: 0
state: enabled
- name: tone_frequency
id: variable_qtgui_range
parameters:
comment: ''
label: Message tone frequency
min_len: '240'
orient: QtCore.Qt.Horizontal
rangeType: float
start: '200'
step: '100'
stop: '3000'
value: '1000'
widget: counter_slider
states:
coordinate: [840, 10]
rotation: 0
state: enabled
- name: channel_noise
id: analog_noise_source_x
parameters:
affinity: ''
alias: ''
amplitude: noise_amplitude
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
seed: '7'
type: complex
states:
coordinate: [290, 340]
rotation: 0
state: enabled
- name: fm_demodulator
id: analog_quadrature_demod_cf
parameters:
affinity: ''
alias: ''
comment: ''
gain: '1.5278874537'
maxoutbuf: '0'
minoutbuf: '0'
states:
coordinate: [1220, 250]
rotation: 0
state: enabled
- name: fm_modulator
id: analog_frequency_modulator_fc
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
sensitivity: '0.6544984695'
states:
coordinate: [290, 240]
rotation: 0
state: enabled
- name: fm_spectrum
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1'
autoscale: 'False'
average: '0.2'
axislabels: 'True'
color1: '"blue"'
comment: ''
ctrlpanel: 'False'
fc: '0'
fftsize: '2048'
grid: 'True'
label1: Noisy FM signal
legend: 'True'
marker1: '-1'
maxoutbuf: '0'
minoutbuf: '0'
name: FM Channel Spectrum
samp_rate: '48000'
style1: '1'
tr_chan: '0'
tr_level: '0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: ''
update_time: '0.1'
width1: '1'
ymax: '10'
ymin: '-100'
states:
coordinate: [1220, 350]
rotation: 0
state: enabled
- name: message_tone
id: analog_sig_source_x
parameters:
affinity: ''
alias: ''
amplitude: '1'
comment: ''
frequency: tone_frequency
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: '48000'
type: float
waveform: analog.GR_COS_WAVE
states:
coordinate: [10, 220]
rotation: 0
state: enabled
- name: noisy_channel
id: blocks_add_xx
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '2'
type: complex
vlen: '1'
states:
coordinate: [650, 240]
rotation: 0
state: enabled
- name: recovered_message
id: qtgui_time_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1'
alpha2: '1'
autoscale: 'False'
axislabels: 'True'
color1: blue
color2: red
comment: ''
ctrlpanel: 'False'
grid: 'True'
label1: Recovered tone
label2: Signal 2
legend: 'True'
marker1: '-1'
marker2: '-1'
name: Recovered FM Message
samp_rate: '48000'
size: '1024'
stemplot: 'False'
style1: '1'
style2: '1'
tr_chan: '0'
tr_delay: '0'
tr_level: '0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_slope: qtgui.TRIG_SLOPE_POS
tr_tag: ''
type: float
update_time: '0.1'
width1: '1'
width2: '1'
ylabel: Amplitude
ymax: '1.5'
ymin: '-1.5'
yunit: ''
states:
coordinate: [80, 530]
rotation: 0
state: enabled
- name: throttle
id: blocks_throttle2
parameters:
affinity: ''
alias: ''
comment: ''
ignoretag: 'True'
limit: auto
maximum: '0.1'
maxoutbuf: '0'
minoutbuf: '0'
samples_per_second: '48000'
type: complex
vlen: '1'
states:
coordinate: [890, 230]
rotation: 0
state: enabled
connections:
- [channel_noise, '0', noisy_channel, '1']
- [fm_demodulator, '0', recovered_message, '0']
- [fm_modulator, '0', noisy_channel, '0']
- [message_tone, '0', fm_modulator, '0']
- [noisy_channel, '0', throttle, '0']
- [throttle, '0', fm_demodulator, '0']
- [throttle, '0', fm_spectrum, '0']
metadata:
file_format: 1
grc_version: 3.11.0.0