newer up-to-date install documentation:
https://github.com/Nuand/bladeRF/wiki
modify for your needs as needed for your distro..
-- build libusb tools and libraries from Nuand --
* Clone the libusb support branch to your system
Code: Select all
git clone https://github.com/Nuand/bladeRF.git bladeRF -b dev-libusb_support
Code: Select all
sudo apt-get install libusb-1.0-0-dev libusb-1.0-0 build-essential cmake libncurses5-dev
Code: Select all
cd <git_base_dir>/hosts/
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=debug -DINSTALL_UDEV_RULES=ON -DCMAKE_INSTALL_PREFIX=/opt/bladeRF/ ../
make
sudo make install
sudo vi /etc/ld.so.conf.d/bladeRF.conf
Code: Select all
/opt/bladeRF/lib/
* Initial firmware loading & fpga loading procedure
Assuming you added /opt/bladeRF/bin to your path or system path. (not covered here, just google it.. )
See if you can detect your bladeRF:
Code: Select all
bladerf-cli -p
Code: Select all
Backend: libusb
Serial: <Not yet supported> | a serial number depending on FPGA version
USB Bus: 6
USB Address: 4
Code: Select all
bladerf-cli -f <firmware.img>
Code: Select all
bladerf-cli -l <fpga.rbf>
FX3 Image: http://nuand.com/fx3/latest.img
FPGA: http://nuand.com/fpga
The BladeRF at this point should be ready to go.. Now you just need something to talk to it.. Gnu Radio is a good candidate..
*** Building GNURADIO from GIT ***
* Use gnuradio-build to pull and check dependencies
Code: Select all
$ cd ~/sandbox
$ mkdir gnuradio-builds
$ cd gnuradio-builds
$ wget http://www.sbrac.org/files/build-gnuradio
$ chmod +x ./build-gnuradio.sh
$ ./build-gnuradio.sh -m prereqs gitfetch
* now compile up GNU Radio
Code: Select all
$ cd ~/sandobx/gnuradio-builds/gnuradio/
$ mkdir build
$ cd build
$ cmake -DCMAKE_INSTALL_PREFIX=/opt/gnuradio-3.7.1git ../ (based on git release, change as needed)
$ make
Code: Select all
$ sudo make install
With your favorite text editor.. ( vim

you will need sudo for this...
Code: Select all
sudo vi /etc/profile.d/gnuradio.sh
Code: Select all
#!/bin/bash
# add gnuradio and bladerf stuff to path
export PATH=$PATH:/opt/gnuradio-3.7.1git/bin:/opt/bladeRF/
# add gnuradio python libraries to python search path
if [ $PYTHONPATH ]; then
export PYTHONPATH=$PYTHONPATH:/opt/gnuradio-3.7.1git/lib/python2.7/dist-packages
else
export PYTHONPATH=/opt/gnuradio-3.7.1git/lib/python2.7/dist-packages
fi
note: If your on some non-debian based distro, you might need to replace "dist-packages" with "site-packages".
Again, with your favorite text editor, create a new file call /etc/ld.so.conf.d/gnuradio.conf
you will need sudo for this again.. (one line file)
Code: Select all
$ sudo vi /etc/ld.so.conf.d/gnuradio.conf
Code: Select all
/opt/gnuradio-3.7.1git/lib
* now update your library cache
Code: Select all
$ sudo ldconfig -v | grep gnuradio
Code: Select all
/opt/gnuradio-3.7.1git/lib:
libgnuradio-atsc-3.7.1git.so.0.0.0 -> libgnuradio-atsc.so
libgnuradio-trellis-3.7.1git.so.0.0.0 -> libgnuradio-trellis.so
libgnuradio-analog-3.7.1git.so.0.0.0 -> libgnuradio-analog.so
libgnuradio-pager-3.7.1git.so.0.0.0 -> libgnuradio-pager.so
libgnuradio-vocoder-3.7.1git.so.0.0.0 -> libgnuradio-vocoder.so
libgnuradio-video-sdl-3.7.1git.so.0.0.0 -> libgnuradio-video-sdl.so
libgnuradio-pmt-3.7.1git.so.0.0.0 -> libgnuradio-pmt.so
libgnuradio-noaa-3.7.1git.so.0.0.0 -> libgnuradio-noaa.so
libgnuradio-filter-3.7.1git.so.0.0.0 -> libgnuradio-filter.so
libgnuradio-digital-3.7.1git.so.0.0.0 -> libgnuradio-digital.so
libgnuradio-channels-3.7.1git.so.0.0.0 -> libgnuradio-channels.so
libgnuradio-qtgui-3.7.1git.so.0.0.0 -> libgnuradio-qtgui.so
libgnuradio-wxgui-3.7.1git.so.0.0.0 -> libgnuradio-wxgui.so
libgnuradio-fec-3.7.1git.so.0.0.0 -> libgnuradio-fec.so
libgnuradio-wavelet-3.7.1git.so.0.0.0 -> libgnuradio-wavelet.so
libgnuradio-fcd-3.7.1git.so.0.0.0 -> libgnuradio-fcd.so
libgnuradio-blocks-3.7.1git.so.0.0.0 -> libgnuradio-blocks.so
libgnuradio-fft-3.7.1git.so.0.0.0 -> libgnuradio-fft.so
libgnuradio-runtime-3.7.1git.so.0.0.0 -> libgnuradio-runtime.so
libgnuradio-audio-3.7.1git.so.0.0.0 -> libgnuradio-audio.so
you will now need to logout and log back in for the profile.d settings to take effect.
Once you have logged back in to your desktop, you should be able to run gnuradio-companion.
If you get a pop up about PYTHONPATH or LD_LIBRARY_PATH, check env to see if the python path or ldconfig returns the correct libraries.
--- build for gr-osmosdr ---
* Pull the git version of gr-osmosdr, build, install
Code: Select all
$ cd ~/sandbox
$ git clone git://git.osmocom.org/gr-osmosdr ./gr-osmosdr
$ mkdir ~/sandbox/gr-osmosdr/build
$ cd ~/sandbox/gr-osmosdr/build
$ cmake -DLIBBLADERF_PKG_INCLUDE_DIRS=/opt/bladeRF/include/ -DLIBBLADERF_PKG_LIBRARY_DIRS=/opt/bladeRF/lib/ -DCMAKE_INSTALL_PREFIX=/opt/gnuradio-3.7.1git ../ (change as needed)
$ make
$ sudo make install
simple test applications to verify device operation
shaun_tx wrote a nice little bash script to do some sample captures with bladerf-cli check it out: https://github.com/Nuand/bladeRF/issues ... t-22814848