From 33030b38e9f6bca34fc064f87090abf650dd42ed Mon Sep 17 00:00:00 2001 From: Jakob Ketterl Date: Sun, 3 Sep 2023 18:27:05 +0200 Subject: [PATCH] keep bandpass off per default; sync settings correctly for initial modulation --- csdr/chain/selector.py | 6 ++---- owrx/dsp.py | 3 ++- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/csdr/chain/selector.py b/csdr/chain/selector.py index 7b42dc7a..74a86361 100644 --- a/csdr/chain/selector.py +++ b/csdr/chain/selector.py @@ -80,9 +80,9 @@ class Selector(Chain): self.decimation = Decimator(inputRate, outputRate) self.bandpass = self._buildBandpass() - self.bandpassCutoffs = None + self.bandpassCutoffs = [None, None] - workers = [self.shift, self.decimation, self.bandpass] + workers = [self.shift, self.decimation] if withSquelch: self.readings_per_second = 4 @@ -93,8 +93,6 @@ class Selector(Chain): super().__init__(workers) - self.setBandpass(-4000, 4000) - def _buildBandpass(self) -> Bandpass: bp_transition = 320.0 / self.outputRate return Bandpass(transition=bp_transition, use_fft=True) diff --git a/owrx/dsp.py b/owrx/dsp.py index 16068d10..8645e622 100644 --- a/owrx/dsp.py +++ b/owrx/dsp.py @@ -40,7 +40,6 @@ class ClientDemodulatorChain(Chain): self.hdOutputRate = hdOutputRate self.secondaryDspEventReceiver = secondaryDspEventReceiver self.selector = Selector(sampleRate, outputRate) - self.selector.setBandpass(-4000, 4000) self.selectorBuffer = Buffer(Format.COMPLEX_FLOAT) self.audioBuffer = None self.demodulator = demod @@ -462,6 +461,8 @@ class DspManager(SdrSourceEventClient, ClientDemodulatorSecondaryDspEventClient) if mode.bandpass: bpf = [mode.bandpass.low_cut, mode.bandpass.high_cut] self.chain.setBandpass(*bpf) + self.props["low_cut"] = mode.bandpass.low_cut + self.props["high_cut"] = mode.bandpass.high_cut else: self.chain.setBandpass(None, None) else: