One USRP to do two different works


#1

Hi,

I want to use one USRP to do two different works on the two sides, which
are
A side tunneling with another USRP and B side sensing the channel
condition.
In my comprehension, there are Tx and Rx including in tunneling and Rx
in
sensing.

In addition to set up the subdev as subdev[0][0] for tunneling and
subdev[1][0] for sensing, is there anything that I should pay attention?
Such as setting up the multiplexers or anything else?

I’m facing an embarrassing situation now, I always got an error message
which as below:

usrp_open_interface:usb_claim_interface: failed interface 2

could not claim interface 2: Device or resource busy

usrp_basic_rx: can’t open rx interface

RuntimeError: can’t open usrp1

I guess it seems the USRP gets stuck on the fusb_nblcok and
fusb_block_size.

I’m using 2.6.23 fc7 and my gnuradio version is trunk-version:10793.

Is there anyone doing the same work or any good suggestion?

Thanks,
Joey.


#2

On Fri, May 08, 2009 at 03:05:40AM +0800, 曾繁勛 wrote:

Hi,

I want to use one USRP to do two different works on the two sides, which are
A side tunneling with another USRP and B side sensing the channel condition.
In my comprehension, there are Tx and Rx including in tunneling and Rx in
sensing.

In addition to set up the subdev as subdev[0][0] for tunneling and
subdev[1][0] for sensing, is there anything that I should pay attention?
Such as setting up the multiplexers or anything else?

First off, the two sides of the USRP are not completely independent.
It’s important to realize that if you’re using them both at the same
time, that the data to and from the USRP is interleaved. That is, the
two Tx streams interleaved, and the two Rx streams are interleaved.
Thus both sides need to be transmitting at the same time, and both
sides need to be receiving at the same time.

A good understanding of the diagrams in the USRP FAQ will help
understand these constraints.

RuntimeError: can’t open usrp1

I guess it seems the USRP gets stuck on the fusb_nblcok and fusb_block_size.

Unlikely. More likely you’ve attempting to open two usrp.sources
and/or two usrp.sinks at the same time.

You can use both sides simultaneously (using two DDC channels), but
there’s still only a single usrp.source open.

There are examples in the examples directory that do these kind of
things.

Eric