Here's an example of broadcast FM. It's from the first couple of
tutorials at

  https://greatscottgadgets.com/sdr

All you need to do is to change the samp rate and the center_freq, and
swap out the osmocom Source for the RTL-SDR Source.

Since each channel is roughly 200 kHz wide, you probably won't get more
then 2 stations at a sampling rate of 2 MHz.

I have HackRF One and it runs fine on my i7 at sampling rate of 20 MHz.

However, this was the first time I tried on the i7 - and  when I drop
the sampling rate to 2 MHz, I got the 'Ua's  - audio underflows,

But it sounded fine. Not sure what is causing the audio underflow.

I would guess you should be able to replace the "Signal
Source/Multiply/Low Pass Filter" with the "Frequency Xlating FIR Filter"
or the "Low Pass Filter/Rational Resampler" with the polyphase filter bank.

-- Cinaed


On 12/07/2018 11:33 AM, Luis Roca wrote:
> Thanks!
> 
> On Fri, Dec 7, 2018 at 1:12 PM <discuss-gnuradio-requ...@gnu.org
> <mailto:discuss-gnuradio-requ...@gnu.org>> wrote:
> 
>     Send Discuss-gnuradio mailing list submissions to
>             discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>
> 
>     To subscribe or unsubscribe via the World Wide Web, visit
>             https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     or, via email, send a message with subject or body 'help' to
>             discuss-gnuradio-requ...@gnu.org
>     <mailto:discuss-gnuradio-requ...@gnu.org>
> 
>     You can reach the person managing the list at
>             discuss-gnuradio-ow...@gnu.org
>     <mailto:discuss-gnuradio-ow...@gnu.org>
> 
>     When replying, please edit your Subject line so it is more specific
>     than "Re: Contents of Discuss-gnuradio digest..."
> 
> 
>     Today's Topics:
> 
>        1. Re: help: optimizing a fm broadcast flowchart. Getting
>           multiple stations in a rtlsdr (Derek Kozel) (Luis Roca)
>        2. Re: help: optimizing a fm broadcast flowchart. Getting
>           multiple stations in a rtlsdr (Derek Kozel) (Michael Dickens)
>        3. Re: [USRP-users] Segmentation fault commands to USRP with
>           gnuradio (M?ller)
>        4. Re: [USRP-users] Segmentation fault commands to USRP with
>           gnuradio (M?ller)
>        5. Re: [USRP-users] Segmentation fault commands to USRP with
>           gnuradio (Christoph Mayer)
>        6. Re: [USRP-users] Segmentation fault commands to USRP with
>           gnuradio (M?ller)
>        7. Receiving NOAA signals and passing to BB (Guilherme Theis)
> 
> 
>     ----------------------------------------------------------------------
> 
>     Message: 1
>     Date: Thu, 6 Dec 2018 13:17:01 -0400
>     From: Luis Roca <lrocaigu...@gmail.com <mailto:lrocaigu...@gmail.com>>
>     To: discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>
>     Subject: Re: [Discuss-gnuradio] help: optimizing a fm broadcast
>             flowchart. Getting multiple stations in a rtlsdr (Derek Kozel)
>     Message-ID:
>            
>     <CALNke=J=5-v5e6fspr+-ghrtzdbk3qrvb_hobehguf_gi9t...@mail.gmail.com
>     <mailto:5-v5e6fspr%2b-ghrtzdbk3qrvb_hobehguf_gi9t...@mail.gmail.com>>
>     Content-Type: text/plain; charset="utf-8"
> 
>     Thanks for your response Derek, we are using a FIR filter. I am
>     including
>     the flowchart
> 
>     On Thu, Dec 6, 2018 at 1:01 PM <discuss-gnuradio-requ...@gnu.org
>     <mailto:discuss-gnuradio-requ...@gnu.org>> wrote:
> 
>     > Send Discuss-gnuradio mailing list submissions to
>     >         discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>
>     >
>     > To subscribe or unsubscribe via the World Wide Web, visit
>     >         https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     > or, via email, send a message with subject or body 'help' to
>     >         discuss-gnuradio-requ...@gnu.org
>     <mailto:discuss-gnuradio-requ...@gnu.org>
>     >
>     > You can reach the person managing the list at
>     >         discuss-gnuradio-ow...@gnu.org
>     <mailto:discuss-gnuradio-ow...@gnu.org>
>     >
>     > When replying, please edit your Subject line so it is more specific
>     > than "Re: Contents of Discuss-gnuradio digest..."
>     >
>     >
>     > Today's Topics:
>     >
>     >    1. help: optimizing a fm broadcast flowchart. Getting multiple
>     >       stations in a rtlsdr (Luis Roca)
>     >    2. Re: help: optimizing a fm broadcast flowchart. Getting
>     >       multiple stations in a rtlsdr (Derek Kozel)
>     >    3. Re: [USRP-users] Segmentation fault commands to USRP with
>     >       gnuradio (samuel verdon)
>     >    4. Lock/unlock? (Albin Stig?)
>     >
>     >
>     > ----------------------------------------------------------------------
>     >
>     > Message: 1
>     > Date: Wed, 5 Dec 2018 20:54:52 -0400
>     > From: Luis Roca <lrocaigu...@gmail.com <mailto:lrocaigu...@gmail.com>>
>     > To: discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>
>     > Subject: [Discuss-gnuradio] help: optimizing a fm broadcast flowchart.
>     >         Getting multiple stations in a rtlsdr
>     > Message-ID:
>     >         <CALNke=
>     > kkgriikg8stg-d_srpv31oe7nk3biysg8ihojsfmg...@mail.gmail.com
>     <mailto:kkgriikg8stg-d_srpv31oe7nk3biysg8ihojsfmg...@mail.gmail.com>>
>     > Content-Type: text/plain; charset="utf-8"
>     >
>     > Thanks for this great software. We are tinkering with a setup for
>     listening
>     > to radio and storing the streams as wavs.  We have two challenges
>     that we
>     > haven't been able to tackle satisfactorily.  Any help would be
>     appreciated.
>     >
>     > 1. What do we need in order to tune into as many stations as an
>     rtlsdr can
>     > fit in its bandwidth and create wav files for each one. In our
>     setup we use
>     > each sdr for a single station but scaling is a challenge.
>     >
>     > 2. How can we optimize our existing flowchart ( included
>     screenshot) for
>     > broadcasting wavs from the computer thru a hackRF.  We use this
>     for testing
>     > the sdr setup.
>     >
>     > Thanks all,
>     > Luis
>     > -------------- next part --------------
>     > An HTML attachment was scrubbed...
>     > URL: <
>     >
>     
> http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181205/f813c036/attachment.html
>     > >
>     >
>     > ------------------------------
>     >
>     > Message: 2
>     > Date: Thu, 6 Dec 2018 13:50:09 +0000
>     > From: Derek Kozel <derek.ko...@gmail.com
>     <mailto:derek.ko...@gmail.com>>
>     > To: discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>
>     > Subject: Re: [Discuss-gnuradio] help: optimizing a fm broadcast
>     >         flowchart. Getting multiple stations in a rtlsdr
>     > Message-ID: <3da22a95-25bb-d46f-4780-ace2b1541...@gmail.com
>     <mailto:3da22a95-25bb-d46f-4780-ace2b1541...@gmail.com>>
>     > Content-Type: text/plain; charset="utf-8"; Format="flowed"
>     >
>     > Hi Luis,
>     >
>     > At least on my end I can't see an attachment. Since FM broadcast
>     > stations are regularly spaced the polyphase filterbank is a good
>     choice
>     > for separating out each of the individual channels. You can then
>     use the
>     > same demodulation set of blocks and file sink that you're (presumably)
>     > using now to handle each channel.
>     >
>     > Regards,
>     > Derek
>     >
>     > On 06/12/2018 00:54, Luis Roca wrote:
>     > > Thanks for this great software. We are tinkering with a setup for
>     > > listening to radio and storing the streams as wavs.? We have two
>     > > challenges that we haven't been able to tackle satisfactorily.? Any
>     > > help would be appreciated.
>     > >
>     > > 1. What do we need in order to tune into as many stations as an
>     rtlsdr
>     > > can fit in its bandwidth and create wav files for each one. In our
>     > > setup we use each sdr for a single station but scaling is a
>     challenge.
>     > >
>     > > 2. How can we optimize our existing flowchart ( included screenshot)
>     > > for broadcasting wavs from the computer thru a hackRF.? We use this
>     > > for testing the sdr setup.
>     > >
>     > > Thanks all,
>     > > Luis
>     > >
>     > > _______________________________________________
>     > > Discuss-gnuradio mailing list
>     > > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >
>     > -------------- next part --------------
>     > An HTML attachment was scrubbed...
>     > URL: <
>     >
>     
> http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181206/4b58fd34/attachment.html
>     > >
>     >
>     > ------------------------------
>     >
>     > Message: 3
>     > Date: Thu, 6 Dec 2018 16:48:52 +0100
>     > From: samuel verdon <sam.ver...@gmail.com
>     <mailto:sam.ver...@gmail.com>>
>     > To: Marcus M?ller <marcus.muel...@ettus.com
>     <mailto:marcus.muel...@ettus.com>>,
>     >         "discuss-gnuradio@gnu.org
>     <mailto:discuss-gnuradio@gnu.org>" <discuss-gnuradio@gnu.org
>     <mailto:discuss-gnuradio@gnu.org>>
>     > Subject: Re: [Discuss-gnuradio] [USRP-users] Segmentation fault
>     >         commands to USRP with gnuradio
>     > Message-ID: <5c0944e5.1c69fb81.4463e.0...@mx.google.com
>     <mailto:5c0944e5.1c69fb81.4463e.0...@mx.google.com>>
>     > Content-Type: text/plain; charset="utf-8"
>     >
>     > Hi Marcus and Martin,
>     > Thank you for your help!
>     > Do you now how I can follow the problem?
>     > Or if is it already solved, how can I fix it?
>     >
>     > Thanks a lot!
>     >
>     > Samuel
>     >
>     >
>     > De?: Marcus M?ller
>     > Envoy? le?:Wednesday, December 5, 2018 13:50
>     > ??: discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>;
>     samuel verdon
>     > Cc?: Martin Braun
>     > Objet?:Re: [USRP-users] Segmentation fault commands to USRP with
>     gnuradio
>     >
>     > <ugly expletive>
>     > this looks like my fault. Not feeling well enough to fix now, but wait
>     > a day and I'll have something to test.
>     > On Wed, 2018-12-05 at 12:56 +0100, Marcus M?ller wrote:
>     > > Hi Samuel,
>     > >
>     > > cool! That's really helpful :)
>     > >
>     > > I'm now cross-posting this to discuss-gr, because it's a GNU Radio-
>     > > land
>     > > issue. The maintainers of gr-uhd are active over there, too, so this
>     > > seems the smarter place to continue discussion.
>     > >
>     > >
>     > > so, in medias res:
>     > >
>     > > On Wed, 2018-12-05 at 12:43 +0100, samuel verdon wrote:
>     > > > #3  0x00007f7f15906700 in pmt::dict_has_key (dict=..., key=...) at
>     > > > /usr/local/src/gnuradio/gnuradio-runtime/lib/pmt/pmt.cc:937
>     > >
>     > > m?p m???p. Our favorite (only) variadic type library leads to
>     > > segfaults.
>     > >
>     > > I'll look into that and be back in a while.
>     > >
>     > > Best regards,
>     > > Marcus
>     > >
>     >
>     >
>     > -------------- next part --------------
>     > An HTML attachment was scrubbed...
>     > URL: <
>     >
>     
> http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181206/0116089a/attachment.html
>     > >
>     >
>     > ------------------------------
>     >
>     > Message: 4
>     > Date: Thu, 6 Dec 2018 17:51:39 +0100
>     > From: Albin Stig? <albin.st...@gmail.com
>     <mailto:albin.st...@gmail.com>>
>     > To: GNURadio Discussion List <discuss-gnuradio@gnu.org
>     <mailto:discuss-gnuradio@gnu.org>>
>     > Subject: [Discuss-gnuradio] Lock/unlock?
>     > Message-ID:
>     >         <
>     > camc++1wbw0bum8wo446sl4hscqrag9k9jj75hw7pmc04-zp...@mail.gmail.com
>     
> <mailto:camc%2b%2b1wbw0bum8wo446sl4hscqrag9k9jj75hw7pmc04-zp...@mail.gmail.com>>
>     > Content-Type: text/plain; charset="utf-8"
>     >
>     > Does calling lock/unlock on a top block call the stop method on
>     connected
>     > blocks? And does it flush/empty buffers?
>     >
>     >
>     > --Albin
>     > -------------- next part --------------
>     > An HTML attachment was scrubbed...
>     > URL: <
>     >
>     
> http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181206/4fd8d57e/attachment.html
>     > >
>     >
>     > ------------------------------
>     >
>     > Subject: Digest Footer
>     >
>     > _______________________________________________
>     > Discuss-gnuradio mailing list
>     > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >
>     >
>     > ------------------------------
>     >
>     > End of Discuss-gnuradio Digest, Vol 194, Issue 5
>     > ************************************************
>     >
>     -------------- next part --------------
>     An HTML attachment was scrubbed...
>     URL:
>     
> <http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181206/ab22faea/attachment.html>
>     -------------- next part --------------
>     A non-text attachment was scrubbed...
>     Name: Screen Shot 2018-12-06 at 12.10.23 PM.jpeg
>     Type: image/jpeg
>     Size: 241723 bytes
>     Desc: not available
>     URL:
>     
> <http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181206/ab22faea/attachment.jpeg>
> 
>     ------------------------------
> 
>     Message: 2
>     Date: Thu, 06 Dec 2018 12:33:56 -0500
>     From: Michael Dickens <michael.dick...@ettus.com
>     <mailto:michael.dick...@ettus.com>>
>     To: Luis Roca <lrocaigu...@gmail.com
>     <mailto:lrocaigu...@gmail.com>>, discuss-gnuradio@gnu.org
>     <mailto:discuss-gnuradio@gnu.org>
>     Subject: Re: [Discuss-gnuradio] help: optimizing a fm broadcast
>             flowchart. Getting multiple stations in a rtlsdr (Derek Kozel)
>     Message-ID:
>            
>     <1544117636.734517.1601150376.31a23...@webmail.messagingengine.com
>     
> <mailto:1544117636.734517.1601150376.31a23...@webmail.messagingengine.com>>
>     Content-Type: text/plain; charset="utf-8"
> 
>     Unless your host computer's CPU is way underpowered, I'm with Derek
>     here: use polyphase filterbanks to channelize into 200 kHz bandwidth per
>     channel, then have a bank of FM demodulators, one per channel. Output to
>     files, or display, or whatever you need. - MLD
>     On Thu, Dec 6, 2018, at 12:17 PM, Luis Roca wrote:
>     > Thanks for your response Derek, we are using a FIR filter. I am
>     > including the flowchart> Email had 1 attachment:
>     >  * Screen Shot 2018-12-06 at 12.10.23 PM.jpeg 331k (image/jpeg)
>     -------------- next part --------------
>     An HTML attachment was scrubbed...
>     URL:
>     
> <http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181206/46a4e5f9/attachment.html>
> 
>     ------------------------------
> 
>     Message: 3
>     Date: Fri, 7 Dec 2018 10:21:24 +0000
>     From: M?ller, Marcus (CEL) <muel...@kit.edu <mailto:muel...@kit.edu>>
>     To: "discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>"
>     <discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>>,
>             "sam.ver...@gmail.com <mailto:sam.ver...@gmail.com>"
>     <sam.ver...@gmail.com <mailto:sam.ver...@gmail.com>>,
>             "marcus.muel...@ettus.com
>     <mailto:marcus.muel...@ettus.com>"      <marcus.muel...@ettus.com
>     <mailto:marcus.muel...@ettus.com>>
>     Subject: Re: [Discuss-gnuradio] [USRP-users] Segmentation fault
>             commands to USRP with gnuradio
>     Message-ID: <71e7afacdda941e9edceeb417814b3497eef867d.ca...@kit.edu
>     <mailto:71e7afacdda941e9edceeb417814b3497eef867d.ca...@kit.edu>>
>     Content-Type: text/plain; charset="utf-8"
> 
>     Hi Samuel,
> 
>     so, my guess is that once again, we're running into the C++-specific
>     static initialization order fiasco (SIOF, yes, it's a term) for the PMT
>     keys used in the dicts.
> 
>     Solution: I've extracted functions to return these keys and statically
>     initialize them but once, because PMT's pmt_symbol creation is
>     relatively CPU-intense, and shouldn't be done at run time.
> 
>     Somehow, it seems, that can sometimes lead to different notions of the
>     same symbol.
> 
>     Solution: I was going to go in there, and instead of having these
>     functions that all look like
> 
>     const pmt::pmt_t gr::uhd::cmd_time_key()
>     {
>       static const pmt::pmt_t val
>     = pmt::mp("time");
>       return val;
>     }
> 
>     just go in there, and give each instance of a usrp_block its own const
>     fields of the same name, and initialize them in block constructor
>     initialization list; that's what I did for the rest of GR, and I hope
>     it works there.
> 
>     Best regards,
>     Marcus
> 
>     On Thu, 2018-12-06 at 16:48 +0100, samuel verdon wrote:
>     > Hi Marcus and Martin,
>     > Thank you for your help!
>     > Do you now how I can follow the problem?
>     > Or if is it already solved, how can I fix it?
>     > 
>     > Thanks a lot!
>     > 
>     > Samuel
>     > 
>     > 
>     > De : Marcus M?ller
>     > Envoy? le :Wednesday, December 5, 2018 13:50
>     > ? : discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>;
>     samuel verdon
>     > Cc : Martin Braun
>     > Objet :Re: [USRP-users] Segmentation fault commands to USRP with
>     gnuradio
>     > 
>     > <ugly expletive>
>     > this looks like my fault. Not feeling well enough to fix now, but wait
>     > a day and I'll have something to test.
>     > On Wed, 2018-12-05 at 12:56 +0100, Marcus M?ller wrote:
>     > > Hi Samuel,
>     > >
>     > > cool! That's really helpful :)
>     > >
>     > > I'm now cross-posting this to discuss-gr, because it's a GNU Radio-
>     > > land
>     > > issue. The maintainers of gr-uhd are active over there, too, so this
>     > > seems the smarter place to continue discussion.
>     > >
>     > >
>     > > so, in medias res:
>     > >
>     > > On Wed, 2018-12-05 at 12:43 +0100, samuel verdon wrote:
>     > > > #3  0x00007f7f15906700 in pmt::dict_has_key (dict=..., key=...) at
>     > > > /usr/local/src/gnuradio/gnuradio-runtime/lib/pmt/pmt.cc:937
>     > >
>     > > m?p m???p. Our favorite (only) variadic type library leads to
>     > > segfaults.
>     > >
>     > > I'll look into that and be back in a while.
>     > >
>     > > Best regards,
>     > > Marcus
>     > >
>     > 
>     > 
>     > _______________________________________________
>     > Discuss-gnuradio mailing list
>     > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 
>     ------------------------------
> 
>     Message: 4
>     Date: Fri, 7 Dec 2018 10:30:34 +0000
>     From: M?ller, Marcus (CEL) <muel...@kit.edu <mailto:muel...@kit.edu>>
>     To: "discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>"
>     <discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>>
>     Subject: Re: [Discuss-gnuradio] [USRP-users] Segmentation fault
>             commands to USRP with gnuradio
>     Message-ID: <10f739cc901fb14337ee55b76639cb0808a12cdb.ca...@kit.edu
>     <mailto:10f739cc901fb14337ee55b76639cb0808a12cdb.ca...@kit.edu>>
>     Content-Type: text/plain; charset="utf-8"
> 
>     By the way, I think the reason this goes wrong is that a) I've managed
>     to run into the Static Initialization Order Fiasco, destructor edition,
>     and b) that can't be solved with pmt_t, as pmt_t is actually a typedef
>     for smart_pointer<actual_type>, and the moment the statically generated
>     object (the smart pointer) leaves scope of the consuming function the
>     first time, its destructor is being called.
> 
>     So, yay, if that assessment is correct, by putting PMT keys into the
>     members of class instances, I've only postponed the problem you're
>     seeing now to the destruction of blocks, and since that typically
>     doesn't happen until the end of programs, it doesn't "hurt" anyone.
> 
>     It's still wrong, and would lead to unpredictable behaviour in case
>     someone cleans up blocks at runtime. Which they should be able to do.
> 
>     Soooo argh. No simple solution here. Anyone a great idea?
> 
>     Best regards,
>     Marcus
>     On Fri, 2018-12-07 at 10:21 +0000, M?ller, Marcus (CEL) wrote:
>     > Hi Samuel,
>     >
>     > so, my guess is that once again, we're running into the C++-specific
>     > static initialization order fiasco (SIOF, yes, it's a term) for
>     the PMT
>     > keys used in the dicts.
>     >
>     > Solution: I've extracted functions to return these keys and statically
>     > initialize them but once, because PMT's pmt_symbol creation is
>     > relatively CPU-intense, and shouldn't be done at run time.
>     >
>     > Somehow, it seems, that can sometimes lead to different notions of the
>     > same symbol.
>     >
>     > Solution: I was going to go in there, and instead of having these
>     > functions that all look like
>     >
>     > const pmt::pmt_t gr::uhd::cmd_time_key()
>     > {
>     >   static const pmt::pmt_t val
>     > = pmt::mp("time");
>     >   return val;
>     > }
>     >
>     > just go in there, and give each instance of a usrp_block its own const
>     > fields of the same name, and initialize them in block constructor
>     > initialization list; that's what I did for the rest of GR, and I hope
>     > it works there.
>     >
>     > Best regards,
>     > Marcus
>     >
>     > On Thu, 2018-12-06 at 16:48 +0100, samuel verdon wrote:
>     > > Hi Marcus and Martin,
>     > > Thank you for your help!
>     > > Do you now how I can follow the problem?
>     > > Or if is it already solved, how can I fix it?
>     > > 
>     > > Thanks a lot!
>     > > 
>     > > Samuel
>     > > 
>     > > 
>     > > De : Marcus M?ller
>     > > Envoy? le :Wednesday, December 5, 2018 13:50
>     > > ? : discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>;
>     samuel verdon
>     > > Cc : Martin Braun
>     > > Objet :Re: [USRP-users] Segmentation fault commands to USRP with
>     gnuradio
>     > > 
>     > > <ugly expletive>
>     > > this looks like my fault. Not feeling well enough to fix now,
>     but wait
>     > > a day and I'll have something to test.
>     > > On Wed, 2018-12-05 at 12:56 +0100, Marcus M?ller wrote:
>     > > > Hi Samuel,
>     > > >
>     > > > cool! That's really helpful :)
>     > > >
>     > > > I'm now cross-posting this to discuss-gr, because it's a GNU
>     Radio-
>     > > > land
>     > > > issue. The maintainers of gr-uhd are active over there, too,
>     so this
>     > > > seems the smarter place to continue discussion.
>     > > >
>     > > >
>     > > > so, in medias res:
>     > > >
>     > > > On Wed, 2018-12-05 at 12:43 +0100, samuel verdon wrote:
>     > > > > #3  0x00007f7f15906700 in pmt::dict_has_key (dict=...,
>     key=...) at
>     > > > > /usr/local/src/gnuradio/gnuradio-runtime/lib/pmt/pmt.cc:937
>     > > >
>     > > > m?p m???p. Our favorite (only) variadic type library leads to
>     > > > segfaults.
>     > > >
>     > > > I'll look into that and be back in a while.
>     > > >
>     > > > Best regards,
>     > > > Marcus
>     > > >
>     > >
>     > > 
>     > > 
>     > > _______________________________________________
>     > > Discuss-gnuradio mailing list
>     > > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >
>     > _______________________________________________
>     > Discuss-gnuradio mailing list
>     > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 
>     ------------------------------
> 
>     Message: 5
>     Date: Fri, 7 Dec 2018 13:00:53 +0100
>     From: Christoph Mayer <hca...@gmail.com <mailto:hca...@gmail.com>>
>     To: muel...@kit.edu <mailto:muel...@kit.edu>
>     Cc: discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>
>     Subject: Re: [Discuss-gnuradio] [USRP-users] Segmentation fault
>             commands to USRP with gnuradio
>     Message-ID:
>            
>     <CAJahsjWMGnZJShTFH8-n+hdz_0fqa5Zk4=tbahxsma4ssuc...@mail.gmail.com
>     <mailto:tbahxsma4ssuc...@mail.gmail.com>>
>     Content-Type: text/plain; charset="UTF-8"
> 
>     Hi Marcus,
> 
>     what is the reason for having
>       typedef boost::intrusive_ptr<pmt_base> pmt_t;
>     and not using a shared_ptr?
> 
>     As far as I understand, if a shared_ptr instead of
>     boost::intrusive_ptr were used, one could use either the method
>     described here:
>     
> https://www.boost.org/doc/libs/1_68_0/libs/smart_ptr/doc/html/smart_ptr.html#techniques_static
>     or use the aliasing constructor of a shared_ptr (probably better).
> 
>     Best regards
>     Christoph
> 
>     On Fri, Dec 7, 2018 at 11:32 AM M?ller, Marcus (CEL)
>     <muel...@kit.edu <mailto:muel...@kit.edu>> wrote:
>     >
>     > By the way, I think the reason this goes wrong is that a) I've managed
>     > to run into the Static Initialization Order Fiasco, destructor
>     edition,
>     > and b) that can't be solved with pmt_t, as pmt_t is actually a typedef
>     > for smart_pointer<actual_type>, and the moment the statically
>     generated
>     > object (the smart pointer) leaves scope of the consuming function the
>     > first time, its destructor is being called.
>     >
>     > So, yay, if that assessment is correct, by putting PMT keys into the
>     > members of class instances, I've only postponed the problem you're
>     > seeing now to the destruction of blocks, and since that typically
>     > doesn't happen until the end of programs, it doesn't "hurt" anyone.
>     >
>     > It's still wrong, and would lead to unpredictable behaviour in case
>     > someone cleans up blocks at runtime. Which they should be able to do.
>     >
>     > Soooo argh. No simple solution here. Anyone a great idea?
>     >
>     > Best regards,
>     > Marcus
>     > On Fri, 2018-12-07 at 10:21 +0000, M?ller, Marcus (CEL) wrote:
>     > > Hi Samuel,
>     > >
>     > > so, my guess is that once again, we're running into the C++-specific
>     > > static initialization order fiasco (SIOF, yes, it's a term) for
>     the PMT
>     > > keys used in the dicts.
>     > >
>     > > Solution: I've extracted functions to return these keys and
>     statically
>     > > initialize them but once, because PMT's pmt_symbol creation is
>     > > relatively CPU-intense, and shouldn't be done at run time.
>     > >
>     > > Somehow, it seems, that can sometimes lead to different notions
>     of the
>     > > same symbol.
>     > >
>     > > Solution: I was going to go in there, and instead of having these
>     > > functions that all look like
>     > >
>     > > const pmt::pmt_t gr::uhd::cmd_time_key()
>     > > {
>     > >   static const pmt::pmt_t val
>     > > = pmt::mp("time");
>     > >   return val;
>     > > }
>     > >
>     > > just go in there, and give each instance of a usrp_block its own
>     const
>     > > fields of the same name, and initialize them in block constructor
>     > > initialization list; that's what I did for the rest of GR, and I
>     hope
>     > > it works there.
>     > >
>     > > Best regards,
>     > > Marcus
>     > >
>     > > On Thu, 2018-12-06 at 16:48 +0100, samuel verdon wrote:
>     > > > Hi Marcus and Martin,
>     > > > Thank you for your help!
>     > > > Do you now how I can follow the problem?
>     > > > Or if is it already solved, how can I fix it?
>     > > >
>     > > > Thanks a lot!
>     > > >
>     > > > Samuel
>     > > >
>     > > >
>     > > > De : Marcus M?ller
>     > > > Envoy? le :Wednesday, December 5, 2018 13:50
>     > > > ? : discuss-gnuradio@gnu.org
>     <mailto:discuss-gnuradio@gnu.org>; samuel verdon
>     > > > Cc : Martin Braun
>     > > > Objet :Re: [USRP-users] Segmentation fault commands to USRP
>     with gnuradio
>     > > >
>     > > > <ugly expletive>
>     > > > this looks like my fault. Not feeling well enough to fix now,
>     but wait
>     > > > a day and I'll have something to test.
>     > > > On Wed, 2018-12-05 at 12:56 +0100, Marcus M?ller wrote:
>     > > > > Hi Samuel,
>     > > > >
>     > > > > cool! That's really helpful :)
>     > > > >
>     > > > > I'm now cross-posting this to discuss-gr, because it's a GNU
>     Radio-
>     > > > > land
>     > > > > issue. The maintainers of gr-uhd are active over there, too,
>     so this
>     > > > > seems the smarter place to continue discussion.
>     > > > >
>     > > > >
>     > > > > so, in medias res:
>     > > > >
>     > > > > On Wed, 2018-12-05 at 12:43 +0100, samuel verdon wrote:
>     > > > > > #3  0x00007f7f15906700 in pmt::dict_has_key (dict=...,
>     key=...) at
>     > > > > > /usr/local/src/gnuradio/gnuradio-runtime/lib/pmt/pmt.cc:937
>     > > > >
>     > > > > m?p m???p. Our favorite (only) variadic type library leads to
>     > > > > segfaults.
>     > > > >
>     > > > > I'll look into that and be back in a while.
>     > > > >
>     > > > > Best regards,
>     > > > > Marcus
>     > > > >
>     > > >
>     > > >
>     > > >
>     > > > _______________________________________________
>     > > > Discuss-gnuradio mailing list
>     > > > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     > >
>     > > _______________________________________________
>     > > Discuss-gnuradio mailing list
>     > > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     > _______________________________________________
>     > Discuss-gnuradio mailing list
>     > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 
> 
> 
>     ------------------------------
> 
>     Message: 6
>     Date: Fri, 7 Dec 2018 12:13:24 +0000
>     From: M?ller, Marcus (CEL) <muel...@kit.edu <mailto:muel...@kit.edu>>
>     To: "hca...@gmail.com <mailto:hca...@gmail.com>" <hca...@gmail.com
>     <mailto:hca...@gmail.com>>
>     Cc: "discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>"
>     <discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>>
>     Subject: Re: [Discuss-gnuradio] [USRP-users] Segmentation fault
>             commands to USRP with gnuradio
>     Message-ID: <6daa68fea75bc3595d663f304bf51502ef79e99a.ca...@kit.edu
>     <mailto:6daa68fea75bc3595d663f304bf51502ef79e99a.ca...@kit.edu>>
>     Content-Type: text/plain; charset="utf-8"
> 
>     Hi Christoph,
> 
>     The ancient lore goes that this was a evaluation-based decision on
>     account of performance. Technically, intrusive_ptr is nice because the
>     object lies right next to the refcounter, so your memory controller can
>     do the linear fetching thing and things should be nice without jumping
>     through wildly different RAM areas.
> 
>     I haven't been able so far to produce a useful performance metric for
>     PMT operations that reflects this, because real-world PMT usage is
>     dominated by the efficiency of the involved operations, not by the
>     smart pointer derefencing. I do, however, really believe this was done
>     with serious evaluation of performance.
> 
>     Anyway, I'd love to change that, but it would be ? pun intended ? an
>     intrusive API change, and tbh, I'm not sure I want to get all the tests
>     for that change sorted out before 3.8's release. After 3.8, I'd like to
>     get rid of PMT altogether.
>     However, this situation here changes things. Maybe I'll whip up a test
>     branch this weekend where I just go and make the exact change you
>     recommend and test whether it works without further ado.
> 
>     Thanks! Haven't thought about that, and maybe things are really much
>     easier than I was afraid they were.
> 
>     Best regards,
>     Marcus
> 
> 
>     On Fri, 2018-12-07 at 13:00 +0100, Christoph Mayer wrote:
>     > Hi Marcus,
>     >
>     > what is the reason for having
>     >   typedef boost::intrusive_ptr<pmt_base> pmt_t;
>     > and not using a shared_ptr?
>     >
>     > As far as I understand, if a shared_ptr instead of
>     > boost::intrusive_ptr were used, one could use either the method
>     > described here:
>     >
>     
> https://www.boost.org/doc/libs/1_68_0/libs/smart_ptr/doc/html/smart_ptr.html#techniques_static
>     > or use the aliasing constructor of a shared_ptr (probably better).
>     >
>     > Best regards
>     > Christoph
>     >
>     > On Fri, Dec 7, 2018 at 11:32 AM M?ller, Marcus (CEL)
>     <muel...@kit.edu <mailto:muel...@kit.edu>> wrote:
>     > >
>     > > By the way, I think the reason this goes wrong is that a) I've
>     managed
>     > > to run into the Static Initialization Order Fiasco, destructor
>     edition,
>     > > and b) that can't be solved with pmt_t, as pmt_t is actually a
>     typedef
>     > > for smart_pointer<actual_type>, and the moment the statically
>     generated
>     > > object (the smart pointer) leaves scope of the consuming
>     function the
>     > > first time, its destructor is being called.
>     > >
>     > > So, yay, if that assessment is correct, by putting PMT keys into the
>     > > members of class instances, I've only postponed the problem you're
>     > > seeing now to the destruction of blocks, and since that typically
>     > > doesn't happen until the end of programs, it doesn't "hurt" anyone.
>     > >
>     > > It's still wrong, and would lead to unpredictable behaviour in case
>     > > someone cleans up blocks at runtime. Which they should be able
>     to do.
>     > >
>     > > Soooo argh. No simple solution here. Anyone a great idea?
>     > >
>     > > Best regards,
>     > > Marcus
>     > > On Fri, 2018-12-07 at 10:21 +0000, M?ller, Marcus (CEL) wrote:
>     > > > Hi Samuel,
>     > > >
>     > > > so, my guess is that once again, we're running into the
>     C++-specific
>     > > > static initialization order fiasco (SIOF, yes, it's a term)
>     for the PMT
>     > > > keys used in the dicts.
>     > > >
>     > > > Solution: I've extracted functions to return these keys and
>     statically
>     > > > initialize them but once, because PMT's pmt_symbol creation is
>     > > > relatively CPU-intense, and shouldn't be done at run time.
>     > > >
>     > > > Somehow, it seems, that can sometimes lead to different
>     notions of the
>     > > > same symbol.
>     > > >
>     > > > Solution: I was going to go in there, and instead of having these
>     > > > functions that all look like
>     > > >
>     > > > const pmt::pmt_t gr::uhd::cmd_time_key()
>     > > > {
>     > > >   static const pmt::pmt_t val
>     > > > = pmt::mp("time");
>     > > >   return val;
>     > > > }
>     > > >
>     > > > just go in there, and give each instance of a usrp_block its
>     own const
>     > > > fields of the same name, and initialize them in block constructor
>     > > > initialization list; that's what I did for the rest of GR, and
>     I hope
>     > > > it works there.
>     > > >
>     > > > Best regards,
>     > > > Marcus
>     > > >
>     > > > On Thu, 2018-12-06 at 16:48 +0100, samuel verdon wrote:
>     > > > > Hi Marcus and Martin,
>     > > > > Thank you for your help!
>     > > > > Do you now how I can follow the problem?
>     > > > > Or if is it already solved, how can I fix it?
>     > > > >
>     > > > > Thanks a lot!
>     > > > >
>     > > > > Samuel
>     > > > >
>     > > > >
>     > > > > De : Marcus M?ller
>     > > > > Envoy? le :Wednesday, December 5, 2018 13:50
>     > > > > ? : discuss-gnuradio@gnu.org
>     <mailto:discuss-gnuradio@gnu.org>; samuel verdon
>     > > > > Cc : Martin Braun
>     > > > > Objet :Re: [USRP-users] Segmentation fault commands to USRP
>     with gnuradio
>     > > > >
>     > > > > <ugly expletive>
>     > > > > this looks like my fault. Not feeling well enough to fix
>     now, but wait
>     > > > > a day and I'll have something to test.
>     > > > > On Wed, 2018-12-05 at 12:56 +0100, Marcus M?ller wrote:
>     > > > > > Hi Samuel,
>     > > > > >
>     > > > > > cool! That's really helpful :)
>     > > > > >
>     > > > > > I'm now cross-posting this to discuss-gr, because it's a
>     GNU Radio-
>     > > > > > land
>     > > > > > issue. The maintainers of gr-uhd are active over there,
>     too, so this
>     > > > > > seems the smarter place to continue discussion.
>     > > > > >
>     > > > > >
>     > > > > > so, in medias res:
>     > > > > >
>     > > > > > On Wed, 2018-12-05 at 12:43 +0100, samuel verdon wrote:
>     > > > > > > #3  0x00007f7f15906700 in pmt::dict_has_key (dict=...,
>     key=...) at
>     > > > > > > /usr/local/src/gnuradio/gnuradio-runtime/lib/pmt/pmt.cc:937
>     > > > > >
>     > > > > > m?p m???p. Our favorite (only) variadic type library leads to
>     > > > > > segfaults.
>     > > > > >
>     > > > > > I'll look into that and be back in a while.
>     > > > > >
>     > > > > > Best regards,
>     > > > > > Marcus
>     > > > > >
>     > > > >
>     > > > >
>     > > > >
>     > > > > _______________________________________________
>     > > > > Discuss-gnuradio mailing list
>     > > > > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > > > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     > > >
>     > > > _______________________________________________
>     > > > Discuss-gnuradio mailing list
>     > > > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     > >
>     > > _______________________________________________
>     > > Discuss-gnuradio mailing list
>     > > Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     > > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 
>     ------------------------------
> 
>     Message: 7
>     Date: Fri, 7 Dec 2018 16:21:53 +0000
>     From: Guilherme Theis <guilhermethei...@outlook.com
>     <mailto:guilhermethei...@outlook.com>>
>     To: "discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>"
>     <discuss-gnuradio@gnu.org <mailto:discuss-gnuradio@gnu.org>>
>     Subject: [Discuss-gnuradio] Receiving NOAA signals and passing to BB
>     Message-ID:
>            
>     
> <mwhpr0501mb38181db13d809a1b034a3772db...@mwhpr0501mb3818.namprd05.prod.outlook.com
>     
> <mailto:mwhpr0501mb38181db13d809a1b034a3772db...@mwhpr0501mb3818.namprd05.prod.outlook.com>>
> 
>     Content-Type: text/plain; charset="iso-8859-1"
> 
>     Hello,
> 
>     I've been looking up for a way to use an USRP+Gnuradio to simply
>     receive the HRPT signals and generate an .wav output to be processed
>     afterwards But all I can find is this processing using a .wav input
>     in the flow. There is any way to demodulate this split-phase
>     modulation from NOAA using GRC?
> 
>     Best regards,
> 
>     Guilherme
>     -------------- next part --------------
>     An HTML attachment was scrubbed...
>     URL:
>     
> <http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20181207/3ab07632/attachment.html>
> 
>     ------------------------------
> 
>     Subject: Digest Footer
> 
>     _______________________________________________
>     Discuss-gnuradio mailing list
>     Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 
> 
>     ------------------------------
> 
>     End of Discuss-gnuradio Digest, Vol 194, Issue 6
>     ************************************************
> 
> 
> 
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 

<?xml version='1.0' encoding='utf-8'?>
<?grc format='1' created='3.7.13'?>
<flow_graph>
  <timestamp>Thu Dec 15 09:03:41 2016</timestamp>
  <block>
    <key>options</key>
    <param>
      <key>author</key>
      <value></value>
    </param>
    <param>
      <key>window_size</key>
      <value></value>
    </param>
    <param>
      <key>category</key>
      <value>[GRC Hier Blocks]</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>description</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(0, 4)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>generate_options</key>
      <value>qt_gui</value>
    </param>
    <param>
      <key>hier_block_src_path</key>
      <value>.:</value>
    </param>
    <param>
      <key>id</key>
      <value>broadcast_fm</value>
    </param>
    <param>
      <key>max_nouts</key>
      <value>0</value>
    </param>
    <param>
      <key>qt_qss_theme</key>
      <value></value>
    </param>
    <param>
      <key>realtime_scheduling</key>
      <value></value>
    </param>
    <param>
      <key>run_command</key>
      <value>{python} -u {filename}</value>
    </param>
    <param>
      <key>run_options</key>
      <value>run</value>
    </param>
    <param>
      <key>run</key>
      <value>True</value>
    </param>
    <param>
      <key>sizing_mode</key>
      <value>fixed</value>
    </param>
    <param>
      <key>thread_safe_setters</key>
      <value></value>
    </param>
    <param>
      <key>title</key>
      <value></value>
    </param>
    <param>
      <key>placement</key>
      <value>(0,0)</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(8, 460)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>audio_rate</value>
    </param>
    <param>
      <key>value</key>
      <value>48000</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(176, 4)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>center_freq</value>
    </param>
    <param>
      <key>value</key>
      <value>97300000</value>
    </param>
  </block>
  <block>
    <key>variable_qtgui_range</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>value</key>
      <value>97.3e6</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(360, 456)</value>
    </param>
    <param>
      <key>gui_hint</key>
      <value></value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>channel_freq</value>
    </param>
    <param>
      <key>label</key>
      <value></value>
    </param>
    <param>
      <key>min_len</key>
      <value>200</value>
    </param>
    <param>
      <key>orient</key>
      <value>Qt.Horizontal</value>
    </param>
    <param>
      <key>start</key>
      <value>88e6</value>
    </param>
    <param>
      <key>step</key>
      <value>1</value>
    </param>
    <param>
      <key>stop</key>
      <value>108e6</value>
    </param>
    <param>
      <key>rangeType</key>
      <value>float</value>
    </param>
    <param>
      <key>widget</key>
      <value>counter_slider</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(8, 100)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>channel_width</value>
    </param>
    <param>
      <key>value</key>
      <value>200000</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(8, 316)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>cutoff_freq</value>
    </param>
    <param>
      <key>value</key>
      <value>75e3</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(8, 172)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>decimate</value>
    </param>
    <param>
      <key>value</key>
      <value>samp_rate/channel_width</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(8, 244)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>quad_rate</value>
    </param>
    <param>
      <key>value</key>
      <value>channel_width*decimate*12/5</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(280, 4)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>samp_rate</value>
    </param>
    <param>
      <key>value</key>
      <value>20000000</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(8, 388)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>transition_width</value>
    </param>
    <param>
      <key>value</key>
      <value>25e3</value>
    </param>
  </block>
  <block>
    <key>variable_qtgui_range</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>value</key>
      <value>.001</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(216, 456)</value>
    </param>
    <param>
      <key>gui_hint</key>
      <value></value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>volume</value>
    </param>
    <param>
      <key>label</key>
      <value></value>
    </param>
    <param>
      <key>min_len</key>
      <value>200</value>
    </param>
    <param>
      <key>orient</key>
      <value>Qt.Horizontal</value>
    </param>
    <param>
      <key>start</key>
      <value>.001</value>
    </param>
    <param>
      <key>step</key>
      <value>.001</value>
    </param>
    <param>
      <key>stop</key>
      <value>.01</value>
    </param>
    <param>
      <key>rangeType</key>
      <value>float</value>
    </param>
    <param>
      <key>widget</key>
      <value>slider</value>
    </param>
  </block>
  <block>
    <key>analog_sig_source_x</key>
    <param>
      <key>amp</key>
      <value>1</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>freq</key>
      <value>center_freq-channel_freq</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(280, 320)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>analog_sig_source_x_0_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>offset</key>
      <value>0</value>
    </param>
    <param>
      <key>type</key>
      <value>complex</value>
    </param>
    <param>
      <key>samp_rate</key>
      <value>samp_rate</value>
    </param>
    <param>
      <key>waveform</key>
      <value>analog.GR_COS_WAVE</value>
    </param>
  </block>
  <block>
    <key>analog_wfm_rcv</key>
    <param>
      <key>audio_decimation</key>
      <value>10</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(600, 380)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>analog_wfm_rcv_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>quad_rate</key>
      <value>quad_rate</value>
    </param>
  </block>
  <block>
    <key>audio_sink</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>device_name</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(968, 388)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>audio_sink_0</value>
    </param>
    <param>
      <key>num_inputs</key>
      <value>1</value>
    </param>
    <param>
      <key>ok_to_block</key>
      <value>True</value>
    </param>
    <param>
      <key>samp_rate</key>
      <value>audio_rate</value>
    </param>
  </block>
  <block>
    <key>blocks_multiply_xx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(496, 216)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>blocks_multiply_xx_0</value>
    </param>
    <param>
      <key>type</key>
      <value>complex</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>num_inputs</key>
      <value>2</value>
    </param>
    <param>
      <key>vlen</key>
      <value>1</value>
    </param>
  </block>
  <block>
    <key>low_pass_filter</key>
    <param>
      <key>beta</key>
      <value>6.76</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>cutoff_freq</key>
      <value>cutoff_freq</value>
    </param>
    <param>
      <key>decim</key>
      <value>decimate</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>type</key>
      <value>fir_filter_ccf</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(624, 184)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>gain</key>
      <value>1</value>
    </param>
    <param>
      <key>id</key>
      <value>low_pass_filter_0</value>
    </param>
    <param>
      <key>interp</key>
      <value>1</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>samp_rate</key>
      <value>samp_rate</value>
    </param>
    <param>
      <key>width</key>
      <value>transition_width</value>
    </param>
    <param>
      <key>win</key>
      <value>firdes.WIN_HAMMING</value>
    </param>
  </block>
  <block>
    <key>osmosdr_source</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>ant0</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain0</key>
      <value>32</value>
    </param>
    <param>
      <key>bw0</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode0</key>
      <value>0</value>
    </param>
    <param>
      <key>corr0</key>
      <value>0</value>
    </param>
    <param>
      <key>freq0</key>
      <value>center_freq</value>
    </param>
    <param>
      <key>gain_mode0</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain0</key>
      <value>32</value>
    </param>
    <param>
      <key>iq_balance_mode0</key>
      <value>0</value>
    </param>
    <param>
      <key>gain0</key>
      <value>0</value>
    </param>
    <param>
      <key>ant10</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain10</key>
      <value>20</value>
    </param>
    <param>
      <key>bw10</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode10</key>
      <value>0</value>
    </param>
    <param>
      <key>corr10</key>
      <value>0</value>
    </param>
    <param>
      <key>freq10</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode10</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain10</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode10</key>
      <value>0</value>
    </param>
    <param>
      <key>gain10</key>
      <value>10</value>
    </param>
    <param>
      <key>ant11</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain11</key>
      <value>20</value>
    </param>
    <param>
      <key>bw11</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode11</key>
      <value>0</value>
    </param>
    <param>
      <key>corr11</key>
      <value>0</value>
    </param>
    <param>
      <key>freq11</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode11</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain11</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode11</key>
      <value>0</value>
    </param>
    <param>
      <key>gain11</key>
      <value>10</value>
    </param>
    <param>
      <key>ant12</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain12</key>
      <value>20</value>
    </param>
    <param>
      <key>bw12</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode12</key>
      <value>0</value>
    </param>
    <param>
      <key>corr12</key>
      <value>0</value>
    </param>
    <param>
      <key>freq12</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode12</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain12</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode12</key>
      <value>0</value>
    </param>
    <param>
      <key>gain12</key>
      <value>10</value>
    </param>
    <param>
      <key>ant13</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain13</key>
      <value>20</value>
    </param>
    <param>
      <key>bw13</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode13</key>
      <value>0</value>
    </param>
    <param>
      <key>corr13</key>
      <value>0</value>
    </param>
    <param>
      <key>freq13</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode13</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain13</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode13</key>
      <value>0</value>
    </param>
    <param>
      <key>gain13</key>
      <value>10</value>
    </param>
    <param>
      <key>ant14</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain14</key>
      <value>20</value>
    </param>
    <param>
      <key>bw14</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode14</key>
      <value>0</value>
    </param>
    <param>
      <key>corr14</key>
      <value>0</value>
    </param>
    <param>
      <key>freq14</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode14</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain14</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode14</key>
      <value>0</value>
    </param>
    <param>
      <key>gain14</key>
      <value>10</value>
    </param>
    <param>
      <key>ant15</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain15</key>
      <value>20</value>
    </param>
    <param>
      <key>bw15</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode15</key>
      <value>0</value>
    </param>
    <param>
      <key>corr15</key>
      <value>0</value>
    </param>
    <param>
      <key>freq15</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode15</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain15</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode15</key>
      <value>0</value>
    </param>
    <param>
      <key>gain15</key>
      <value>10</value>
    </param>
    <param>
      <key>ant16</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain16</key>
      <value>20</value>
    </param>
    <param>
      <key>bw16</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode16</key>
      <value>0</value>
    </param>
    <param>
      <key>corr16</key>
      <value>0</value>
    </param>
    <param>
      <key>freq16</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode16</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain16</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode16</key>
      <value>0</value>
    </param>
    <param>
      <key>gain16</key>
      <value>10</value>
    </param>
    <param>
      <key>ant17</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain17</key>
      <value>20</value>
    </param>
    <param>
      <key>bw17</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode17</key>
      <value>0</value>
    </param>
    <param>
      <key>corr17</key>
      <value>0</value>
    </param>
    <param>
      <key>freq17</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode17</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain17</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode17</key>
      <value>0</value>
    </param>
    <param>
      <key>gain17</key>
      <value>10</value>
    </param>
    <param>
      <key>ant18</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain18</key>
      <value>20</value>
    </param>
    <param>
      <key>bw18</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode18</key>
      <value>0</value>
    </param>
    <param>
      <key>corr18</key>
      <value>0</value>
    </param>
    <param>
      <key>freq18</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode18</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain18</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode18</key>
      <value>0</value>
    </param>
    <param>
      <key>gain18</key>
      <value>10</value>
    </param>
    <param>
      <key>ant19</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain19</key>
      <value>20</value>
    </param>
    <param>
      <key>bw19</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode19</key>
      <value>0</value>
    </param>
    <param>
      <key>corr19</key>
      <value>0</value>
    </param>
    <param>
      <key>freq19</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode19</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain19</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode19</key>
      <value>0</value>
    </param>
    <param>
      <key>gain19</key>
      <value>10</value>
    </param>
    <param>
      <key>ant1</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain1</key>
      <value>20</value>
    </param>
    <param>
      <key>bw1</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode1</key>
      <value>0</value>
    </param>
    <param>
      <key>corr1</key>
      <value>0</value>
    </param>
    <param>
      <key>freq1</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode1</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain1</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode1</key>
      <value>0</value>
    </param>
    <param>
      <key>gain1</key>
      <value>10</value>
    </param>
    <param>
      <key>ant20</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain20</key>
      <value>20</value>
    </param>
    <param>
      <key>bw20</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode20</key>
      <value>0</value>
    </param>
    <param>
      <key>corr20</key>
      <value>0</value>
    </param>
    <param>
      <key>freq20</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode20</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain20</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode20</key>
      <value>0</value>
    </param>
    <param>
      <key>gain20</key>
      <value>10</value>
    </param>
    <param>
      <key>ant21</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain21</key>
      <value>20</value>
    </param>
    <param>
      <key>bw21</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode21</key>
      <value>0</value>
    </param>
    <param>
      <key>corr21</key>
      <value>0</value>
    </param>
    <param>
      <key>freq21</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode21</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain21</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode21</key>
      <value>0</value>
    </param>
    <param>
      <key>gain21</key>
      <value>10</value>
    </param>
    <param>
      <key>ant22</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain22</key>
      <value>20</value>
    </param>
    <param>
      <key>bw22</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode22</key>
      <value>0</value>
    </param>
    <param>
      <key>corr22</key>
      <value>0</value>
    </param>
    <param>
      <key>freq22</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode22</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain22</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode22</key>
      <value>0</value>
    </param>
    <param>
      <key>gain22</key>
      <value>10</value>
    </param>
    <param>
      <key>ant23</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain23</key>
      <value>20</value>
    </param>
    <param>
      <key>bw23</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode23</key>
      <value>0</value>
    </param>
    <param>
      <key>corr23</key>
      <value>0</value>
    </param>
    <param>
      <key>freq23</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode23</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain23</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode23</key>
      <value>0</value>
    </param>
    <param>
      <key>gain23</key>
      <value>10</value>
    </param>
    <param>
      <key>ant24</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain24</key>
      <value>20</value>
    </param>
    <param>
      <key>bw24</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode24</key>
      <value>0</value>
    </param>
    <param>
      <key>corr24</key>
      <value>0</value>
    </param>
    <param>
      <key>freq24</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode24</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain24</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode24</key>
      <value>0</value>
    </param>
    <param>
      <key>gain24</key>
      <value>10</value>
    </param>
    <param>
      <key>ant25</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain25</key>
      <value>20</value>
    </param>
    <param>
      <key>bw25</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode25</key>
      <value>0</value>
    </param>
    <param>
      <key>corr25</key>
      <value>0</value>
    </param>
    <param>
      <key>freq25</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode25</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain25</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode25</key>
      <value>0</value>
    </param>
    <param>
      <key>gain25</key>
      <value>10</value>
    </param>
    <param>
      <key>ant26</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain26</key>
      <value>20</value>
    </param>
    <param>
      <key>bw26</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode26</key>
      <value>0</value>
    </param>
    <param>
      <key>corr26</key>
      <value>0</value>
    </param>
    <param>
      <key>freq26</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode26</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain26</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode26</key>
      <value>0</value>
    </param>
    <param>
      <key>gain26</key>
      <value>10</value>
    </param>
    <param>
      <key>ant27</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain27</key>
      <value>20</value>
    </param>
    <param>
      <key>bw27</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode27</key>
      <value>0</value>
    </param>
    <param>
      <key>corr27</key>
      <value>0</value>
    </param>
    <param>
      <key>freq27</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode27</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain27</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode27</key>
      <value>0</value>
    </param>
    <param>
      <key>gain27</key>
      <value>10</value>
    </param>
    <param>
      <key>ant28</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain28</key>
      <value>20</value>
    </param>
    <param>
      <key>bw28</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode28</key>
      <value>0</value>
    </param>
    <param>
      <key>corr28</key>
      <value>0</value>
    </param>
    <param>
      <key>freq28</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode28</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain28</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode28</key>
      <value>0</value>
    </param>
    <param>
      <key>gain28</key>
      <value>10</value>
    </param>
    <param>
      <key>ant29</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain29</key>
      <value>20</value>
    </param>
    <param>
      <key>bw29</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode29</key>
      <value>0</value>
    </param>
    <param>
      <key>corr29</key>
      <value>0</value>
    </param>
    <param>
      <key>freq29</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode29</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain29</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode29</key>
      <value>0</value>
    </param>
    <param>
      <key>gain29</key>
      <value>10</value>
    </param>
    <param>
      <key>ant2</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain2</key>
      <value>20</value>
    </param>
    <param>
      <key>bw2</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode2</key>
      <value>0</value>
    </param>
    <param>
      <key>corr2</key>
      <value>0</value>
    </param>
    <param>
      <key>freq2</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode2</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain2</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode2</key>
      <value>0</value>
    </param>
    <param>
      <key>gain2</key>
      <value>10</value>
    </param>
    <param>
      <key>ant30</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain30</key>
      <value>20</value>
    </param>
    <param>
      <key>bw30</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode30</key>
      <value>0</value>
    </param>
    <param>
      <key>corr30</key>
      <value>0</value>
    </param>
    <param>
      <key>freq30</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode30</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain30</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode30</key>
      <value>0</value>
    </param>
    <param>
      <key>gain30</key>
      <value>10</value>
    </param>
    <param>
      <key>ant31</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain31</key>
      <value>20</value>
    </param>
    <param>
      <key>bw31</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode31</key>
      <value>0</value>
    </param>
    <param>
      <key>corr31</key>
      <value>0</value>
    </param>
    <param>
      <key>freq31</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode31</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain31</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode31</key>
      <value>0</value>
    </param>
    <param>
      <key>gain31</key>
      <value>10</value>
    </param>
    <param>
      <key>ant3</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain3</key>
      <value>20</value>
    </param>
    <param>
      <key>bw3</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode3</key>
      <value>0</value>
    </param>
    <param>
      <key>corr3</key>
      <value>0</value>
    </param>
    <param>
      <key>freq3</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode3</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain3</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode3</key>
      <value>0</value>
    </param>
    <param>
      <key>gain3</key>
      <value>10</value>
    </param>
    <param>
      <key>ant4</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain4</key>
      <value>20</value>
    </param>
    <param>
      <key>bw4</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode4</key>
      <value>0</value>
    </param>
    <param>
      <key>corr4</key>
      <value>0</value>
    </param>
    <param>
      <key>freq4</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode4</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain4</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode4</key>
      <value>0</value>
    </param>
    <param>
      <key>gain4</key>
      <value>10</value>
    </param>
    <param>
      <key>ant5</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain5</key>
      <value>20</value>
    </param>
    <param>
      <key>bw5</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode5</key>
      <value>0</value>
    </param>
    <param>
      <key>corr5</key>
      <value>0</value>
    </param>
    <param>
      <key>freq5</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode5</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain5</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode5</key>
      <value>0</value>
    </param>
    <param>
      <key>gain5</key>
      <value>10</value>
    </param>
    <param>
      <key>ant6</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain6</key>
      <value>20</value>
    </param>
    <param>
      <key>bw6</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode6</key>
      <value>0</value>
    </param>
    <param>
      <key>corr6</key>
      <value>0</value>
    </param>
    <param>
      <key>freq6</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode6</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain6</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode6</key>
      <value>0</value>
    </param>
    <param>
      <key>gain6</key>
      <value>10</value>
    </param>
    <param>
      <key>ant7</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain7</key>
      <value>20</value>
    </param>
    <param>
      <key>bw7</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode7</key>
      <value>0</value>
    </param>
    <param>
      <key>corr7</key>
      <value>0</value>
    </param>
    <param>
      <key>freq7</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode7</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain7</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode7</key>
      <value>0</value>
    </param>
    <param>
      <key>gain7</key>
      <value>10</value>
    </param>
    <param>
      <key>ant8</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain8</key>
      <value>20</value>
    </param>
    <param>
      <key>bw8</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode8</key>
      <value>0</value>
    </param>
    <param>
      <key>corr8</key>
      <value>0</value>
    </param>
    <param>
      <key>freq8</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode8</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain8</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode8</key>
      <value>0</value>
    </param>
    <param>
      <key>gain8</key>
      <value>10</value>
    </param>
    <param>
      <key>ant9</key>
      <value></value>
    </param>
    <param>
      <key>bb_gain9</key>
      <value>20</value>
    </param>
    <param>
      <key>bw9</key>
      <value>0</value>
    </param>
    <param>
      <key>dc_offset_mode9</key>
      <value>0</value>
    </param>
    <param>
      <key>corr9</key>
      <value>0</value>
    </param>
    <param>
      <key>freq9</key>
      <value>100e6</value>
    </param>
    <param>
      <key>gain_mode9</key>
      <value>False</value>
    </param>
    <param>
      <key>if_gain9</key>
      <value>20</value>
    </param>
    <param>
      <key>iq_balance_mode9</key>
      <value>0</value>
    </param>
    <param>
      <key>gain9</key>
      <value>10</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>args</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(216, 124)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>osmosdr_source_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>clock_source0</key>
      <value></value>
    </param>
    <param>
      <key>time_source0</key>
      <value></value>
    </param>
    <param>
      <key>clock_source1</key>
      <value></value>
    </param>
    <param>
      <key>time_source1</key>
      <value></value>
    </param>
    <param>
      <key>clock_source2</key>
      <value></value>
    </param>
    <param>
      <key>time_source2</key>
      <value></value>
    </param>
    <param>
      <key>clock_source3</key>
      <value></value>
    </param>
    <param>
      <key>time_source3</key>
      <value></value>
    </param>
    <param>
      <key>clock_source4</key>
      <value></value>
    </param>
    <param>
      <key>time_source4</key>
      <value></value>
    </param>
    <param>
      <key>clock_source5</key>
      <value></value>
    </param>
    <param>
      <key>time_source5</key>
      <value></value>
    </param>
    <param>
      <key>clock_source6</key>
      <value></value>
    </param>
    <param>
      <key>time_source6</key>
      <value></value>
    </param>
    <param>
      <key>clock_source7</key>
      <value></value>
    </param>
    <param>
      <key>time_source7</key>
      <value></value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>nchan</key>
      <value>1</value>
    </param>
    <param>
      <key>num_mboards</key>
      <value>1</value>
    </param>
    <param>
      <key>type</key>
      <value>fc32</value>
    </param>
    <param>
      <key>sample_rate</key>
      <value>samp_rate</value>
    </param>
    <param>
      <key>sync</key>
      <value></value>
    </param>
  </block>
  <block>
    <key>qtgui_freq_sink_x</key>
    <param>
      <key>autoscale</key>
      <value>False</value>
    </param>
    <param>
      <key>average</key>
      <value>1.0</value>
    </param>
    <param>
      <key>axislabels</key>
      <value>True</value>
    </param>
    <param>
      <key>bw</key>
      <value>samp_rate</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>fc</key>
      <value>channel_freq</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>ctrlpanel</key>
      <value>False</value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>fftsize</key>
      <value>1024</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(520, 88)</value>
    </param>
    <param>
      <key>gui_hint</key>
      <value></value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>grid</key>
      <value>True</value>
    </param>
    <param>
      <key>id</key>
      <value>qtgui_freq_sink_x_0_0_0</value>
    </param>
    <param>
      <key>legend</key>
      <value>True</value>
    </param>
    <param>
      <key>alpha1</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color1</key>
      <value>"red"</value>
    </param>
    <param>
      <key>label1</key>
      <value></value>
    </param>
    <param>
      <key>width1</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha10</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color10</key>
      <value>"dark blue"</value>
    </param>
    <param>
      <key>label10</key>
      <value></value>
    </param>
    <param>
      <key>width10</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha2</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color2</key>
      <value>"blue"</value>
    </param>
    <param>
      <key>label2</key>
      <value></value>
    </param>
    <param>
      <key>width2</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha3</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color3</key>
      <value>"green"</value>
    </param>
    <param>
      <key>label3</key>
      <value></value>
    </param>
    <param>
      <key>width3</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha4</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color4</key>
      <value>"black"</value>
    </param>
    <param>
      <key>label4</key>
      <value></value>
    </param>
    <param>
      <key>width4</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha5</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color5</key>
      <value>"cyan"</value>
    </param>
    <param>
      <key>label5</key>
      <value></value>
    </param>
    <param>
      <key>width5</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha6</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color6</key>
      <value>"magenta"</value>
    </param>
    <param>
      <key>label6</key>
      <value></value>
    </param>
    <param>
      <key>width6</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha7</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color7</key>
      <value>"yellow"</value>
    </param>
    <param>
      <key>label7</key>
      <value></value>
    </param>
    <param>
      <key>width7</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha8</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color8</key>
      <value>"dark red"</value>
    </param>
    <param>
      <key>label8</key>
      <value></value>
    </param>
    <param>
      <key>width8</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha9</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color9</key>
      <value>"dark green"</value>
    </param>
    <param>
      <key>label9</key>
      <value></value>
    </param>
    <param>
      <key>width9</key>
      <value>1</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>name</key>
      <value>Signal Sources</value>
    </param>
    <param>
      <key>nconnections</key>
      <value>2</value>
    </param>
    <param>
      <key>showports</key>
      <value>True</value>
    </param>
    <param>
      <key>freqhalf</key>
      <value>True</value>
    </param>
    <param>
      <key>tr_chan</key>
      <value>0</value>
    </param>
    <param>
      <key>tr_level</key>
      <value>0.0</value>
    </param>
    <param>
      <key>tr_mode</key>
      <value>qtgui.TRIG_MODE_FREE</value>
    </param>
    <param>
      <key>tr_tag</key>
      <value>""</value>
    </param>
    <param>
      <key>type</key>
      <value>complex</value>
    </param>
    <param>
      <key>update_time</key>
      <value>0.10</value>
    </param>
    <param>
      <key>wintype</key>
      <value>firdes.WIN_BLACKMAN_hARRIS</value>
    </param>
    <param>
      <key>label</key>
      <value>Relative Gain</value>
    </param>
    <param>
      <key>ymax</key>
      <value>10</value>
    </param>
    <param>
      <key>ymin</key>
      <value>-140</value>
    </param>
    <param>
      <key>units</key>
      <value>dB</value>
    </param>
  </block>
  <block>
    <key>qtgui_freq_sink_x</key>
    <param>
      <key>autoscale</key>
      <value>False</value>
    </param>
    <param>
      <key>average</key>
      <value>1.0</value>
    </param>
    <param>
      <key>axislabels</key>
      <value>True</value>
    </param>
    <param>
      <key>bw</key>
      <value>quad_rate</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>fc</key>
      <value>channel_freq</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>ctrlpanel</key>
      <value>False</value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>fftsize</key>
      <value>1024</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(824, 104)</value>
    </param>
    <param>
      <key>gui_hint</key>
      <value></value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>grid</key>
      <value>True</value>
    </param>
    <param>
      <key>id</key>
      <value>qtgui_freq_sink_x_0_0_0_0</value>
    </param>
    <param>
      <key>legend</key>
      <value>True</value>
    </param>
    <param>
      <key>alpha1</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color1</key>
      <value>"blue"</value>
    </param>
    <param>
      <key>label1</key>
      <value></value>
    </param>
    <param>
      <key>width1</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha10</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color10</key>
      <value>"dark blue"</value>
    </param>
    <param>
      <key>label10</key>
      <value></value>
    </param>
    <param>
      <key>width10</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha2</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color2</key>
      <value>"red"</value>
    </param>
    <param>
      <key>label2</key>
      <value></value>
    </param>
    <param>
      <key>width2</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha3</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color3</key>
      <value>"green"</value>
    </param>
    <param>
      <key>label3</key>
      <value></value>
    </param>
    <param>
      <key>width3</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha4</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color4</key>
      <value>"black"</value>
    </param>
    <param>
      <key>label4</key>
      <value></value>
    </param>
    <param>
      <key>width4</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha5</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color5</key>
      <value>"cyan"</value>
    </param>
    <param>
      <key>label5</key>
      <value></value>
    </param>
    <param>
      <key>width5</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha6</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color6</key>
      <value>"magenta"</value>
    </param>
    <param>
      <key>label6</key>
      <value></value>
    </param>
    <param>
      <key>width6</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha7</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color7</key>
      <value>"yellow"</value>
    </param>
    <param>
      <key>label7</key>
      <value></value>
    </param>
    <param>
      <key>width7</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha8</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color8</key>
      <value>"dark red"</value>
    </param>
    <param>
      <key>label8</key>
      <value></value>
    </param>
    <param>
      <key>width8</key>
      <value>1</value>
    </param>
    <param>
      <key>alpha9</key>
      <value>1.0</value>
    </param>
    <param>
      <key>color9</key>
      <value>"dark green"</value>
    </param>
    <param>
      <key>label9</key>
      <value></value>
    </param>
    <param>
      <key>width9</key>
      <value>1</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>name</key>
      <value>Low Pass Signal</value>
    </param>
    <param>
      <key>nconnections</key>
      <value>1</value>
    </param>
    <param>
      <key>showports</key>
      <value>True</value>
    </param>
    <param>
      <key>freqhalf</key>
      <value>True</value>
    </param>
    <param>
      <key>tr_chan</key>
      <value>0</value>
    </param>
    <param>
      <key>tr_level</key>
      <value>0.0</value>
    </param>
    <param>
      <key>tr_mode</key>
      <value>qtgui.TRIG_MODE_FREE</value>
    </param>
    <param>
      <key>tr_tag</key>
      <value>""</value>
    </param>
    <param>
      <key>type</key>
      <value>complex</value>
    </param>
    <param>
      <key>update_time</key>
      <value>0.10</value>
    </param>
    <param>
      <key>wintype</key>
      <value>firdes.WIN_BLACKMAN_hARRIS</value>
    </param>
    <param>
      <key>label</key>
      <value>Relative Gain</value>
    </param>
    <param>
      <key>ymax</key>
      <value>10</value>
    </param>
    <param>
      <key>ymin</key>
      <value>-140</value>
    </param>
    <param>
      <key>units</key>
      <value>dB</value>
    </param>
  </block>
  <block>
    <key>rational_resampler_xxx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>decim</key>
      <value>5</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>fbw</key>
      <value>0</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(816, 208)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>rational_resampler_xxx_0</value>
    </param>
    <param>
      <key>interp</key>
      <value>12</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>taps</key>
      <value></value>
    </param>
    <param>
      <key>type</key>
      <value>ccc</value>
    </param>
  </block>
  <block>
    <key>blocks_multiply_const_vxx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>const</key>
      <value>volume</value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(800, 388)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>sound</value>
    </param>
    <param>
      <key>type</key>
      <value>float</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>vlen</key>
      <value>1</value>
    </param>
  </block>
  <connection>
    <source_block_id>analog_sig_source_x_0_0</source_block_id>
    <sink_block_id>blocks_multiply_xx_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>1</sink_key>
  </connection>
  <connection>
    <source_block_id>analog_wfm_rcv_0</source_block_id>
    <sink_block_id>sound</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_multiply_xx_0</source_block_id>
    <sink_block_id>low_pass_filter_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_multiply_xx_0</source_block_id>
    <sink_block_id>qtgui_freq_sink_x_0_0_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>1</sink_key>
  </connection>
  <connection>
    <source_block_id>low_pass_filter_0</source_block_id>
    <sink_block_id>qtgui_freq_sink_x_0_0_0_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>low_pass_filter_0</source_block_id>
    <sink_block_id>rational_resampler_xxx_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>osmosdr_source_0</source_block_id>
    <sink_block_id>blocks_multiply_xx_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>osmosdr_source_0</source_block_id>
    <sink_block_id>qtgui_freq_sink_x_0_0_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>rational_resampler_xxx_0</source_block_id>
    <sink_block_id>analog_wfm_rcv_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>sound</source_block_id>
    <sink_block_id>audio_sink_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
</flow_graph>
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to