Re: Multi USRP on Single Computer


#1

Thanks for the reply. I’m pretty new to GNU radio so I’m still not sure
exactly what I need to do (I don’t know about the whole “which”
constructor thing). All I’ve been able to do so far is run the examples
and modify them as needed (minor changes). I don’t need to know which
board is which (sending and receiving), just as long as 1 is sending and
1 is receiving. I’ve looked at the multi_usrp_rx_cfile.py example, and
I understand that this example is for synch-ing 2 boards to both
receive, but I don’t know if I can use some of the same code for my
purpose. The code that looked interesting to me is:

build the graph

    self.multi=usrp_multi.multi_source_align( fg=self, 

master_serialno=options.master_serialno, decim=options.decim,
nchan=options.nchan )
self.um=self.multi.get_master_usrp()
self.us=self.multi.get_slave_usrp()

    dst_m=gr.file_sink (gr.sizeof_gr_complex, options.output_file_m)
    dst_s=gr.file_sink (gr.sizeof_gr_complex, options.output_file_s)
    if options.nsamples is None:
        self.connect((self.multi.get_master_source_c(),1),dst_m)
        self.connect((self.multi.get_slave_source_c(),1),dst_s)
    else:
        head_m = gr.head(gr.sizeof_gr_complex, 

int(options.nsamples))
head_s = gr.head(gr.sizeof_gr_complex,
int(options.nsamples))
self.connect((self.multi.get_master_source_c(),1),head_m,dst_m)
self.connect((self.multi.get_slave_source_c(),1),head_s,dst_s)

Can I use this portion of code and just make the small changes to make 1
a source instead of a sink? Also, the first line about the
source_align… is that for the synchronizing of the 2 boards (which I
wouldn’t need)?

Thanks for the help,
Nick

----- Original Message -----
From: Eric B. removed_email_address@domain.invalid
Date: Friday, March 2, 2007 12:27 pm
Subject: Re: [Discuss-gnuradio] Multi USRP on Single Computer


#2

On Sun, Mar 04, 2007 at 05:51:34PM -0500, removed_email_address@domain.invalid wrote:

Thanks for the reply. I’m pretty new to GNU radio so I’m still not
sure exactly what I need to do (I don’t know about the whole “which”
constructor thing). All I’ve been able to do so far is run the
examples and modify them as needed (minor changes). I don’t need to
know which board is which (sending and receiving), just as long as 1
is sending and 1 is receiving. I’ve looked at the
multi_usrp_rx_cfile.py example, and I understand that this example
is for synch-ing 2 boards to both receive, but I don’t know if I can
use some of the same code for my purpose. The code that looked
interesting to me is:

        self.connect((self.multi.get_slave_source_c(),1),dst_s)
    else:
        head_m = gr.head(gr.sizeof_gr_complex, int(options.nsamples))
        head_s = gr.head(gr.sizeof_gr_complex, int(options.nsamples))
        self.connect((self.multi.get_master_source_c(),1),head_m,dst_m)
        self.connect((self.multi.get_slave_source_c(),1),head_s,dst_s)

This code does nothing like what I think you need.

My suggestion is that you figure out how you would solve your problem
using two machines. Then run that code on a single machine.

It seems like you may want to spend some time getting a better idea of
how some of the more typical examples work before diving into the deep
end.

Eric