Commit e831d815 authored by Patrick Dohmen's avatar Patrick Dohmen Committed by Manolis Surligas

Fix NOAA APT waterfall bandwidth

The flowgraph for decoding NOAA APT images generates a waterfall with a
bandwidth depending on the default samplerate of the SDR hardware.
USRPB200 defaults to 500 ksps, which produces an output of 125 ksps
after the "first_stage_decimation" which is fixed to a value of 4.
Changing the hardware to an "rtlsdr" also changes the default
samplerate to 1 Msps which results in a waterfall bandwidth of 250 kHz
(+- 125 kHz). Connecting the waterfall sink behind the FFT Filter,
which has a decimation set to match an output samplerate of 125 kHz,
seems to be correct! This produces waterfalls with a bandwidth of
125 kHz (+- 62,5 kHz).

Fixes issue #128
parent 07eb5754
......@@ -5,9 +5,10 @@
# Title: NOAA APT Decoder
# Author: Manolis Surligas, George Vardakis
# Description: A NOAA APT Decoder with automatic image synchronization
# Generated: Sat Feb 24 00:15:33 2018
# Generated: Wed Jul 4 10:18:17 2018
##################################################
from gnuradio import analog
from gnuradio import blocks
from gnuradio import eng_notation
......@@ -65,7 +66,7 @@ class satnogs_noaa_apt_decoder(gr.top_block):
##################################################
# Blocks
##################################################
self.satnogs_waterfall_sink_0 = satnogs.waterfall_sink(samp_rate_rx /first_stage_decimation, 0.0, 8, 1024, waterfall_file_path, 0)
self.satnogs_waterfall_sink_0 = satnogs.waterfall_sink(samp_rate_rx/ ( first_stage_decimation * int(samp_rate_rx/ first_stage_decimation / initial_bandwidth)), 0.0, 8, 1024, waterfall_file_path, 0)
self.satnogs_tcp_rigctl_msg_source_0 = satnogs.tcp_rigctl_msg_source("127.0.0.1", rigctl_port, False, 1000/doppler_correction_per_sec, 1500)
self.satnogs_ogg_encoder_0 = satnogs.ogg_encoder(file_path, 48000, 0.8)
self.satnogs_noaa_apt_sink_0 = satnogs.noaa_apt_sink(decoded_data_file_path, 2080, 1800, bool(sync), bool(flip_images))
......@@ -132,6 +133,7 @@ class satnogs_noaa_apt_decoder(gr.top_block):
self.connect((self.blocks_complex_to_mag_0, 0), (self.rational_resampler_xxx_0_0, 0))
self.connect((self.fft_filter_xxx_0, 0), (self.analog_wfm_rcv_0, 0))
self.connect((self.fft_filter_xxx_0, 0), (self.rational_resampler_xxx_2, 0))
self.connect((self.fft_filter_xxx_0, 0), (self.satnogs_waterfall_sink_0, 0))
self.connect((self.fir_filter_xxx_1, 0), (self.rational_resampler_xxx_0, 0))
self.connect((self.freq_xlating_fir_filter_xxx_0, 0), (self.satnogs_coarse_doppler_correction_cc_0, 0))
self.connect((self.hilbert_fc_0, 0), (self.blocks_complex_to_mag_0, 0))
......@@ -141,7 +143,6 @@ class satnogs_noaa_apt_decoder(gr.top_block):
self.connect((self.rational_resampler_xxx_1, 0), (self.satnogs_ogg_encoder_0, 0))
self.connect((self.rational_resampler_xxx_2, 0), (self.satnogs_iq_sink_0, 0))
self.connect((self.satnogs_coarse_doppler_correction_cc_0, 0), (self.fft_filter_xxx_0, 0))
self.connect((self.satnogs_coarse_doppler_correction_cc_0, 0), (self.satnogs_waterfall_sink_0, 0))
def get_antenna(self):
return self.antenna
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment