Thank you; that is what I wanted to know.

On Wed, Jun 7, 2017 at 9:00 AM, <discuss-gnuradio-requ...@gnu.org> wrote:

> Send Discuss-gnuradio mailing list submissions to
>         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
>
> You can reach the person managing the list at
>         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: [GSoC 17] DAB: updates of the week (Benny Alexandar)
>    2. Re: [GSoC 17] DAB: updates of the week (Marcus M?ller)
>    3. ninput_items_required=1024 (G Reina)
>    4. Re: ninput_items_required=1024 (G Reina)
>    5. Re: [GSoC 17] DAB: updates of the week (John Ackermann N8UR)
>    6. Re: why can't use iwconfig when I run the gr-ieee802-11
>       (Bastian Bloessl)
>    7. Re: [GSoC 17] DAB: updates of the week (John Ackermann N8UR)
>    8. symbol already exists: cannot reuse! runtime error
>       (Eugene Grayver)
>    9. Re: why can't use iwconfig when I run the gr-ieee802-11
>       (zhan siyu)
>   10. 1,024 in - 3 out (G Reina)
>   11. Re: why can't use iwconfig when I run the gr-ieee802-11
>       (Bastian Bloessl)
>   12. Handling more than 3 output streams (Vipin Sharma)
>   13. Re: Handling more than 3 output streams (Moritz Luca Schmid)
>   14. Re: Rational Resampler no output. (Anon Lister)
>   15. USRP sink clock rate (???)
>   16. Re: USRP sink clock rate (Derek Kozel)
>   17. Measure the Distance to another 802.11 device (Florian Adamsky)
>   18. Re: why can't use iwconfig when I run the gr-ieee802-11
>       (zhan siyu)
>   19. Re: Measure the Distance to another 802.11 device (Marcus M?ller)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 6 Jun 2017 16:02:32 +0000
> From: Benny Alexandar <ben.a...@outlook.com>
> To: Moritz Luca Schmid <luca.moritz.sch...@gmail.com>, "GNURadio
>         Discussion      List" <discuss-gnuradio@gnu.org>
> Subject: Re: [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
> Message-ID:
>         <HK2PR02MB13304001D3CCC4F3834584E08BCB0@HK2PR02MB1330.
> apcprd02.prod.outlook.com>
>
> Content-Type: text/plain; charset="us-ascii"
>
> Hi Luca,
>
>
> Nice to see your progress so far. Once you have the
> DAB receiver audio listening in place, I would
> suggest to have an audio synchronization for continuous
> playback without any buffer overflow or under-runs.
>
> DAB+ audio super frame length is 120ms according to DAB+
> standard (ETSI TS 102 563). Each audio super frame is
> carried in five consecutive logical DAB frames.
> Which means 120ms of audio is mapped to 5 DAB frames.
>
> If I add a timestamp at the receiver when the first DAB frame
> sample arrives, I can check the max latency when it comes to
> audio renderer, I mean after buffering to adjust the variable
> decoding time of compressed audio.
>
> t_D = t_A -  t_B ,
> where,
>  t_A = time at audio out
>  t_B = time at input baseband sample.
>  t_D = maximum system delay.
>
> The difficulty is to estimate the slow clock drift correctly
> and separate it from the short-time channel/decoding jitter.
>
> Add a delay to buffer audio at audio out, say  D, which is larger
> than max system delay. Whenever the audio reaches audio out, check the
> delay to separate the clock drift.
>
>      drift = t_D - D
>
> Please let me know if you need any more details.
>
> -ben
>
>
>
>
>
>
>
>
>
>
>
>
> ________________________________
> From: Discuss-gnuradio <discuss-gnuradio-bounces+ben.alex=
> outlook....@gnu.org> on behalf of Moritz Luca Schmid <
> luca.moritz.sch...@gmail.com>
> Sent: Friday, May 26, 2017 6:19:31 PM
> To: GNURadio Discussion List
> Subject: [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
>
>
> Hi everyone,
>
> I just published my latest updates of my DAB project in a new blog post<
> https://dabtransceiver.wordpress.com/>.
>
> This week, I created a source block for the Fast Information Channel and
> started to build a reception chain for the Main Service Channel (where the
> audio data is transmitted).
>
> Read more about it in my post.
>
>
> Cheers
>
> Luca
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170606/bcd8ed3c/attachment.html>
>
> ------------------------------
>
> Message: 2
> Date: Tue, 6 Jun 2017 19:10:06 +0200
> From: Marcus M?ller <marcus.muel...@ettus.com>
> To: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
> Message-ID: <520a2557-1506-5fd3-305a-23e4207ea...@ettus.com>
> Content-Type: text/plain; charset="windows-1252"
>
> Hi ben,
>
>
> I love this topic of how to match hardware clocks just as much as you
> do, but I personally think that solving the two-clock problem between an
> SDR receiver and an audio device might be just a tiny bit out of scope
> of a GSoC project on a broadcast standard implementation. Also, it's not
> part of the milestones / deliverables that Luca set in cooperation with
> the community, and a considerable effort, so I don't think I'd advise
> Luca to do that;
> however, I'd really like to see this happening in another context. Maybe
> we can help /you/ get that working, preferably with an analog audio
> modulation first? Also, haven't we been talking about this extensively
> before? I don't see how the fact that your PC simply can't, with
> sufficient accuracy, measure what you call t_A for this approach to work
> without much higher-level tracking has changed. But that's a discussion
> that we really shouldn't be having (again) within the context of an
> unrelated GSoC project.
>
>
> background: in digital mod, you have to recover the TX sample clock,
> anyway, and then this problem boils down to matching the studio's audio
> sample rate to your soundcard's sample rate.
>
> Studio equipment typically has rather good oscillators (I think: better
> than 10ppm offset), and even the cheapest USB codec from Texas
> Instruments advises you to use a <=25ppm oscillator. That leads to a
> total worst-case rate offset of 35 ppm; with an 48 kHz sample clock,
> that's an offset of about 0.6 Hz, or one sample every 1.68 s. Thus, meh,
> assume your ALSA does 1024-sample periods, it'd take some half hour for
> a single frame to go missing or accumulate. And that's not even when you
> get an issue. It's just the first point that you'd actually be able to
> count things worthy of being sent to the audio driver not being the
> number that would be correct.
>
>
> In analog audio modulation, you don't get the benefit of anything that
> inherently transports the transmitter's sampling clock, and thus, your
> SDR's frequency error can't be corrected.
>
>
> Best regards,
>
> Marcus
>
>
> On 06.06.2017 18:02, Benny Alexandar wrote:
> >
> > Hi Luca,
> >
> >
> > Nice to see your progress so far. Once you have the
> > DAB receiver audio listening in place, I would
> > suggest to have an audio synchronization for continuous
> > playback without any buffer overflow or under-runs.
> >
> > DAB+ audio super frame length is 120ms according to DAB+
> > standard (ETSI TS 102 563). Each audio super frame is
> > carried in five consecutive logical DAB frames.
> > Which means 120ms of audio is mapped to 5 DAB frames.
> >
> > If I add a timestamp at the receiver when the first DAB frame
> > sample arrives, I can check the max latency when it comes to
> > audio renderer, I mean after buffering to adjust the variable
> > decoding time of compressed audio.
> >
> > t_D = t_A -  t_B ,
> > where,
> >  t_A = time at audio out
> >  t_B = time at input baseband sample.
> >  t_D = maximum system delay.
> >
> > The difficulty is to estimate the slow clock drift correctly
> > and separate it from the short-time channel/decoding jitter.
> >
> > Add a delay to buffer audio at audio out, say  D, which is larger
> > than max system delay. Whenever the audio reaches audio out, check the
> > delay to separate the clock drift.
> >
> >      drift = t_D - D
> >
> > Please let me know if you need any more details.
> >
> > -ben
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > ------------------------------------------------------------------------
> > *From:* Discuss-gnuradio
> > <discuss-gnuradio-bounces+ben.alex=outlook....@gnu.org> on behalf of
> > Moritz Luca Schmid <luca.moritz.sch...@gmail.com>
> > *Sent:* Friday, May 26, 2017 6:19:31 PM
> > *To:* GNURadio Discussion List
> > *Subject:* [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
> >
> >
> > Hi everyone,
> >
> > I just published my latest updates of my DAB project in a new blog
> > post <https://dabtransceiver.wordpress.com/>.
> >
> > This week, I created a source block for the Fast Information Channel
> > and started to build a reception chain for the Main Service Channel
> > (where the audio data is transmitted).
> >
> > Read more about it in my post.
> >
> >
> > Cheers
> >
> > Luca
> >
> >
> >
> > _______________________________________________
> > Discuss-gnuradio mailing list
> > 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/20170606/204476a8/attachment.html>
>
> ------------------------------
>
> Message: 3
> Date: Tue, 6 Jun 2017 11:12:08 -0700
> From: G Reina <gre...@eng.ucsd.edu>
> To: discuss-gnuradio@gnu.org
> Subject: [Discuss-gnuradio] ninput_items_required=1024
> Message-ID:
>         <CAEBTegSZB3cj0f-UL+ncQRxh3Y_hQ=oAWiQ=JpqVPQQe_Sn-3g@mail.
> gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> I'm creating a Python block that calculates a custom FFT. I need to ensure
> that I get at least 1024 data points for every input to the block.
>
> >From my reading, it looks like I should just be able to do this with the
> forecast() function in the Python block. So I've done this:
>
> class blk(gr.sync_block):  # other base classes are basic_block,
> > decim_block, interp_block
> >
> >     def __init__(self, bandWidthMHz=100.0):  # only default arguments
> here
> >         """arguments to this function show up as parameters in GRC"""
> >         gr.sync_block.__init__(
> >             self,
> >             name='test',   # will show up in GRC
> >             in_sig=[np.complex64],
> >             out_sig=[np.float32]
> >        )
> >         # if an attribute with the same name as a parameter is found,
> >         # a callback is registered (properties work, too).
> >         self.bandWidthMHz = bandWidthMHz
> >         self.MM = 0
> >
> >     def forecast(self, noutput_items, ninput_items_required=1024):
> >         ninput_items_required[0] = 1024
> >
> >     def work(self, input_items, output_items):
> >         if (np.shape(input_items[0])[0] < 1024):
> >             print(np.shape(input_items[0]))
> >         output_items[0] = [3.5, -1, 0, 1]
> >         return len(output_items[0])
> >
>
> According to the docs, if I set ninput_items_required[0] = 1024, then
> forecast should prevent the work from being done until I have at least 1024
> input values.
>
> Nevertheless, the print statement I have in the work function is showing
> that the program gets to the work even when the input_items[0] is much less
> (e.g. 24, 102, 960) than 1024.
>
> Can anyone point me in the right direction? Can I just have the work
> function skip execution if len(input_items[0]) < 1024? Or, will that drop
> data?
>
> Thanks for your help.
> -Tony
>
> p.s. I'm just doing this in a Python block from the GRC. So this is not a
> custom OOT module. Does that matter?
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170606/e0ee6b42/attachment.html>
>
> ------------------------------
>
> Message: 4
> Date: Tue, 6 Jun 2017 11:30:29 -0700
> From: G Reina <gre...@eng.ucsd.edu>
> To: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] ninput_items_required=1024
> Message-ID:
>         <CAEBTegSNRJFGC+FXydNXrS37HnRGyWmFe3tkb=nzPk7m
> wo2...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> I may have just answered it. I change the sync_block to a basic_block and
> it seems to be working.
>
> -Tony
>
>
> On Tue, Jun 6, 2017 at 11:12 AM, G Reina <gre...@eng.ucsd.edu> wrote:
>
> > I'm creating a Python block that calculates a custom FFT. I need to
> ensure
> > that I get at least 1024 data points for every input to the block.
> >
> > From my reading, it looks like I should just be able to do this with the
> > forecast() function in the Python block. So I've done this:
> >
> > class blk(gr.sync_block):  # other base classes are basic_block,
> >> decim_block, interp_block
> >>
> >>     def __init__(self, bandWidthMHz=100.0):  # only default arguments
> here
> >>         """arguments to this function show up as parameters in GRC"""
> >>         gr.sync_block.__init__(
> >>             self,
> >>             name='test',   # will show up in GRC
> >>             in_sig=[np.complex64],
> >>             out_sig=[np.float32]
> >>        )
> >>         # if an attribute with the same name as a parameter is found,
> >>         # a callback is registered (properties work, too).
> >>         self.bandWidthMHz = bandWidthMHz
> >>         self.MM = 0
> >>
> >>     def forecast(self, noutput_items, ninput_items_required=1024):
> >>         ninput_items_required[0] = 1024
> >>
> >>     def work(self, input_items, output_items):
> >>         if (np.shape(input_items[0])[0] < 1024):
> >>             print(np.shape(input_items[0]))
> >>         output_items[0] = [3.5, -1, 0, 1]
> >>         return len(output_items[0])
> >>
> >
> > According to the docs, if I set ninput_items_required[0] = 1024, then
> > forecast should prevent the work from being done until I have at least
> 1024
> > input values.
> >
> > Nevertheless, the print statement I have in the work function is showing
> > that the program gets to the work even when the input_items[0] is much
> less
> > (e.g. 24, 102, 960) than 1024.
> >
> > Can anyone point me in the right direction? Can I just have the work
> > function skip execution if len(input_items[0]) < 1024? Or, will that drop
> > data?
> >
> > Thanks for your help.
> > -Tony
> >
> > p.s. I'm just doing this in a Python block from the GRC. So this is not a
> > custom OOT module. Does that matter?
> >
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170606/e2235296/attachment.html>
>
> ------------------------------
>
> Message: 5
> Date: Tue, 6 Jun 2017 15:46:53 -0400
> From: John Ackermann N8UR <j...@febo.com>
> To: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
> Message-ID: <b44389c8-9b9f-f2b3-07ab-18438dee9...@febo.com>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> I don't have a view whether an audio synchronizer (is that the right
> term?) is appropriate for GSoC, but it's a problem that's biting me
> right now.  I'm doing a multi-channel nbfm receiver with a polyphase
> channelizer that feeds a bunch of power squelch/nbfm demod blocks, with
> the audio streams added together, rationally resampled to theoretically
> 48kHz, and then fed to an audio sink.
>
> With this setup, I seem to have two choices:  (a) I can tell the audio
> sink to block, in which case I get nice clean audio but latency of about
> 5 seconds, or (b) I can say not to block, in which case I get much less
> latency but also many aU underruns and audio that's very choppy.
>
> I wonder if I am suffering from rounding or truncation errors that's
> causing the demod rate to not be quite what it should be.
>
> It seems that there would be use for a block that provides a combination
> of buffering and a loop to measure input and consumption rates and steer
> a rational resampler to correct for mismatch.  I have no idea whether
> that would be easy, hard, or infeasible to implement.
>
> (If you're interested in the app, the current under-development version
> is at
> https://github.com/TAPR/N8UR_GnuRadio/blob/master/multi_fm/nbfm_27ch.grc)
>
> John
> ----
>
>
> On 06/06/2017 01:10 PM, Marcus M?ller wrote:
> > Hi ben,
> >
> >
> > I love this topic of how to match hardware clocks just as much as you
> > do, but I personally think that solving the two-clock problem between an
> > SDR receiver and an audio device might be just a tiny bit out of scope
> > of a GSoC project on a broadcast standard implementation. Also, it's not
> > part of the milestones / deliverables that Luca set in cooperation with
> > the community, and a considerable effort, so I don't think I'd advise
> > Luca to do that;
> > however, I'd really like to see this happening in another context. Maybe
> > we can help /you/ get that working, preferably with an analog audio
> > modulation first? Also, haven't we been talking about this extensively
> > before? I don't see how the fact that your PC simply can't, with
> > sufficient accuracy, measure what you call t_A for this approach to work
> > without much higher-level tracking has changed. But that's a discussion
> > that we really shouldn't be having (again) within the context of an
> > unrelated GSoC project.
> >
> >
> > background: in digital mod, you have to recover the TX sample clock,
> > anyway, and then this problem boils down to matching the studio's audio
> > sample rate to your soundcard's sample rate.
> >
> > Studio equipment typically has rather good oscillators (I think: better
> > than 10ppm offset), and even the cheapest USB codec from Texas
> > Instruments advises you to use a <=25ppm oscillator. That leads to a
> > total worst-case rate offset of 35 ppm; with an 48 kHz sample clock,
> > that's an offset of about 0.6 Hz, or one sample every 1.68 s. Thus, meh,
> > assume your ALSA does 1024-sample periods, it'd take some half hour for
> > a single frame to go missing or accumulate. And that's not even when you
> > get an issue. It's just the first point that you'd actually be able to
> > count things worthy of being sent to the audio driver not being the
> > number that would be correct.
> >
> >
> > In analog audio modulation, you don't get the benefit of anything that
> > inherently transports the transmitter's sampling clock, and thus, your
> > SDR's frequency error can't be corrected.
> >
> >
> > Best regards,
> >
> > Marcus
> >
> >
> > On 06.06.2017 18:02, Benny Alexandar wrote:
> >>
> >> Hi Luca,
> >>
> >>
> >> Nice to see your progress so far. Once you have the
> >> DAB receiver audio listening in place, I would
> >> suggest to have an audio synchronization for continuous
> >> playback without any buffer overflow or under-runs.
> >>
> >> DAB+ audio super frame length is 120ms according to DAB+
> >> standard (ETSI TS 102 563). Each audio super frame is
> >> carried in five consecutive logical DAB frames.
> >> Which means 120ms of audio is mapped to 5 DAB frames.
> >>
> >> If I add a timestamp at the receiver when the first DAB frame
> >> sample arrives, I can check the max latency when it comes to
> >> audio renderer, I mean after buffering to adjust the variable
> >> decoding time of compressed audio.
> >>
> >> t_D = t_A -  t_B ,
> >> where,
> >>  t_A = time at audio out
> >>  t_B = time at input baseband sample.
> >>  t_D = maximum system delay.
> >>
> >> The difficulty is to estimate the slow clock drift correctly
> >> and separate it from the short-time channel/decoding jitter.
> >>
> >> Add a delay to buffer audio at audio out, say  D, which is larger
> >> than max system delay. Whenever the audio reaches audio out, check the
> >> delay to separate the clock drift.
> >>
> >>      drift = t_D - D
> >>
> >> Please let me know if you need any more details.
> >>
> >> -ben
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >> ------------------------------------------------------------
> ------------
> >> *From:* Discuss-gnuradio
> >> <discuss-gnuradio-bounces+ben.alex=outlook....@gnu.org> on behalf of
> >> Moritz Luca Schmid <luca.moritz.sch...@gmail.com>
> >> *Sent:* Friday, May 26, 2017 6:19:31 PM
> >> *To:* GNURadio Discussion List
> >> *Subject:* [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
> >>
> >>
> >> Hi everyone,
> >>
> >> I just published my latest updates of my DAB project in a new blog
> >> post <https://dabtransceiver.wordpress.com/>.
> >>
> >> This week, I created a source block for the Fast Information Channel
> >> and started to build a reception chain for the Main Service Channel
> >> (where the audio data is transmitted).
> >>
> >> Read more about it in my post.
> >>
> >>
> >> Cheers
> >>
> >> Luca
> >>
> >>
> >>
> >> _______________________________________________
> >> Discuss-gnuradio mailing list
> >> Discuss-gnuradio@gnu.org
> >> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> >
> >
> >
> > _______________________________________________
> > Discuss-gnuradio mailing list
> > Discuss-gnuradio@gnu.org
> > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> >
>
>
>
> ------------------------------
>
> Message: 6
> Date: Tue, 6 Jun 2017 21:23:05 +0100
> From: Bastian Bloessl <m...@bastibl.net>
> To: zhan siyu <zhansyu...@gmail.com>, discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] why can't use iwconfig when I run the
>         gr-ieee802-11
> Message-ID: <d76f1dcb-4431-0849-7c6a-5c1a01d05...@bastibl.net>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> Hi,
>
> On 06/06/2017 03:55 PM, zhan siyu wrote:
> > Hi all,
> >
> > I just found I can't use the iwconfig tap0 rate 20M to setup the
> > bandwidth of the tap0. The error message is :
> >
> > Error for wireless request "Set Bit Rate" (8B20) :
> >           SET failed on device tap0 ; Operation not supported.
> >
> > But in their video , it can be set in this way. May I know how to solve
> it ?
>
> The WiFi transceiver is attached to the tun/tap interface, which is a
> virtual Ethernet device. This device doesn't support WiFi-specific
> configuration through iwconfig.
>
> If you wanted this level of integration, you would have to write a
> kernel module that attaches the transceiver to a virtual WiFi card.
>
> Some group already did that, but they didn't release the source code.
>
> Best,
> Bastian
>
>
>
> ------------------------------
>
> Message: 7
> Date: Tue, 6 Jun 2017 17:17:50 -0400
> From: John Ackermann N8UR <j...@febo.com>
> To: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
> Message-ID: <44ed7cf1-9584-88e7-e5ee-6e084e62f...@febo.com>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> Hi Benny --
>
> As I mentioned in another message, I'm struggling with the RF-audio
> interface now.  Do you have any example code for your suggestion that I
> might play with (in my mind, the idea would be an "audio synchronizer"
> block that would take input at the nominal audio rate and output at the
> actual rate, correcting for clock error to keep the stream flowing
> smoothly).
>
> If a prototype exists, I'd be happy to plug it into my current app to
> see what happens.
>
> John
> ----
>
> On 06/06/2017 12:02 PM, Benny Alexandar wrote:
> > Hi Luca,
> >
> >
> > Nice to see your progress so far. Once you have the
> > DAB receiver audio listening in place, I would
> > suggest to have an audio synchronization for continuous
> > playback without any buffer overflow or under-runs.
> >
> > DAB+ audio super frame length is 120ms according to DAB+
> > standard (ETSI TS 102 563). Each audio super frame is
> > carried in five consecutive logical DAB frames.
> > Which means 120ms of audio is mapped to 5 DAB frames.
> >
> > If I add a timestamp at the receiver when the first DAB frame
> > sample arrives, I can check the max latency when it comes to
> > audio renderer, I mean after buffering to adjust the variable
> > decoding time of compressed audio.
> >
> > t_D = t_A -  t_B ,
> > where,
> >  t_A = time at audio out
> >  t_B = time at input baseband sample.
> >  t_D = maximum system delay.
> >
> > The difficulty is to estimate the slow clock drift correctly
> > and separate it from the short-time channel/decoding jitter.
> >
> > Add a delay to buffer audio at audio out, say  D, which is larger
> > than max system delay. Whenever the audio reaches audio out, check the
> > delay to separate the clock drift.
> >
> >      drift = t_D - D
> >
> > Please let me know if you need any more details.
> >
> > -ben
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > ------------------------------------------------------------------------
> > *From:* Discuss-gnuradio
> > <discuss-gnuradio-bounces+ben.alex=outlook....@gnu.org> on behalf of
> > Moritz Luca Schmid <luca.moritz.sch...@gmail.com>
> > *Sent:* Friday, May 26, 2017 6:19:31 PM
> > *To:* GNURadio Discussion List
> > *Subject:* [Discuss-gnuradio] [GSoC 17] DAB: updates of the week
> >
> >
> > Hi everyone,
> >
> > I just published my latest updates of my DAB project in a new blog post
> > <https://dabtransceiver.wordpress.com/>.
> >
> > This week, I created a source block for the Fast Information Channel and
> > started to build a reception chain for the Main Service Channel (where
> > the audio data is transmitted).
> >
> > Read more about it in my post.
> >
> >
> > Cheers
> >
> > Luca
> >
> >
> >
> > _______________________________________________
> > Discuss-gnuradio mailing list
> > Discuss-gnuradio@gnu.org
> > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> >
>
>
>
> ------------------------------
>
> Message: 8
> Date: Wed, 7 Jun 2017 01:08:21 +0000
> From: Eugene Grayver <eugene.gray...@aero.org>
> To: "discuss-gnuradio@gnu.org" <discuss-gnuradio@gnu.org>
> Subject: [Discuss-gnuradio] symbol already exists: cannot reuse!
>         runtime error
> Message-ID:
>         <BY2PR09MB0965C99ADD1D91A859FA5C49ECC80@BY2PR09MB0965.
> namprd09.prod.outlook.com>
>
> Content-Type: text/plain; charset="us-ascii"
>
> I have a rather complicated GR application.  I create (Python, w/out grc)
> multiple top_blocks, each containing dozens of blocks.  To make things even
> more complicated, the flowgraphs are created in stages - using runtime
> reconfiguration to add more blocks.
>
> Everything works fine until I reach some critical size (apparently).  Then
> I get an error: 'symbol already exists cannot reuse'  It has something to
> do with registering a block name in 'block_registry::register_
> symbolic_name'
>
> I experience this error with both versions 3.7.9.2 and 3.7.11.
>
> I am at a loss on how to debug this problem.  Reviewing the code seems OK
> - the thread locks look good.  I have no idea how a block with the same
> name can show up twice.  Is this due to multiple top_block instances?  Due
> to runtime reconfig?
>
> Ideas?
>
> _______________________
> Eugene Grayver, Ph.D.
> Aerospace Corp., Sr. Eng. Spec.
> Tel: 310.336.1274
> ________________________
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170607/33bf626b/attachment.html>
>
> ------------------------------
>
> Message: 9
> Date: Wed, 7 Jun 2017 10:04:40 +0800
> From: zhan siyu <zhansyu...@gmail.com>
> To: Bastian Bloessl <m...@bastibl.net>
> Cc: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] why can't use iwconfig when I run the
>         gr-ieee802-11
> Message-ID:
>         <CAGNex4jsMd9WZkn7p4Fe-gPwxow1T2N+-4iU5gV+AyM3nkWpQw@
> mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Thanks. I just wonder why. Because I meet some performance problem. I
> thought it maybe caused by my misconfiguration of the gr-ieee802-11 code.
> Now, it seems not.
>
> However, theoretically,  as my current sample rate is 10M and BPSK. So the
> coding rate should be 10M/2 = 5M b/s. The throughtput should be around 5M/8
> = 625K B/s. Assuming the 12% head cost, so the data throughput should be
> 625 * 88 % = 550K B/s.  But as my experiment shows, the throughput is only
> 150K B/s.
>
> I'm new to the communication. Is my calculation right ? If it were right,
> then what might cause the gap?
>
> One more question, I didn't run the volk_profile. Does it matter?
>
> Best regards.
>
> Siyu
>
>
> 2017-06-07 4:23 GMT+08:00 Bastian Bloessl <m...@bastibl.net>:
>
> > Hi,
> >
> > On 06/06/2017 03:55 PM, zhan siyu wrote:
> >
> >> Hi all,
> >>
> >> I just found I can't use the iwconfig tap0 rate 20M to setup the
> >> bandwidth of the tap0. The error message is :
> >>
> >> Error for wireless request "Set Bit Rate" (8B20) :
> >>           SET failed on device tap0 ; Operation not supported.
> >>
> >> But in their video , it can be set in this way. May I know how to solve
> >> it ?
> >>
> >
> > The WiFi transceiver is attached to the tun/tap interface, which is a
> > virtual Ethernet device. This device doesn't support WiFi-specific
> > configuration through iwconfig.
> >
> > If you wanted this level of integration, you would have to write a kernel
> > module that attaches the transceiver to a virtual WiFi card.
> >
> > Some group already did that, but they didn't release the source code.
> >
> > Best,
> > Bastian
> >
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170607/2083e1f0/attachment.html>
>
> ------------------------------
>
> Message: 10
> Date: Tue, 6 Jun 2017 21:08:34 -0700
> From: G Reina <gre...@eng.ucsd.edu>
> To: discuss-gnuradio@gnu.org
> Subject: [Discuss-gnuradio] 1,024 in - 3 out
> Message-ID:
>         <CAEBTegT92t3fUc_eotaBtK5ScGvNWSJp=xQBkr630tmnE
> hg...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> I'm trying to implement a Python block that will take a signal (complex64
> array of 1,024 values) and return a float32 array that includes the max,
> min, and mean of the norm for the complex values.
>
> So something with an input array of 1,024 complex elements and an output
> array of 3 float elements. From my reading so far, I think I can use an
> embedded basic Python block:
>
> class blk(gr.basic_block):  # other base classes are basic_block,
> > decim_block, interp_block
> >     """Embedded Python Block example"""
> >
> >     def __init__(self, example_param=1.0):  # only default arguments here
> >         """arguments to this function show up as parameters in GRC"""
> >         gr.basic_block.__init__(
> >             self,
> >             name='Embedded Python Block',   # will show up in GRC
> >             in_sig=[np.complex64],
> >             out_sig=[np.float32]
> >         )
> >         # if an attribute with the same name as a parameter is found,
> >         # a callback is registered (properties work, too).
> >         self.example_param = example_param
> >
> >     def forecast(self, noutput_items, ninput_items_required=1024):
> >         for i in range(len(ninput_items_required)):
> >             ninput_items_required[i] = 1024
> >
> >     def general_work(self, input_items, output_items):
> >
> >         output_items[0] = np.zeros(3)
> >         output_items[0][:] = [np.min(np.abs(input_items[0])),
> > np.max(np.abs(input_items[0])), np.mean(np.abs(input_items[0]))]
> >
> >         print('{}: {}'.format(len(input_items[0]), output_items[0]))
> >
> >         return len(output_items[0])
> >
>
> This code runs. The print statement shows me that the data is getting in
> (8,191 elements) and that it is correctly calculating the output_items[0]
> vector.  However, when I try to hook up the output of the block to a GRC
> number sink or time scope, I don't see anything at all. So it doesn't seem
> to be passing anything back for another block to use.
>
> Is there a better way for me to do this?  My intention is to turn this
> simple block into a more complicated block that finds open channels from a
> complex spectrum. So I'd be taking a 1,024 complex input and returning an
> output with the open center frequency, bandwidth, and probability of being
> unoccupied. Maybe the block can just pass messages back instead of an array
> of values??
>
> Thanks.
> -Tony
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170606/3c5cbdf5/attachment.html>
>
> ------------------------------
>
> Message: 11
> Date: Wed, 7 Jun 2017 07:02:31 +0100
> From: Bastian Bloessl <m...@bastibl.net>
> To: zhan siyu <zhansyu...@gmail.com>
> Cc: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] why can't use iwconfig when I run the
>         gr-ieee802-11
> Message-ID: <9eff9bd8-e09f-3b9f-8180-605d15b1c...@bastibl.net>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> Hi,
>
> On 06/07/2017 03:04 AM, zhan siyu wrote:
> > Thanks. I just wonder why. Because I meet some performance problem. I
> > thought it maybe caused by my misconfiguration of the gr-ieee802-11
> > code. Now, it seems not.
>
> I'm a bit confused why the fact that the transceiver is not configured
> through iwconfig ruled out any configuration issues, but great that all
> seems to be set up now.
>
> >
> > However, theoretically,  as my current sample rate is 10M and BPSK. So
> > the coding rate should be 10M/2 = 5M b/s. The throughtput should be
> > around 5M/8 = 625K B/s. Assuming the 12% head cost, so the data
> > throughput should be 625 * 88 % = 550K B/s.  But as my experiment shows,
> > the throughput is only 150K B/s.
> >
> > I'm new to the communication. Is my calculation right ?
>
> BPSK 1/3 is 3Mbit/s gross at 10MHz. The overhead per packet has to be
> subtracted, i.e. the actual maximum rate depends on the frame size.
>
>
> > If it were
> > right, then what might cause the gap?
>
> Since you don't explain what you are doing, this is very hard to tell.
> You would reach this theoretical throughput only if you send frames
> back-to-back (which probably only works if you pregenerate the sample
> stream). But also a WiFi card will insert inter-frame space, so that the
> actual throughput will not match the theoretical maximum physical layer
> throughput.
>
> Best,
> Bastian
>
>
> >
> > One more question, I didn't run the volk_profile. Does it matter?
> >
> > Best regards.
> >
> > Siyu
> >
> >
> > 2017-06-07 4:23 GMT+08:00 Bastian Bloessl <m...@bastibl.net
> > <mailto:m...@bastibl.net>>:
> >
> >     Hi,
> >
> >     On 06/06/2017 03:55 PM, zhan siyu wrote:
> >
> >         Hi all,
> >
> >         I just found I can't use the iwconfig tap0 rate 20M to setup the
> >         bandwidth of the tap0. The error message is :
> >
> >         Error for wireless request "Set Bit Rate" (8B20) :
> >                    SET failed on device tap0 ; Operation not supported.
> >
> >         But in their video , it can be set in this way. May I know how
> >         to solve it ?
> >
> >
> >     The WiFi transceiver is attached to the tun/tap interface, which is
> >     a virtual Ethernet device. This device doesn't support WiFi-specific
> >     configuration through iwconfig.
> >
> >     If you wanted this level of integration, you would have to write a
> >     kernel module that attaches the transceiver to a virtual WiFi card.
> >
> >     Some group already did that, but they didn't release the source code.
> >
> >     Best,
> >     Bastian
> >
> >
>
> --
> Dipl.-Inform. Bastian Bloessl
> CONNECT Center
> Trinity College Dublin
>
> GitHub/Twitter: @bastibl
> https://www.bastibl.net/
>
>
>
> ------------------------------
>
> Message: 12
> Date: Tue, 6 Jun 2017 23:57:24 -0700
> From: Vipin Sharma <vipinsha...@photonpace.com>
> To: GNURadio Discussion List <discuss-gnuradio@gnu.org>
> Subject: [Discuss-gnuradio] Handling more than 3 output streams
> Message-ID:
>         <CAJQb1zusxLXxMJ0J4Ff3jy+9ctGZFLvOVNBhY0c=0MK8hMovOg@
> mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> I have a custom block for which I am trying to define the io signature in
> the *impl.cc file correctly. The problem is that the custom block has more
> than 3 output streams. I tried make5 but got a compile error saying make5
> is not a member. After researching more, I found out that I need to use
> makev instead. But I am not sure how and where to initialize the vector int
> array type and then pass that variable as the third argument to the makev
> function below. Here is the block of code below. For example, where do I
> initialize the sizeOfInputStream vector-int array type?
>
>     /*
>      * The private constructor
>      */
>     Nulling_cc_impl::Nulling_cc_impl(int PBoostFactor, char TapSize, int
> FrameSize, gr_complex *InitialTapsDb[2])
>       : gr::block("Nulling_cc",
>               gr::io_signature::makev(5, 5, &sizeOfInputStream),
>               gr::io_signature::make4(4, 4, TapSize*sizeof(gr_complex),
> TapSize*sizeof(gr_complex), sizeof(bool), TapSize*sizeof(gr_complex)))
>     {}
>
> Vipin
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170606/d0bd85e7/attachment.html>
>
> ------------------------------
>
> Message: 13
> Date: Wed, 7 Jun 2017 09:19:47 +0200
> From: Moritz Luca Schmid <luca.moritz.sch...@gmail.com>
> To: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] Handling more than 3 output streams
> Message-ID: <cb16f123-9f29-5fb2-6a6a-13ced087f...@gmail.com>
> Content-Type: text/plain; charset="utf-8"; Format="flowed"
>
> Hi Vipin,
>
> you can find detailed information about the methods makeX to create an
> i/o signature in the doxygen documentation
> <https://gnuradio.org/doc/doxygen/classgr_1_1io__signature.html#
> a99e0f9e8de8e7ce16ed92d9f2655e66c>.
>
> If you have multiple input streams with the same size, you don't have to
> specify the size of each stream separately but you can simply define
> their size in the last input item once (e.g. for make3 the the argument
> sizeof_stream_item3: "specify the size of the items in the third and
> subsequent streams"). If this is not the case and you have to define the
> size for each stream separately or you have at least more than 3
> different stream sizes, you choose makev.
>
> You can initialize the vector sizeof_stream_items just before your
> constructor. See /gr-digital constellation_receiver_cb_impl
> <https://github.com/fengzhe29888/gnuradio-old/blob/master/gr-digital/lib/
> constellation_receiver_cb_impl.cc>/as
> an example for that.
>
>
> Best
>
> Luca
>
>
> On 07.06.2017 08:57, Vipin Sharma wrote:
> > I have a custom block for which I am trying to define the io signature
> > in the *impl.cc file correctly. The problem is that the custom block
> > has more than 3 output streams. I tried make5 but got a compile error
> > saying make5 is not a member. After researching more, I found out that
> > I need to use makev instead. But I am not sure how and where to
> > initialize the vector int array type and then pass that variable as
> > the third argument to the makev function below. Here is the block of
> > code below. For example, where do I initialize the sizeOfInputStream
> > vector-int array type?
> >
> >     /*
> >      * The private constructor
> >      */
> >     Nulling_cc_impl::Nulling_cc_impl(int PBoostFactor, char TapSize,
> > int FrameSize, gr_complex *InitialTapsDb[2])
> >       : gr::block("Nulling_cc",
> >               gr::io_signature::makev(5, 5, &sizeOfInputStream),
> >               gr::io_signature::make4(4, 4,
> > TapSize*sizeof(gr_complex), TapSize*sizeof(gr_complex), sizeof(bool),
> > TapSize*sizeof(gr_complex)))
> >     {}
> >
> > Vipin
> >
> >
> > _______________________________________________
> > Discuss-gnuradio mailing list
> > 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/20170607/8383410e/attachment.html>
>
> ------------------------------
>
> Message: 14
> Date: Wed, 7 Jun 2017 04:26:58 -0400
> From: Anon Lister <listera...@gmail.com>
> To: Marcus M?ller <marcus.muel...@ettus.com>
> Cc: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] Rational Resampler no output.
> Message-ID:
>         <CAMp204QG9ttezukNHogskabUr6hVj69pS5OXqDmw5DDVY-C1KQ@mail.
> gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> I have an AMD system with the same chip running Ubuntu 16.xx. I can
> probably try to duplicate this weekend, if Cor doesn't get to it, as
> another data point.
>
> On Jun 5, 2017 3:14 PM, "Marcus M?ller" <marcus.muel...@ettus.com> wrote:
>
> Hi Cor,
>
> Excuse the language, but faaaark. Ok, looks like we have a bug in low_pass.
> Or in GCC. Or SWIG (which does the python-wrapping of the code in
> firdes.cc). yay.
>
> So, let's narrow this down: on intel and amd64, same number of taps, right?
>
> Then: If I asked you to use GDB to verify the C++ low_pass function in
> gr::filter::firdes::low_pass actually returned the right float values,
> would you feel that, with a few hints, be able to do that?
>
> Best regards,
>
> Marcus
>
> On 01.06.2017 07:20, Cor Legemaat wrote:
>
> Hi:
>
> filter.firdes.low_pass get called with:
>  * fractional_bw = 0.4
>  * trans_width = 0.1
>  * mid_transition_band = 0.45
>  * interpolation = 24
>
> But return: (nan, <788 times nan>)
>
> Regards:
> Cor
>
> On Tue, 2017-05-30 at 00:06 +0200, Marcus M?ller wrote:
>
> Hi Cor,
>
>  * When using 1 as "taps" there is output.
>
>  Aha!!
> So, here's the thing: something might be going wrong in the python
> code that sets up the taps automatically if you don't set them
> explicitly.
> Maybe you can figure out where things go wrong; the interesting part
> (maybe add some `print`s here?) from [1]:
>
>         # If we don't have user-provided taps, reduce the interp and
>         # decim values by the GCD (if there is one) and then define
>         # the taps from these new values.
>         if taps is None:
>             interpolation = interpolation // d
>             decimation = decimation // d
>             taps = design_filter(interpolation, decimation,
> fractional_bw)
>
> and
>
>
> def design_filter(interpolation, decimation, fractional_bw):
>     """
>     Given the interpolation rate, decimation rate and a fractional
> bandwidth,
>     design a set of taps.
>
>     Args:
>         interpolation: interpolation factor (integer > 0)
>         decimation: decimation factor (integer > 0)
>         fractional_bw: fractional bandwidth in (0, 0.5)  0.4 works
> well. (float)
>     Returns:
>         : sequence of numbers
>     """
>
>     if fractional_bw >= 0.5 or fractional_bw <= 0:
>         raise ValueError, "Invalid fractional_bandwidth, must be in
> (0, 0.5)"
>
>     beta = 7.0
>     halfband = 0.5
>     rate = float(interpolation)/float(decimation)
>     if(rate >= 1.0):
>         trans_width = halfband - fractional_bw
>         mid_transition_band = halfband - trans_width/2.0
>     else:
>         trans_width = rate*(halfband - fractional_bw)
>         mid_transition_band = rate*halfband - trans_width/2.0
>
>     taps = filter.firdes.low_pass(interpolation,
> # gain
>                                   interpolation,
> # Fs
>                                   mid_transition_band,
> # trans mid point
>                                   trans_width,
> # transition width
>                                   filter.firdes.WIN_KAISER,
>                                   beta)
> # beta
>
>     return taps
>
>
>
> Best regards,
> Marcus
>
> [1] https://github.com/gnuradio/gnuradio/blob/master/gr-filter/python
> /filter/rational_resampler.py
>
> On 29.05.2017 19:01, Cor Legemaat wrote:
>
> Hi:
>
>  * The only warning is about the thread priority but that's on
> both.
>  * Type "Complex->Complex (Complex Taps)"
>  * When using 1 as "taps" there is output.
>
> I can open it in Nemiver if I know where to put the break point...
>
> Regards:
> Cor
>
> On Mon, 2017-05-29 at 11:36 +0200, Marcus M?ller wrote:
>
> Hi Cor,
> that's kind of surprising?. My first bet is that your AMD system
> is
> missing some dependency that the intel system has, so that
> something
> goes wrong during build. But then again, you shouldn't be seeing
> the
> rational resampler block at all in that case. Let's head straight
> to
> debugging:
> * Do you get any warning/console output during the execution of
> that
> flow graph?
> * Which is the input/output type (float or complex, orange or
> blue
> connector in GRC, if using that)
> * If in GRC: when explicitly using [1,] as "taps", do you get
> output?
> Best regards,
> Marcus
>
> ? "wat?!"
>
> On 29.05.2017 06:35, Cor Legemaat wrote:
>
> Hi:
>
> I have 2 different hardware setup's with funtoo/gentoo and
> gnuradio
> installed. On the Intel system the "Rational Resampler" is
> working
> correctly but on the AMD system there is no output. This is on
> a
> flow
> graph for an basic wide band fm receiver based on the USPR
> 10min fm
> receiver tutorial.
>
> AMD system:
>  * AMD FX(tm)-8150 Eight-Core Processor
>  * CPU_FLAGS_X86="aes avx fma4 mmx mmxext popcnt sse sse2 sse3
> sse4_1 sse4_2 sse4a ssse3 xop"
>
> Intel system:
>  * Intel(R) Core(TM) i5-2430M CPU @ 2.40GHz
>  * CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3
> sse4_1
> sse4_2
>    ssse3"
>
> Tried with different versions of GNURadio and gcc but the same
> symptoms, both systems is compiled with CFLAGS="-march=native
> -O2
> -pipe". At the moment it is gcc:6.3.0  and net-
> wireless/gnuradio-
> 3.7.11:0/3.7.11  USE="alsa analog atsc audio channels digital
> doc
> dtv
> examples fec filter grc noaa pager performance-counters
> portaudio
> qt4
> uhd utils vocoder wavelet wxwidgets zeromq -fcd -jack -log -oss
> -sdl {-
> test} -trellis" PYTHON_TARGETS="python2_7"
>
> Where do I start to search?
>
> Regards:
> Cor
>
>
> _______________________________________________
> Discuss-gnuradio mailing
> listDiscuss-gnuradio@gnu.orghttps://lists.gnu.org/
> mailman/listinfo/discuss-gnuradio
>
>
>
>
> _______________________________________________
> Discuss-gnuradio mailing
> listDiscuss-gnuradio@gnu.orghttps://lists.gnu.org/
> mailman/listinfo/discuss-gnuradio
>
>
> _______________________________________________
> Discuss-gnuradio mailing
> listDiscuss-gnuradio@gnu.orghttps://lists.gnu.org/
> mailman/listinfo/discuss-gnuradio
>
>
>
> _______________________________________________
> Discuss-gnuradio mailing
> listDiscuss-gnuradio@gnu.orghttps://lists.gnu.org/
> mailman/listinfo/discuss-gnuradio
>
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> 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/20170607/c94fd215/attachment.html>
>
> ------------------------------
>
> Message: 15
> Date: Wed, 7 Jun 2017 17:37:20 +0900
> From: ??? <d...@radarnspace.kr>
> To: discuss-gnuradio@gnu.org
> Subject: [Discuss-gnuradio] USRP sink clock rate
> Message-ID: <gab5937bb407b...@radarnspace.kr>
> Content-Type: text/plain; charset="utf-8"
>
> Hi all
>
>
>
> I&#39;m using Ettus Research USRP device with GRC
>
> And I have one question
>
>  &lt;The &quot;sampling rate&quot; is the rate at which samples are passed
> between the host commuter and the USRP&gt;
>  &lt;The &quot;master_clock_rate&quot; is the rate at which samples are
> passed between FPGA and the RF front end&gt;
>
>
>
> Is there anybody who can explain me why the clock rate on UHD:USRP sink
> block
>
> have only 4 choice? (200, 18432, 120, 3072MHz)
>
>
>
>
>
> Regards
>
> Kim taeyeong
>
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170607/b4bea426/attachment.html>
>
> ------------------------------
>
> Message: 16
> Date: Wed, 7 Jun 2017 10:29:32 +0100
> From: Derek Kozel <derek.ko...@ettus.com>
> To: ??? <d...@radarnspace.kr>
> Cc: GNURadio Discussion List <discuss-gnuradio@gnu.org>
> Subject: Re: [Discuss-gnuradio] USRP sink clock rate
> Message-ID:
>         <CAA+K=tuzn7L9C=v0-bMioRuVh-3PSaEr8NSE9pK=HEeXQ7dLdg@mail.
> gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Hello Kim,
>
> The first two rates (200e6 and 184.32e6) are for the X310 which only
> supports those two ADC sampling rates. The third rate (120e6) is no longer
> supported, I'll get that removed. 30.72e6 is for the AD9361/AD9364 based
> USRPs (B2x0, E310).
>
> The field is a text field so you can enter any value you want. However for
> most applications it is best to initialize the device with the master clock
> rate set in the device arguments. You can supply a string such as
> "master_clock_rate=61.44e6" into the Device Arguments field in the sink
> block. If you have a source block using the same USRP the Device Arguments
> and Device Address fields must be identical between these blocks.
>
> Regards,
> Derek
>
>
> On Wed, Jun 7, 2017 at 9:37 AM, ??? <d...@radarnspace.kr> wrote:
>
> > Hi all
> >
> >
> >
> > I'm using Ettus Research USRP device with GRC.
> >
> > And I have one question.
> >
> >   <The "sampling rate" is the rate at which samples are passed between
> the
> > host commuter and the USRP.>
> >   <The "master_clock_rate" is the rate at which samples are passed
> between
> > FPGA and the RF front end.>
> >
> >
> >
> > Is there anybody who can explain me why the clock rate on UHD:USRP sink
> > block
> >
> > have only 4 choice? (200, 184.32, 120, 30.72MHz)
> >
> >
> >
> >
> >
> > Regards
> >
> > Kim taeyeong
> >
> > _______________________________________________
> > Discuss-gnuradio mailing list
> > 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/20170607/54022dae/attachment.html>
>
> ------------------------------
>
> Message: 17
> Date: Wed, 07 Jun 2017 14:58:37 +0200
> From: Florian Adamsky <fa-gnura...@haktar.org>
> To: discuss-gnuradio@gnu.org
> Subject: [Discuss-gnuradio] Measure the Distance to another 802.11
>         device
> Message-ID: <87o9u0hs3m....@haktar.org>
> Content-Type: text/plain
>
> Hi all,
>
> in one of our projects we need to measure the distance between two
> 802.11 devices as accurately as possible. Our idea is to use the
> round-trip time (RTT). To avoid any delay from the operation system and
> from the network stack, our idea is to measure the arrival time of the
> acknowledgment control frame. Means, we take a timestamp when device A
> sent a small data frame to device B; when B has received the frame, it
> replies with an acknowledgment control frame and when A has received it
> we will take another timestamp. Of course we would repeat that n-times
> to avoid outliers.
>
> We bought a HackRF and tried to get the examples from gr-ieee802-11
> running. After some minor problems (dc offset) we were able to receive
> 802.11 frames. However, we are not able to send any 802.11 packets,
> because the hackrf driver does not support burst transmission with
> tagged streams. One reader of this mailing list suggested to give
> soapysdr a try. We did that as well, but again without success. Here we
> didn't see any "UUUUU" in the debug console but we were still not able
> to see any packets with another wireless card in monitor mode.
>
> Now we begin to think if the HackRF is the right device to get the job
> done. Is the HackRF maybe the wrong device and we need to get a better
> one? If yes, which one would you suggest? Or do you think there is
> better approach to solve our problem like modifying one of the open
> firmware for wireless cards?
>
> Thanks in advance.
>
> Cheers!
> --
> Dr. Florian Adamsky
> http://florian.adamsky.it/
>
>
>
> ------------------------------
>
> Message: 18
> Date: Wed, 7 Jun 2017 21:32:11 +0800
> From: zhan siyu <zhansyu...@gmail.com>
> To: Bastian Bloessl <m...@bastibl.net>
> Cc: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] why can't use iwconfig when I run the
>         gr-ieee802-11
> Message-ID:
>         <CAGNex4ieGY+yyC7X96q3KMrO5+FOBgg_fVLZ=frXGP27DunQkA@mail.
> gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> Thanks for your reply. Let me explain what I 'm doing.
>
> I have two B210s connected with two computers. I want to measure the
> throughput between the two computers over the usrp connection over
> gr-ieee802-11. But no matter how hard I try, like tuning the parameters and
> turning off my own wifi card and AP, I can only get 150K B/s, which should
> be around 300K B/s if my theoretical calculation is right.  There are no
> underrun or overrun errors. The throughput measurement tool I'm using is
> iperf, which is an application to measure the end to end throughput.
>
> Could you give me some hints?
>
> Best regards.
>
> Siyu
>
> 2017-06-07 14:02 GMT+08:00 Bastian Bloessl <m...@bastibl.net>:
>
> > Hi,
> >
> > On 06/07/2017 03:04 AM, zhan siyu wrote:
> >
> >> Thanks. I just wonder why. Because I meet some performance problem. I
> >> thought it maybe caused by my misconfiguration of the gr-ieee802-11
> code.
> >> Now, it seems not.
> >>
> >
> > I'm a bit confused why the fact that the transceiver is not configured
> > through iwconfig ruled out any configuration issues, but great that all
> > seems to be set up now.
> >
> >
> >> However, theoretically,  as my current sample rate is 10M and BPSK. So
> >> the coding rate should be 10M/2 = 5M b/s. The throughtput should be
> around
> >> 5M/8 = 625K B/s. Assuming the 12% head cost, so the data throughput
> should
> >> be 625 * 88 % = 550K B/s.  But as my experiment shows, the throughput is
> >> only 150K B/s.
> >>
> >> I'm new to the communication. Is my calculation right ?
> >>
> >
> > BPSK 1/3 is 3Mbit/s gross at 10MHz. The overhead per packet has to be
> > subtracted, i.e. the actual maximum rate depends on the frame size.
> >
> >
> > If it were right, then what might cause the gap?
> >>
> >
> > Since you don't explain what you are doing, this is very hard to tell.
> You
> > would reach this theoretical throughput only if you send frames
> > back-to-back (which probably only works if you pregenerate the sample
> > stream). But also a WiFi card will insert inter-frame space, so that the
> > actual throughput will not match the theoretical maximum physical layer
> > throughput.
> >
> > Best,
> > Bastian
> >
> >
> >
> >> One more question, I didn't run the volk_profile. Does it matter?
> >>
> >> Best regards.
> >>
> >> Siyu
> >>
> >>
> >> 2017-06-07 4:23 GMT+08:00 Bastian Bloessl <m...@bastibl.net <mailto:
> >> m...@bastibl.net>>:
> >>
> >>     Hi,
> >>
> >>     On 06/06/2017 03:55 PM, zhan siyu wrote:
> >>
> >>         Hi all,
> >>
> >>         I just found I can't use the iwconfig tap0 rate 20M to setup the
> >>         bandwidth of the tap0. The error message is :
> >>
> >>         Error for wireless request "Set Bit Rate" (8B20) :
> >>                    SET failed on device tap0 ; Operation not supported.
> >>
> >>         But in their video , it can be set in this way. May I know how
> >>         to solve it ?
> >>
> >>
> >>     The WiFi transceiver is attached to the tun/tap interface, which is
> >>     a virtual Ethernet device. This device doesn't support WiFi-specific
> >>     configuration through iwconfig.
> >>
> >>     If you wanted this level of integration, you would have to write a
> >>     kernel module that attaches the transceiver to a virtual WiFi card.
> >>
> >>     Some group already did that, but they didn't release the source
> code.
> >>
> >>     Best,
> >>     Bastian
> >>
> >>
> >>
> > --
> > Dipl.-Inform. Bastian Bloessl
> > CONNECT Center
> > Trinity College Dublin
> >
> > GitHub/Twitter: @bastibl
> > https://www.bastibl.net/
> >
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <http://lists.gnu.org/archive/html/discuss-gnuradio/
> attachments/20170607/099e661c/attachment.html>
>
> ------------------------------
>
> Message: 19
> Date: Wed, 7 Jun 2017 17:36:34 +0200
> From: Marcus M?ller <marcus.muel...@ettus.com>
> To: discuss-gnuradio@gnu.org
> Subject: Re: [Discuss-gnuradio] Measure the Distance to another 802.11
>         device
> Message-ID: <d593a29c-c303-f7ec-21d3-96b5e9f7d...@ettus.com>
> Content-Type: text/plain; charset=windows-1252
>
> Hi Florian,
>
> that's an interesting approach!
>
>
> On 06/07/2017 02:58 PM, Florian Adamsky wrote:
> > Hi all,
> >
> > in one of our projects we need to measure the distance between two
> > 802.11 devices as accurately as possible. Our idea is to use the
> > round-trip time (RTT). To avoid any delay from the operation system and
> > from the network stack, our idea is to measure the arrival time of the
> > acknowledgment control frame. Means, we take a timestamp when device A
> > sent a small data frame to device B; when B has received the frame, it
> > replies with an acknowledgment control frame and when A has received it
> > we will take another timestamp. Of course we would repeat that n-times
> > to avoid outliers.
> Your observation, that Wifi chipsets typically delegate most of what is
> necessary to be a working Wifi device to the operating system. Highly
> timing-sensitive things, however, are typically handled by the chip
> firmware itself.
> If I remember correctly, there's some degree of adjustability in that
> firmware, at least in Atheros chipsets; [1] might be an interesting talk
> for you.
> >
> > We bought a HackRF and tried to get the examples from gr-ieee802-11
> > running. After some minor problems (dc offset) we were able to receive
> > 802.11 frames. However, we are not able to send any 802.11 packets,
> > because the hackrf driver does not support burst transmission with
> > tagged streams. One reader of this mailing list suggested to give
> > soapysdr a try. We did that as well, but again without success. Here we
> > didn't see any "UUUUU" in the debug console but we were still not able
> > to see any packets with another wireless card in monitor mode.
> Another takeaway from [1] that in usual operation, the hardware doesn't
> even hand over packets that don't make the checksum test ? maybe it'd be
> interesting to disable that filtering.
>
> Best regards,
> Marcus
>
> [1]
> https://www.irongeek.com/i.php?page=videos/defcon-
> wireless-village-2014/20-inside-the-atheros-wifi-chipset-adrian-chadd
>
>
>
> ------------------------------
>
> Subject: Digest Footer
>
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
> ------------------------------
>
> End of Discuss-gnuradio Digest, Vol 176, Issue 7
> ************************************************
>
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to