Forum: GNU Radio 4x RX chains on USRP1 with DBSRX2

Posted by John Wilson (Guest)
on 2013-02-12 19:11
(Received via mailing list)
Hi,

I'm wondering whether it's possible/how to use a USRP1 with 2x DBSRX 
boards
to generate 4 separate streams via the 4rx usrp1 firmware. The required
channels will be within the front end bandwidth of the DBSRX2.

At the moment I'm using a subdev spec of 'A:0 A:0 B:0 B:0' which I 
assume
runs the signal from subdev A through RX chains 0 and 1, and subdev B
through 2 and 3. Is this correct?

I am planning to set each daughter board to a frequency between its two
frequencies of interest, then I'd like the DDCs to downconvert the data
from the ADC independently to sit the two frequencies of interest in the
centre of their respective baseband channels out of the USB bus. So can 
I
change the DDC frequencies independently of the centre frequency in the
daughterboard? Also what is the resolution of the DDS in the DDC, i.e. 
can
I tune each one independently in ~1Hz steps?

Sorry if this has been asked before, I've been searching Google and the
email lists all day and have not yet found an answer!

Thanks,

John
Posted by Josh Blum (Guest)
on 2013-02-12 20:34
(Received via mailing list)
On 02/12/2013 12:10 PM, John Wilson wrote:
> Hi,
>
> I'm wondering whether it's possible/how to use a USRP1 with 2x DBSRX boards
> to generate 4 separate streams via the 4rx usrp1 firmware. The required
> channels will be within the front end bandwidth of the DBSRX2.
>
> At the moment I'm using a subdev spec of 'A:0 A:0 B:0 B:0' which I assume
> runs the signal from subdev A through RX chains 0 and 1, and subdev B
> through 2 and 3. Is this correct?

That seems correct.

>
> I am planning to set each daughter board to a frequency between its two
> frequencies of interest, then I'd like the DDCs to downconvert the data
> from the ADC independently to sit the two frequencies of interest in the
> centre of their respective baseband channels out of the USB bus. So can I
> change the DDC frequencies independently of the centre frequency in the

You will want a tune_request object where the rf_freq is set to the
desired center frequency of the DBSRX (something in between that each
CORDIC can shift away from). And set the rf freq policy to manual.

There are some examples of making the tune request in the grc block for
usrp source properties dialog box.

> daughterboard? Also what is the resolution of the DDS in the DDC, i.e. can
> I tune each one independently in ~1Hz steps?
>

The CORDIC resolution is pretty much 64e6/(1<<32), so sub Hz.


-josh
Posted by Marcus D. Leech (Guest)
on 2013-02-12 23:39
(Received via mailing list)
>> through 2 and 3. Is this correct?
>
>
Also, will he need to use the 4rx FPGA image, or will UHD automagically
use the right image?



--
Marcus Leech
Principal Investigator
Shirleys Bay Radio Astronomy Consortium
http://www.sbrac.org
Posted by Josh Blum (Guest)
on 2013-02-13 03:24
(Received via mailing list)
On 02/12/2013 04:03 PM, Marcus D. Leech wrote:
>>> assume
>> You will want a tune_request object where the rf_freq is set to the
>> The CORDIC resolution is pretty much 64e6/(1<<32), so sub Hz.
>>
>>
>> -josh
>>
> Also, will he need to use the 4rx FPGA image, or will UHD automagically
> use the right image?
>
>

Its an args option, exact example here:
http://files.ettus.com/uhd_docs/manual/html/usrp1....

-josh
Posted by John Wilson (Guest)
on 2013-02-14 11:54
(Received via mailing list)
Hi guys,

Another quick (couple of) question(s);
 - The DBSRX2 has a programmable channel filter 1-60 MHz. Is the 
firmware
clever enough to know to increase this bandwidth when I'm reading two
separate frequencies, or is there a chance that it will ruin my day by
centering a too-narrow filter around what I set as rf_freq?
 - Does GNU radio provide an interface to manually change the 
daughterboard
channel filter?

Cheers,

John
Posted by unknown (Guest)
on 2013-02-14 11:57
(Received via mailing list)
On 13 Feb 2013 12:51, John Wilson wrote:

> Hi guys,
>
> Another
quick (couple of) question(s);
> - The DBSRX2 has a programmable
channel filter 1-60 MHz. Is the firmware clever enough to know to
increase this bandwidth when I'm reading two separate frequencies, or is
there a chance that it will ruin my day by centering a too-narrow filter
around what I set as rf_freq?
> - Does GNU radio provide an interface to
manually change the daughterboard channel filter?
>
> Cheers,
>
>
John

In GRC, if you use the "bandwidth" parameter when creating the
source, it will set the closest settable bandwidth, if the card has
settable bandwidth.

The DBSRX2 has settable bandwidth, so you should
set it manually to something appropriate based on your channel spacing.
Posted by John Wilson (Guest)
on 2013-02-14 14:55
(Received via mailing list)
Cool thanks, I guess that's exposed in the Python scripts by
usrp_source.set_bandwidth then?

John
Posted by unknown (Guest)
on 2013-02-14 14:57
(Received via mailing list)
Yes.

I often find that it's useful to put together a flow-graph in
GRC to get the parameter settings where I want them, then inspect the
generated python to get some clue...

On 13 Feb 2013 15:52, John Wilson
wrote:

> Cool thanks, I guess that's exposed in the Python scripts by
usrp_source.set_bandwidth then?
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.