UHD with XCVR?

Hi!

Today I patched a USRP2, Rev 4.0 with the UHD_003.002.000-e03f7c7
images in order to use it with MatLab AND GNU Radio’s GRC.

  • This is the log taken from a Linux 10.4 LTS system, attached USRP2.
    Previously this setup worked very well. Now that I updated… it’s
    broken.
    The IP setup had been tested with both static IP, and without.

% sudo uhd_find_devices
[sudo] password for marius:
linux; GNU C++ version 4.4.3; Boost_104000; UHD_003.002.000-e03f7c7


– UHD Device 0

Device Address:
type: usrp2
addr: 192.168.10.2
name:
serial: XXXX

% sudo uhd_usrp_probe
linux; GNU C++ version 4.4.3; Boost_104000; UHD_003.002.000-e03f7c7

– Opening a USRP2/N-Series device…
– Current recv frame size: 1472 bytes
– Current send frame size: 1472 bytes

UHD Warning:
The recv buffer could not be resized sufficiently.
Target sock buff size: 50000000 bytes.
Actual sock buff size: 1000000 bytes.
See the transport application notes on buffer resizing.
Please run: sudo sysctl -w net.core.rmem_max=50000000

UHD Warning:
The recv buffer could not be resized sufficiently.
Target sock buff size: 50000000 bytes.
Actual sock buff size: 1000000 bytes.
See the transport application notes on buffer resizing.
Please run: sudo sysctl -w net.core.rmem_max=50000000

UHD Error:
The daughterboard manager encountered a recoverable error in init
RuntimeError: no control response

UHD Error:
An unexpected exception was caught in a task loop.
The task loop will now exit, things may not work.
RuntimeError: no control response
terminate called after throwing an instance of ‘uhd::runtime_error’
what(): RuntimeError: no control response
[1] 28024 abort sudo uhd_usrp_probe

The LEDs D and F work. So the firmware and the fpga are loaded.

I used the latest available revision
(http://www.ettus.com/downloads/uhd_releases/master_images/) from the
master branch.
Since the update I cannot probe successfully with either usrp_probe or
with uhd_usrp_probe. Even if I change the kernel parameter according
to the UHD suggestion I don’t get a working setup.

I’m using GNU Radio v3.4.0-101-g7e2b45b8 from the Git repo - built a
week ago or so. Since there’s just one Firmware image for my USRP2,
and one FPGA image, and I tried n times… I guess there’s something
else that’s wrong.
I’d like to ask for a compatibility matrix: which UHD revisions work
with GNU Radio? For now it’s try and error.

Best,
Marius

I’m using GNU Radio v3.4.0-101-g7e2b45b8 from the Git repo - built a
week ago or so. Since there’s just one Firmware image for my USRP2,
and one FPGA image, and I tried n times… I guess there’s something
else that’s wrong.
I’d like to ask for a compatibility matrix: which UHD revisions work
with GNU Radio? For now it’s try and error.

All the uhd releases work with the gnuradio gr-uhd component.

There was some shuffling around with the uhd master branch for the 3.2
releases. If you are running off the master, can you rebuild from the
latest master (fc349d30507620baca935e75e68a9554b40d427c) and load the
latest images (firmware and FPGA)
http://www.ettus.com/downloads/uhd_releases/master_images/ I think that
will solve your problem.

-Josh

Hi Josh,

There was some shuffling around with the uhd master branch for the 3.2
releases. If you are running off the master, can you rebuild from the
latest master (fc349d30507620baca935e75e68a9554b40d427c) and load the
latest images (firmware and FPGA)
http://www.ettus.com/downloads/uhd_releases/master_images/ I think that
will solve your problem.

Loading the released binary images did not solve my problem. I tried
them all.
The problem persists in the same way I described it.

Rebuilding the usrp2 firmware is with an issue too:

make[5]: Entering directory
/home/marius/gnuradio_build/gnuradio/usrp/host/swig' make[5]: *** No rule to make target /usr/include/fpga_regs_common.h’,
needed by usrp_prims.py'. Stop. make[5]: Leaving directory /home/marius/gnuradio_build/gnuradio/usrp/host/swig’
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory
/home/marius/gnuradio_build/gnuradio/usrp/host' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory /home/marius/gnuradio_build/gnuradio/usrp’
make[2]: *** [all] Error 2
make[2]: Leaving directory /home/marius/gnuradio_build/gnuradio/usrp' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory /home/marius/gnuradio_build/gnuradio’
make: *** [all] Error 2

I’m not sure right now how to solve this…

Thanks for the points so far.

Best,
Marius

On 07/31/2011 01:32 PM, Marius wrote:

The problem persists in the same way I described it.

What problem persists, can you be more specific? That task loop error
code never made it into the release and is removed from the master. If
you are seeing it then you are running old code. Perhaps you have the
problem of multiple installs?

This is for gnuradio, but also relevant to uhd
http://gnuradio.org/redmine/projects/gnuradio/wiki/CannedResponses#The-problem-of-multiple-installs

Rebuilding the usrp2 firmware is with an issue too:

This is for old usrp driver host code. Im not sure why the error, but
you dont have to build the component.

Problem solved. UHD has better performance!! :slight_smile:

However I still face issues with UHD vs. raw-ethernet based useage. If
I disconnect the IP based connection with network-manager I cannot get
the old kind of usrp2 sources/sinks to work. For now - we have some
USRP2s here - I switch the SD cards. Is this really necessary?

Best,
Marius

On 08/06/2011 04:11 PM, Marius wrote:

Network manager will bring the interface down in that situation, so it’s
not available for
transmitting anything, including “raw ethernet”.

UHD is definitely the way to go to future-proof your software.


Marcus L.
Principal Investigator
Shirleys Bay Radio Astronomy Consortium