Skip to content

REDHAWK FrontEnd Interface for the transceivers AD9361, AD9364, AD9363

License

Notifications You must be signed in to change notification settings

rodrigo455/AD936X_LIBIIO

Repository files navigation

AD936X LIBIIO REDHAWK DEVICE

Description

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.

Installation Instructions

This project requires the libiio and libad9361 libraries, which must be installed in order to build and run this asset.

libiio

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

libad9361-iio

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

AD936X_LIBIIO

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.

Copyrights

This work is protected by Copyright. Please refer to the Copyright File for updated copyright information.

License

AD936X LIBIIO REDHAWK DEVICE is licensed under GNU Lesser General Public License (LGPL).

Troubleshooting

  • 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}