[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] Problem with underruns
From: |
Andy Walls |
Subject: |
Re: [Discuss-gnuradio] Problem with underruns |
Date: |
Fri, 17 Mar 2017 15:24:59 -0400 |
On Fri, 2017-03-17 at 14:36 -0400, Andy Walls wrote:
> > Hi Sverre,
> >
> > hm, I've taken the time to look at pulse_shaper_bs.py[1], but I didn't
> > fully understand what it does, mathematically/technically.
> >
> >
> >
> > It does in fact look like a very complicated way to do something that
> > I'm not 100% sure wouldn't be covered by a simple FIR filter, but
> > lacking a bit of documentation, and not finding the time to go into
> > all the if()-cases right now, can you explain what it does?
>
> Hi Marcus:
>
> The pulse shaper bs block looks like an MSK I or Q bit to half-sine
> pulse convertor, which one would use when generating MSK as an Offset
> QPSK with half-sine shaped pulses.
> Definitely the hard way to generate MSK, when using FSK with square
> pulses is much easier.
>
> The pulse shape block seems fairly inflexible WRT sample rate, and is
> using integers - as if it were a prototype for an FPGA implementation.
FWIW: The original pulse shaper implementation seems to be described in
section 7.3.1 of this paper:
https://brage.bibsys.no/xmlui/bitstream/handle/11250/2369767/350718_FULLTEXT01.pdf?sequence=1&isAllowed=y
See appendix A, Listing A.3 for the original C++ code.
This paper describes the current python pulse shaper implementation in
question on pages 26 and 27:
https://brage.bibsys.no/xmlui/bitstream/handle/11250/2405115/14772_FULLTEXT.pdf
Which all would have been very nice to have with the original posed
question.
-Andy
> Sverre,
> The whole block would be much faster in C++ instead of python.
> If it is just straight MSK that you need to generate, just use a repeat
> block followed by a frequency modulator block and then a filter block to
> limit the occupied bandwidth.
>
> I'm not that familiar with DSRC, but that's an odd pulse shaping for ASK
> (ASK usually has no pulse shaping). Also ASK is usually horrible for
> anything but the simplest remote functions. Is another aspect of the
> system that uses PSK or FSK?
>
> -Andy
>
> > You told me the bit rate, but not the sampling rate of the USRP sink,
> > but that would be very relevant here!
> >
> > Best regards,
> > Marcus
> >
> > [1]
> > https://github.com/sverrets/dsrc/blob/master/gr-dsrcmod/python/pulse_shaper_bs.py
> > On 03/17/2017 01:04 PM, Sverre Turter Sandvold wrote:
> >
> > > Hi, thank you for answering!
> > >
> > >
> > > I'm using a USRP N200 with a CBX daughterboard.
> > >
> > >
> > >
> > > I think the problem is that the block "pulse_shaper_bs" is not
> > > processing fast enough, and then the USRP Sink don't receive data
> > > fast enough and this causes the underrun.
> > >
> > >
> > >
> > > I want to send a packet with bits to a DSRC-unit. The main specs
> > > are:
> > >
> > > * Carrier Frequency: 5,8025 GHz
> > > * Modulation: Two level amplitude modulation
> > > * Data Coding: FM0
> > > * Bit rate: 500 kbit/s
> > >
> > > SverreTS
> > >
> > >
> > >
> > >
> > >
> > > ____________________________________________________________________
> > > Fra: Discuss-gnuradio <address@hidden> på vegne av Marcus Müller
> > > <address@hidden>
> > > Sendt: 16. mars 2017 19:38
> > > Til: address@hidden
> > > Emne: Re: [Discuss-gnuradio] Problem with underruns
> > >
> > > Hi SverreTS,
> > >
> > >
> > > can you be more specific? Why do you think it's the problem? Can you
> > > give us a rough idea of what your program does? At which rates are
> > > you working, with which hardware, and so on.
> > >
> > >
> > >
> > > Best regards,
> > >
> > > Marcus
> > >
> > >
> > >
> > > On 03/16/2017 01:52 PM, Sverre Turter Sandvold wrote:
> > >
> > > > Hi!
> > > >
> > > >
> > > > Need some help with this gnuradio-block called "pulse_shaper_bs":
> > > > https://github.com/sverrets/dsrc/blob/master/gr-dsrcmod/python/pulse_shaper_bs.py
> > > > used in this program: https://github.com/sverrets/dsrc . I got alot
> > > > of underruns and think the "pulse_shaper_bs" is causing the problem.
> > > >
> > > >
> > > >
> > > > Anyone want to help?
> > > >
> > > >
> > > > SverreTS
> > > >
> > > >
> > > >
>