Note: This project is being updated. software decimation and interpolation was a featured taken from gr-iio and it was removed by analogdevices, since it is indeed incorrect, because no filtering is applied.
The project is based in REDHAWK USRP_UHD and it contains the source and build script for the REDHAWK Device AD936X_LIBIIO device. This device is a FRONTEND Interfaces compliant device for the AD936x that requires the libiio and libad9361-iio libraries to be installed.
This project requires the libiio and libad9361 libraries, which must be installed in order to build and run this asset.
Follow Analog Devices' What is libiio? wiki page, in order to build libiio for Debian-flavoured GNU/Linux distributions.
For CentOs you're able to get the required dependencies with the command:
$ sudo yum install libxml2 libxml2-devel libaio-devel libusbx-devel avahi-devel
then you can fetch the source, build and install
$ git clone https://github.com/analogdevicesinc/libiio.git
$ cd libiio
$ cmake ./
$ make all
$ sudo make install
Just fetch the source, build and install
$ git clone https://github.com/analogdevicesinc/libad9361-iio.git
$ cd libad9361-iio
$ cmake ./
$ make all
$ sudo make install
You can import this project to your workspace using the REDHAWK Import Wizard,
build and install to $SDRROOT within the REDHAWK IDE. Otherwise run the build.sh
script found at the
top level directory. To install to $SDRROOT, run build.sh install
. Note: root
privileges (sudo
) may be required to install.
This work is protected by Copyright. Please refer to the Copyright File for updated copyright information.
AD936X LIBIIO REDHAWK DEVICE is licensed under GNU Lesser General Public License (LGPL).
- if during cmaking libiio, you got:
Check size of struct usb_functionfs_descs_head_v2 - failed
, use the following commands to fix it, being able to support usb backend.
$ wget https://raw.githubusercontent.com/torvalds/linux/master/include/uapi/linux/usb/functionfs.h
$ sudo mv functionfs.h /usr/include/linux/usb/functionfs.h
- if having a library linking error when executing the device, adding these lines to the
~/.bashrc
file might do the trick:
if [[ $LD_LIBRARY_PATH != *"/usr/lib64"* ]]; then
LD_LIBRARY_PATH=/usr/lib64:${LD_LIBRARY_PATH}
fi
if [[ $LD_LIBRARY_PATH != *"/usr/local/lib"* ]]; then
LD_LIBRARY_PATH=/usr/local/lib:${LD_LIBRARY_PATH}
fi
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}