world leader in high performance signal processing
This version is outdated by a newer approved version.DiffThis version (01 Nov 2012 18:38) was approved by larsc.The Previously approved version (17 Oct 2012 14:56) is available.Diff

IIO Oscilloscope

About

The ADI IIO Oscilloscope is a example application, which demonstrates how to interface to the AD-FMCOMMS1 board form within a Linux system. The application supports plotting of the captured data in three different modes (time domain, frequency domain and constalation). The application also allows to view and modify several settings of the AD-FMCOMMS1 board's RX and TX paths.

Download

You can either download the IIO Oscilloscope here from the wiki or checkout the latest version from the git repository.

IIO Oscilloscope download

Git: https://github.com/analogdevicesinc/iio-oscilloscope / git://github.com/analogdevicesinc/iio-oscilloscope.git

Installation

The IIO Oscilloscope uses the GTK+ and gtkdatabox libraries. Before the IIO Oscilloscope can be build the and packages need to be installed.

This specifies any shell prompt running on the target - Install IIO Oscilloscope build dependencies

> sudo apt-get install libgtkdatabox-0.9.1-1-dev libgtk2.0-dev

To build and install the IIO Oscilloscope you need to unpack the tar archive and run `make` and `make install` in the osc folder.

This specifies any shell prompt running on the host or target - Download and install the iio scope

> wget http://wiki.analog.com/_media/resources/tools-software/linux-software/osc.tar.bz2
> tar -xjf osc.tar.bz2
> cd osc
> make
> sudo make install

User guide

Launching the application

To start the IIO Oscilloscope open up the start menu of your system search for “IIO Oscilloscope”. E.g. if you are using a Ubuntu Linux system move your mouse cursor to the left side of your screen and “Dash home” button and type “IIO Oscilloscope” into the search box.

Select the IIO Oscilloscope from the launch menu

Capture view

IIO Oscilloscope capture view

  • Active channels: Allows to select the to be displayed channels.
  • Plot type
    • Time domain:: Plot the signal in the time domain. Displays the raw samples.
    • Frequency domain: Plot the signal in the frequency domain. Performs a FFT on the signal and displays it.
    • Constalation: Plot the signal as a constalation plot. The I-channel will be plotted on the X-axis and the Q-channel on the Y-axis.
    • Sample count: Selects the number of samples for time domain and constalation plotting
    • FFT size: Selects the size of the FFT for frequency domain plotting
  • Options
    • Show grid: Shows or hides the grid in the plot window
    • Auto scale: When enabled the visible area will automatically be re-scaled to fit the entire plot

Clicking on the “Capture” button will start sampling with the currently selected settings. To stop sampling click the “Capture” button again. Setting changes will only be applied when a new capture session is started (With the exception of the “Show grid” option). It is not possible to switch between plotting modes or change the number of samples or FFT size while a capture session is active.

RX settings view

IIO Oscilloscope RX settings view

  • ADC settings
    • Sampling frequency: Sets the sampling frequency of the ADC.
    • Offset calibration: Allows to calibrate each channels offset
    • Scale calibration: Allows to calibrate each channels full-scale value
  • Gain amplifier settings: Allows to interdependently set gain on the I and Q channels. The gain can be configured from 4.5 dB to 20.5 dB
  • LO settings: Configures the RX PLL
    • Frequency: Sets the receive base frequency.
    • Spacing: Selects the frequency spacing.

Clicking the “Save” button will write changes which have been made to the RX settings to the hardware.

Upon saving values will be rounded to the nearest value supported by the hardware. After the “Save” button has been clicked these values will be displayed.

TX settings view

IIO Oscilloscope TX settings view

  • DDS settings
    • Enable: Enables or disables the two tone generator
      • Frequency: Allows to select the frequency for each of the two DDS tones.
      • Scale: Allows to select the scale for each of the two DDS tones. The output signal will be scaled according to this value.
  • DAC settings
    • Offset calibration: Allows to calibrate each channels offset
    • Scale calibration: Allows to calibrate each channels full-scale value
    • Phase calibration: Allows to calibrate each channels phase
  • LO settings: Configures the TX PLL
    • Frequency: Sets the transmit base frequency. The DDS signal will be modulated on top of this frequency. The valid range is from 400MHz to 4GHz.
    • Spacing: Selects the frequency spacing.

Clicking the “Save” button will write changes which have been made to the TX settings to the hardware.

Upon saving values will be rounded to the nearest value supported by the hardware. After the “Save” button has been clicked these values will be displayed.

Source code

Files

Function File
Main application osc.c
IIO device access iio_utils.c
IIO device access iio_utils.h
IIO GTK+ widgets iio_widget.c
IIO GTK+ widgets iio_widget.h

More information