discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] isolate channels from wideband


From: John Ackermann N8UR
Subject: Re: [Discuss-gnuradio] isolate channels from wideband
Date: Sun, 02 Aug 2015 15:06:39 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

Very cool!  Thanks for the pointer.

On 08/02/2015 02:32 PM, Tim K wrote:
Just as a heads up, someone mailed this into the mailing list the other
day. I think it accomplishes exactly what you all want -- although it
doesn't use PFBs as I recall.

https://github.com/madengr/ham2mon

- Tim

On Sun, Aug 2, 2015 at 2:18 PM, John Ackermann N8UR <address@hidden
<mailto:address@hidden>> wrote:

    Hi Chris --

    Using the variables, I now have the program working in general.

    The channel mapping gave me some nightmares, though.  I finally
    decided that you need two maps -- one for the channelizer block,
    where you do the 4,5,6,7,0,1,2,3 translation, and another for the
    GUI that is a simple 0..7.

    With that, it seems to be working well although my WBX front end
    seems to have been fried as it is more deaf than it used to be.
    Time to switch to hardware troubleshooting mode...

    Thanks, again!

    John
    ----


    On 08/02/2015 12:10 AM, Chris Kuethe wrote:

        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 <mailto: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>
                <mailto: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>
                <mailto: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>
                      <mailto: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>
                <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>
                <mailto:address@hidden
                <mailto:address@hidden>>
                       > >>
                https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
                       > >>
                       > >>
                       > >> _______________________________________________
                       > >> Discuss-gnuradio mailing list
                       > >> address@hidden
                <mailto:address@hidden>
                <mailto: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 <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





    _______________________________________________
    Discuss-gnuradio mailing list
    address@hidden <mailto:address@hidden>
    https://lists.gnu.org/mailman/listinfo/discuss-gnuradio





reply via email to

[Prev in Thread] Current Thread [Next in Thread]