[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] isolate channels from wideband
From: |
Chris Kuethe |
Subject: |
Re: [Discuss-gnuradio] isolate channels from wideband |
Date: |
Sat, 1 Aug 2015 21:10:33 -0700 |
Thanks for pointing out the paste-o. I'll fix that.
I'm using gnuradio 3.7.8rc1, which has helper blocks for computing
filter taps. You can replace them with variables:
pfb_taps = firdes.low_pass(2.0, oversampled_width, noaa_fm_dev * 2,
2500, firdes.WIN_HAMMING, 6.76)
lpf_taps = firdes.low_pass(1.0, hardware_rate, noaa_band_width / 2,
noaa_chan_width, firdes.WIN_HAMMING, 6.76)
On Sat, Aug 1, 2015 at 5:00 PM, John Ackermann N8UR <address@hidden> wrote:
> Thanks much for this, Chris! I look forward to playing with it, but...
>
> When I load the flowgraph on my GRC 3.7.6.1 system, I get a "Missing Block"
> error for each of lpf_taps and pbf_taps, triggering errors in the xfft and
> channelizer blocks.
>
> I also had an error in the "Multiply Const" block coming out of channel 7.
> but that was caused by a missing space before "else" in the evaluation.
>
> Help?
>
> But thanks so much for taking this on. It's the perfect starting point for
> some projects I've been wanting to work on!
>
> John
> ----
>
> On 08/01/2015 03:26 PM, Chris Kuethe wrote:
>>
>> OK, Here it is... at least, a beta version. I have yet to come up with
>> a concise explanation of the channel map and why you'd want to
>> oversample, but it is functional.
>>
>> This flowgraph would work equally well by directly connecting all the
>> ports together, but I'm a big fan of using virtual sources and sinks to
>> make the design somewhat self-documenting..
>>
>>
>>
>> On Sat, Aug 1, 2015 at 4:55 AM, Markus Heller <address@hidden
>> <mailto:address@hidden>> wrote:
>>
>> Great! Thanks! I'm very curious!
>>
>> br/vy73
>> markus
>> dl8rds
>>
>> Am Freitag, den 31.07.2015, 14:34 -0700 schrieb Chris Kuethe:
>> > OK, I have a mostly working flowgraph and am now adding comment
>> to all
>> > the blocks explaining why I'm doing this or that. Will publish
>> tonight
>> > or tomorrow.
>> >
>> > On Tue, Jul 21, 2015 at 11:56 AM, Chris Kuethe
>> <address@hidden <mailto:address@hidden>> wrote:
>> > > Maybe I'll do up an illustrated example on this using NOAA
>> weather
>> > > radio, or the pager band
>> > >
>> > > On Tue, Jul 21, 2015 at 11:42 AM, <address@hidden
>> <mailto:address@hidden>> wrote:
>> > >> I just use the built-in firdes stuff, rather than using an
>> external
>> > >> designer.
>> > >>
>> > >>
>> > >>
>> > >>
>> > >>
>> > >>
>> > >>
>> > >> On 2015-07-21 14:38, Marcus Müller wrote:
>> > >>
>> > >> Hi Rich, hello Markus,
>> > >>
>> > >> On 21.07.2015 19 <tel:21.07.2015%2019>:51, Richard Bell wrote:
>> > >>
>> > >> GNU Radio has channelizers built-in, but I've not used them
>> yet, so I don't
>> > >> know how far they take you into this kind of task.
>> > >>
>> > >> the Polyphase channelizer is actually an implementation
>> derived from that
>> > >> school of thought, and it works amazingly well.
>> > >> In fact, in preparation of a presentation at a certain ham
>> conference, I
>> > >> tried using it to get 20 PMR/LPD channels out of a 1MS/s
>> signal in real
>> > >> time, and then just shuffle them around, before feeding them
>> back into the
>> > >> inverse synthesizer PFB.
>> > >>
>> > >> It's pretty easy:
>> > >> Design a single low pass filter, as if you just wanted to
>> filter out the
>> > >> channel which is centered exactly at your RF center frequency,
>> i.e. 0Hz,
>> > >> with the full sampling rate [2], using the gr_filter_design
>> tool. Play
>> > >> around with the different window types[1], and bear in mind
>> that the
>> > >> suppression outside your desired passband needs to be high
>> enough so that
>> > >> the sum of the energy in all other channels don't hurt your
>> channel too
>> > >> much, but don't overdo it (60dB suppression should be enough).
>> > >> Now you get a long filter. Copy and paste the filter
>> coefficients from
>> > >> gr_filter_design to your PFB filter taps property.
>> > >> Set your channelizers number of channels according to your
>> plans -- 40, if
>> > >> you want to get all the 40 25kHz channels in 2MHz. You get a
>> block with 40
>> > >> outputs!
>> > >> Explaining things like channel mapping is best done by
>> pointing you at the
>> > >> official documentation: [3]
>> > >>
>> > >>
>> > >> Greetings!
>> > >> Marcus
>> > >>
>> > >> [1] Hamming is not always the best choice, I'd try that,
>> Blackman-harris,
>> > >> and Kaiser. I personally like harris in this case -- we want
>> to get a full
>> > >> channel, two adjacent channels are usually not occupied, and
>> as soon as we
>> > >> pass the stopband frequency, we're basically at -100dB.
>> > >> [2] assuming you want to use 2MS/s for your 2MHz wide band,
>> 2MHz sampling
>> > >> rate, and assuming 25kHz wide channels, 12.5kHz cut off
>> frequency, 25kHz
>> > >> start of stoppband. I get something like 440 taps.
>> > >> [3]
>> > >>
>>
>> https://gnuradio.org/doc/doxygen/classgr_1_1filter_1_1pfb__channelizer__ccf.html
>> > >>
>> > >> _______________________________________________
>> > >> Discuss-gnuradio mailing list
>> > >> address@hidden <mailto:address@hidden>
>> > >> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>> > >>
>> > >>
>> > >> _______________________________________________
>> > >> Discuss-gnuradio mailing list
>> > >> address@hidden <mailto:address@hidden>
>> > >> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>> > >>
>> > >
>> > >
>> > >
>> > > --
>> > > GDB has a 'break' feature; why doesn't it have 'fix' too?
>> >
>> >
>> >
>>
>>
>>
>>
>>
>> --
>> GDB has a 'break' feature; why doesn't it have 'fix' too?
>>
>>
>> _______________________________________________
>> Discuss-gnuradio mailing list
>> address@hidden
>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
--
GDB has a 'break' feature; why doesn't it have 'fix' too?
- Re: [Discuss-gnuradio] isolate channels from wideband, Markus Heller, 2015/08/01
- Re: [Discuss-gnuradio] isolate channels from wideband, Chris Kuethe, 2015/08/01
- Re: [Discuss-gnuradio] isolate channels from wideband, John Ackermann N8UR, 2015/08/01
- Re: [Discuss-gnuradio] isolate channels from wideband, John Ackermann N8UR, 2015/08/02
- Re: [Discuss-gnuradio] isolate channels from wideband, Chris Kuethe, 2015/08/02
- Re: [Discuss-gnuradio] isolate channels from wideband, John Ackermann N8UR, 2015/08/02