UHD Announcement - March 23rd 2012

Hello list,

– Tagged a 3.4.0 release

A 3.4.0 release has been tagged. Its been a long time coming since the
last release. 3.4.0 contains the new features which have appeared on the
master branch over the last few months. To name a few:

  • higher sample rates/sc8 wire format
  • self-calibration utilities for SBX/WBX
  • TX/RX stream API is now official

The relevant downloads page have moved, you can find a link to
installers for this release here:


– Linux repository hosting

There is now a repository for fedora and ubuntu so you can apt-get or
yum install uhd:

We have installers uploaded for Ubuntu (10.04-11.10) and Fedora (15-16).
Let me know if you have an issues adding the repo or installing.

– New feature - alternative stream destination

With USRP2/N-Series, you can tell the USRP to stream RX samples to an
arbitrary location on the network. This should be useful to individuals
who desire distributed processing. Of course its not hard to generate
more data than a singe PC can handle :slight_smile:

Using this feature will require the master branch, latest images for the
master branch, and that the USRP be programmed with a gateway and subnet

Relevant instructions here:
This feature can also be used in gnuradio by setting the stream args
(mentioned in the link above) in the usrp source constructor.

Link to master branch images here:

– New feature - timed commands

Using this feature, you can schedule precisely, to the clock cycle, when
settings are activated on the device. Example, tuning a receive chain or
setting a gain at a specific time. This should be exiting for frequency
hoping applications and applications that require phase coherence (see
SBX notes below).

To use this feature, simply wrap the set/clear_command_time calls around
existing settings code you wish to control in a timed fashion. There is
a caveat; some API calls, that should be settings-only, involve
readbacks from the device. In these situations, timed commands cannot
work (which is why this is a next branch feature). We will be working to
ensure that any code worth timing isn’t internally blocking on a
readback from the device.

I wrote some documentation on how to use this feature to phase-align a
group of SBXs. Since the docs are not uploaded yet, I will leave this
snippet here: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Align LOs in the front-end (S - Pastebin.com The same mechanism and API
calls are also available through gr-uhd and can be called within python.

The additional benefit to this feature is that commands on
USRP2/N-Series are no longer interpreted by the soft CPU, but directly
by an FPGA state machine. This means that RTT for control packets (aka
settings) has gone way down, on the order of 100us over gigE.

So far the timed commands feature is only implemented on N-series. E100
will be coming soon. To use this feature, you will need to checkout the
uhd’s next branch and burn next branch images on your device.

Link to next branch images here: