GNU Radio block for interfacing with various radio hardware
Go to file
Dimitri Stolnikov e5f7b28093 bladerf: add support for nuand LLC bladeRF (WIP)
This is based on the original work (https://github.com/Nuand/gr-osmosdr)
done by folks at nuand LLC for the gr3.6 branch of gr-osmosdr.

The following modifications have been done in this commit:

* port to gr-osmosdr master codebase (gr3.7)
* moved shared properties to bladerf_common
* added & verified IF filter bandwidth setters
* set LMS6002D registers with values taken from FAQ 5.27
* print device information (serial/versions) on startup
* added fpga= and fw= device arguments to program MCU/FPGA
* added bladerf=# dev. arg. to select a specific bladeRF
* grc gain field controls RF path VGA for RX/TX
* grc BB gain field controls BB path VGA for RX/TX

Usage example:

osmocom_fft -a "bladerf,fpga=/tmp/hostedx115.rbf"

The following RX named gain stages are available:

LNA: 0 to 6 dB, in 3dB steps
VGA1: 5 to 30 dB, in 1dB steps; nonlinear mapping done inside the lib
VGA2: 0 to 60 dB, in 3dB steps; not recommended to be used above 30dB

The following TX named gain stages are available:

VGA1: -35 to -4 dB, in 1dB steps, BB side
VGA2: 0 to 25 dB, in 1dB steps, RF side

Thanks a lot to the team of nuand LLC for this major contribution.
2013-07-21 11:59:22 +02:00
apps apps: allow float frequency correction values 2013-06-09 23:37:47 +02:00
cmake bladerf: add support for nuand LLC bladeRF (WIP) 2013-07-21 11:59:22 +02:00
docs introduce osmosdr namespace, remove _c suffix 2013-05-30 16:14:22 +02:00
grc bladerf: add support for nuand LLC bladeRF (WIP) 2013-07-21 11:59:22 +02:00
include/osmosdr uhd: implement dc correction 2013-06-09 20:19:17 +02:00
lib bladerf: add support for nuand LLC bladeRF (WIP) 2013-07-21 11:59:22 +02:00
python strip whitespace 2012-04-29 13:15:02 +02:00
swig introduce osmosdr namespace, remove _c suffix 2013-05-30 16:14:22 +02:00
AUTHORS bladerf: add support for nuand LLC bladeRF (WIP) 2013-07-21 11:59:22 +02:00
CMakeLists.txt bladerf: add support for nuand LLC bladeRF (WIP) 2013-07-21 11:59:22 +02:00
COPYING update license file to GPL v3 as in source 2012-04-21 14:07:25 +02:00
README bladerf: add support for nuand LLC bladeRF (WIP) 2013-07-21 11:59:22 +02:00
gnuradio-osmosdr.pc.in cmake: update url to documentation page 2013-06-08 17:39:09 +02:00

README

While primarily being developed for the OsmoSDR hardware, this block
as well supports:

 * FUNcube Dongle through libgnuradio-fcd
 * FUNcube Dongle Pro+ through gr-fcdproplus
 * sysmocom OsmoSDR Devices through libosmosdr
 * Nuand LLC bladeRF through libbladeRF library
 * Great Scott Gadgets HackRF through libhackrf
 * Ettus USRP Devices through Ettus UHD library
 * RTL2832U based DVB-T dongles through librtlsdr
 * RTL-TCP spectrum server (see librtlsdr project)
 * MSi2500 based DVB-T dongles through libmirisdr
 * gnuradio .cfile input through libgnuradio-blocks

By using the OsmoSDR block you can take advantage of a common software api in
your application(s) independent of the underlying radio hardware.

For installation and usage guidelines please read the documentation available
at http://sdr.osmocom.org/trac/wiki/GrOsmoSDR

For the impatient :) a short excerpt:

The Gnu Radio block requires a recent gnuradio (>= v3.7) to be installed.

Before building the block you have to make sure that all the dependencies
(see list of supported devices above) you are intend to work with are
properly installed. The build system of gr-osmosdr will recognize them and
enable specific source/sink components thereafter.

Please note: prior pulling a new version from git and compiling it,
please do a "make uninstall" first to properly remove the previous version.

Building with cmake:

git clone git://git.osmocom.org/gr-osmosdr
cd gr-osmosdr/
mkdir build
cd build/
cmake ../
make
sudo make install
sudo ldconfig

NOTE: The osmocom blocks will appear under 'Sources' and 'Sinks' categories
in GRC menu.