I pushed an update of the libusb-1.0 support patch to a public github
git clone git://github.com/ttsou/gnuradio-libusb-1.0.git
Libusb-1.0 is enabled with,
The prior version of libusb provided a portable user-level library that
worked well for USB initialization and configuration, but the
calls proved incapable of supporting higher USRP data rates. To get
this, gnuradio requires some novel approaches to combine libusb with OS
specific transfer methods. libusb-1.0 introduces an asynchronous I/O
interface, which provides an alternative approach to the current
The libusb-1.0 API is incompatible with prior libusb-0.12 interfaces.
are quite a few similarities, however, that do exist. Because libusb-1.0
fairly new, and current availability is limited to Linux and Darwin,
libusb-0.12 support is necessary for the indefinite future. Eric asked
figure out how to cleanly support libusb-0.12 and libusb-1.0. This is
main addition of this update.
The installed interfaces are virtually unchanged. An extra argument
for libusb-1.0 defaults to null and is ignored in non-libusb1 builds, so
existing packages that build against previous low-level code are
This change only affects usrp_prims. Also, some version dependent
are generated out of the configure scripts. The code generation isn’t
at this moment causing a number of Makefile warnings.
With this branch on Fedora 11, I get 32Mb/s on all of my machines using
test_usrp_standard_rx or tx. I still need to find some time and put
on it to compare against the native Linux USB devio implementation. That
unlikely to happen within the next few weeks though.
Information on the original patch can be found in the gnuradio-patch
Comments welcome. Thanks.