Hi Marcus,
I was trying as per your suggestion over the weekend but I have not been
completely successful.

On Thu, Oct 22, 2015 at 12:48 AM, Marcus Müller <marcus.muel...@ettus.com>
wrote:

> Hi Abhinav,
>
> First off: since you want to have a sampling rate of 2kHz, it really
> doesn't make sense to use the minimal N210 sampling rate 195312.5 Hz. Use
> something that is a multiple of 2kHz, for example 200kHz or 1MHz.
>

Okay, I have set the sampling rate as 200KHz for the USRP blocks.

Use a "low pass filter block" with the resulting decimation, the sampling
> rate set to the rate coming into the filter, and the cutoff frequency let's
> say to (15.0/16.0 * 2e3) which allows for a transition width of
> (1.0/8.0*2e3).
>
> I would really like to understand where are these coefficients coming
from? I have set them to the value you suggested and I could not get it to
work. Is the 1/8.0 because i am using 8 samples per symbol ?

The placement of the decimation depends a bit on your actual signal of
> interest; generally, the earlier, the better, since that simply eliminates
> a majority of noise power.
>
I have kept the LPF with above coefficients right after the  USRP block and
before the FLL band edge filter.


> Make sure, however, that the passband width of the filter is "wide" enough
> so that the FLL can still work.
>
> The only parameter to LPF wrt BW is 200kHz (which i assume is passband
width you referred to), else the transition width is descried as above. Not
sure what limits does FLL work with well to say 200 KHz is fine.

I am following the code from the generic_mod_demod.py class in
gr-digital/python/digital/ folder, and I see the RRC filter doesn't use a
sample_rate in RRC filter and instead use a pfb_arbitrary_resampler with
just the "samples_per_symbol" as input.
So I am not sure where the information of sample_rate=2kHz is used.

I am not clear what the FIR Interpolator Taps should be for oversampling
from 2kHz to 200 KHz and I am using RRC ones. But the resultant waveform is
changed. Please see the grc attached, I would be grateful to you if I could
get clarity on it.

Thanks,
Abhinav

> Best regards,
> Marcus
>
>
> On 21.10.2015 22:45, abhinav narain wrote:
>
> Hi Marcus,
> I see your point, and I can add intepolation factor as 196K/2K =98 in my
> transmitter.
>
> Can you please tell me about what should I do in my receiver now that I
> have to do decimation.
> I have the exact grc file attached.
> I am doing :
> USRP Source-> FLL Band Edge-> Polyphase Clock Sync with RRC RX filter [{
> firdes.root_raised_cosine(ntaps,samp_rate,sps, rolloff, int(11*sps*ntaps)) }
> corresponding to tx filter of {firdes.root_raised_cosine(ntaps, samp_rate,
> sps, rolloff, int(11*sps*ntaps))} ]
> -> Costas Loop ->   MultiplyConst->Constellation Receiver ...
>
> I do have to place a decimation filter I suppose with factor 196/2 (= same
> as in interpolator filter), but the polyphase Sync block doesn't have a
> Decimation factor in it.
>
> In case I place Decimation block before FLL BandEdge block, I need to have
> tap coefficient and I am not sure what should they be ?
> I don't know how i can calculate square root of RRC taps and place those
> taps in both - Decimation block and  Polyphase block.
>
> Please suggest.
>
> Thanks,
> Abhinav
>
>
>
> On Wed, Oct 21, 2015 at 11:51 AM, Marcus Müller <marcus.muel...@ettus.com>
> wrote:
>
>> Hi Abhinav,
>>
>> I think most of your questions have been answered in my reply to your
>> reply to Sylvain's mail; basically, yes, you need to use a sampling rate
>> >=196kHz, but no one is stopping you from putting any signal into that
>> sampling rate that has a smaller bandwidth. See my comments on oversampling.
>>
>> Best regards,
>> Marcus
>>
>> On 10/21/2015 08:37 PM, abhinav narain wrote:
>>
>>
>> Hi Marcus,
>>
>> On Wed, Oct 21, 2015 at 3:18 AM, Marcus Müller <
>> <marcus.muel...@ettus.com>marcus.muel...@ettus.com> wrote:
>>
>>> Hi Abhinav,
>>>
>>> which USRP are you using?
>>>
>> USRP N210
>>
>>
>>> I'm pretty sure none of our devices supports a 2kS/s sampling rate --
>>> it's just far too low to get directly interpolated to a "usable" DAC/ADC
>>> rate. Especially those USRPs that can be equipped with RF frontends
>>> (daughterboards) that can operate at near-baseband (400kHz) shouldn't be
>>> able to work at such low rates. So: which daughterboard are you using?
>>>
>>> I see your point, I am using Basic TX/RX daughterboard.
>> I didn't notice the shell output but it makes sense now :
>>
>> Terminal output:
>>     The hardware does not support the requested TX sample rate:
>>     Target sample rate: 0.001000 MSps
>>     Actual sample rate: 0.195312 MSps
>> -- Tune Request: 0.400000 MHz
>> --   The RF LO does not support the requested frequency:
>> --     Requested LO Frequency: 0.400000 MHz
>> --     RF LO Result: 0.000000 MHz
>> --   Attempted to use the DSP to reach the requested frequency:
>> --     Desired DSP Frequency: 0.400000 MHz
>> --     DSP Result: 0.400000 MHz
>> --   Successfully tuned to 0.400000 MHz
>>
>>
>> Basically, the minimum sampling rate is 196 Ksamples/sec
>>
>> Hence, UHD should have told you that you can't use that sampling rate,
>>> and a higher sampling rate was automatically selected, inherently
>>> frequency-"stretching" the signal by the ratio of (actual rate/2kHz).
>>>
>>> You should heed Sylvain's advice. Just oversample your signal by using
>>> an interpolating FIR filter to something that the USRP can happily work
>>> with.
>>>
>>> So, here is what I am not clear about- I should use 196 KHz as sampling
>> rate ?
>> So, the minimum BW of my signal will 196/2 =98KHz, and that is the best I
>> can do with this equipment, right ?
>>
>>
>>
>>
>>
>>> Best regards,
>>> Marcus
>>>
>>> On 21.10.2015 08:49, abhinav narain wrote:
>>>
>>> Hi,
>>> I am transmitting using the flowgraph: vector src-> FIR interpolator
>>> (with RRC filter as below) -> MultiplyConst -> USRP Block
>>>
>>> FIR filter - firdes.root_raised_cosine(32, samp_rate, sps, 0.55,
>>> int(11*sps*32)), with
>>> center freq= 400kHz
>>> samp_rate= 1k
>>>
>>> I am listening using other USRP with
>>> center freq= 400kHz
>>> samp_rate= 2k
>>>
>>>
>>> You can see the spectrogram at the receiver. I want to do narrowband(1
>>> kHz) transmission hence I am keeping the sampling freq at transmitter at 1k.
>>>
>>> While I increase the signal amplitude(using MultiplyConst block with
>>> slider), I see there is more and more spillage of energy in the neighboring
>>> frequencies!
>>>
>>> Is there a way to remove that spillage from the transmitter and have a
>>> cleaner transmitter ?
>>> If not, how can I atleast mitigate it to the minimum ? is there
>>> something I can do with RRC filter parameter or any other way ?
>>>
>>> In the figure: 1 - when amplitude is large; 2 - when amplitude is turned
>>> down
>>>
>>> Thanks,
>>> Abhinav
>>>
>>>
>>> _______________________________________________
>>> 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
>>>
>>>
>>
>>
>
>

Attachment: clock_6_transmitter.grc
Description: application/gnuradio-grc

Attachment: clock_6_receiver.grc
Description: application/gnuradio-grc

_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to