I’m generating two NBFM signals, offsetting them plus and minus 25 kHz
with FreqXlatingFilters, and combining the output in an adder which then
drives a USRP sink. It seems sensible to put a bandpass filter on the
result.
I have a basic conceptual confusion. I would think that you’d specify a
bandpass filter around zero with a low cutoff of, say, -40e3 and a high
cutoff of +40e3. However, this doesn’t work – the bandpass filter
seems to require a number >0 for the lowpass frequency.
So, in this situation, where I want to filter a spectrum that is
centered around zero, how do I specify the filter lowpass and highpass
frequencies?
A second question – there is a signal component on the output directly
at the USRP center frequency. It’s at most about 30dB below the desired
signals. I assume this is the equivalent of LO leakage. Is there any
way to filter this out or at least reduce its amplitude?
As I’m writing this, I wonder if the solution to both problems is to put
both my signals on one side of the USRP center frequency, say +25 and
+75 kHz. That would allow a sensible bandpass filter that would remove
the zero-frequency component. But the downside of that seems to be
throwing away half the available bandwidth.
Thanks,
John
On Mon, Sep 05, 2011 at 10:19:54AM -0400, John Ackermann N8UR wrote:
I would think that you’d specify a bandpass filter around zero with a
low cutoff of, say, -40e3 and a high cutoff of +40e3. However, this
doesn’t work – the bandpass filter seems to require a number >0 for
the lowpass frequency.
That would be a low-pass filter with a cutoff at 40e3. With
complex-valued signals, a low-pass filter is essentially a band-pass
filter centered around 0 Hz.
there is a signal component on the output directly at the USRP center
frequency. It’s at most about 30dB below the desired signals. I
assume this is the equivalent of LO leakage. Is there any way to
filter this out or at least reduce its amplitude?
As I’m writing this, I wonder if the solution to both problems is to
put both my signals on one side of the USRP center frequency, say +25
and +75 kHz.
Yes, you could use an external analog band-pass filter if that center
spur is a problem for you.
On 05/09/11 10:19 AM, John Ackermann N8UR wrote:
I’m generating two NBFM signals, offsetting them plus and minus 25 kHz
with FreqXlatingFilters, and combining the output in an adder which
then drives a USRP sink. It seems sensible to put a bandpass filter
on the result.
I have a basic conceptual confusion. I would think that you’d specify
a bandpass filter around zero with a low cutoff of, say, -40e3 and a
high cutoff of +40e3. However, this doesn’t work – the bandpass
filter seems to require a number >0 for the lowpass frequency.
Make sure that you specify complex-taps. I assume you’re using GRC. By
default, it uses the version of
the bandpass filter with real taps. But if you specify complex taps,
you can use negative frequencies.
–
Principal Investigator
Shirleys Bay Radio Astronomy Consortium
On Mon, Sep 5, 2011 at 12:55 PM, John Ackermann N8UR [email protected]
wrote:
Hi Marcus –
I am selecting complex taps from the drop down, but still get an error at
runtime if either cutoff frequency is 0 or smaller.
Thanks,
John
John,
That sounds like a bug in the GRC block, then. I just tried this as a
complex BPF and it works fine:
gr.firdes.complex_band_pass(1, 1, -0.1, 0.2, 0.1)
However, as was already mentioned, if you are trying to create a
bandpass
filter from -40 to +40 kHz, that’s just a low pass filter with a
bandwidth
of 40 kHz:
gr.firdes.low_pass(1, 100e3, 40e3, 2e3)
Will give you a filter for this purpose. Substitute your own sampling
rate
and transition width, of course.
Tom
Hi Marcus –
I am selecting complex taps from the drop down, but still get an error
at runtime if either cutoff frequency is 0 or smaller.
Thanks,
John
On 05/09/11 12:55 PM, John Ackermann N8UR wrote:
Hi Marcus –
I am selecting complex taps from the drop down, but still get an error at
runtime if either cutoff frequency is 0 or smaller.
Thanks,
John
I just tried it, and it works just fine.
I select: Complex->Complex (complex taps) from the menu, with a complex
I/O, and I’m able to specify
negative frequency components.
What is the error you’re getting at runtime?
–
Principal Investigator
Shirleys Bay Radio Astronomy Consortium
On 09/05/2011 01:10 PM, Marcus D. Leech wrote:
I just tried it, and it works just fine.
I select: Complex->Complex (complex taps) from the menu, with a complex
I/O, and I’m able to specify
negative frequency components.
What is the error you’re getting at runtime?
Using a band reject filter with low frequency set to -10000 and high
frequency set to 10000, dropdown of complex(decimating), I get this:
Traceback (most recent call last):
File “/home/jra/gnuradio/fm_rx.py”, line 166, in
tb = fm_rx()
File “/home/jra/gnuradio/fm_rx.py”, line 115, in init
1, 200000, -10000, 10000, 1000, firdes.WIN_HAMMING, 6.76))
File
“/usr/local/lib/python2.7/dist-packages/gnuradio/gr/gnuradio_core_general.py”,
line 3437, in band_reject
return _gnuradio_core_general.firdes_band_reject(*args, **kwargs)
IndexError: gr_firdes check failed: 0 < fa <= sampling_freq / 2
Hi…I have an SDRPlay and we have this religious AM station here in DC/MD on 1120kHz and it blocks out alost every signal below 30 MHz. There is also this religious station out of SC where the guy sounds like a troll and just spews right wing propaganda, very annoying to listen to.
I found two sites that sell traps but when you call they are out of business; clifton labs and some ham radio guy.
I have tried everything else but the better the antenna the worse this gets. Even overloads my portable radios. I would make one but cant find the inductors/ dont have the equipment to make one.