Wiki

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
resources:tools-software:product-support-software:ad7689_mbed_iio_support [21 Jul 2022 13:31] Mahesh Phalkeresources:tools-software:product-support-software:ad7689_mbed_iio_support [27 Dec 2022 08:49] (current) – using templates for all sections Mahesh Phalke
Line 1: Line 1:
-===== AD7689 Mbed IIO Application=====+===== AD7689 IIO Application=====
  
-This page gives an overview of using the ARM Mbed platform supported firmware example with Analog Devices AD7689 Evaluation board(s) and SDP-K1 controller board. This example code leverages the ADI developed IIO (Industrial Input Output) ecosystem to evaluate the AD7689 family devices (AD7689, AD7682, AD7699 and AD7949 -one at a time) by providing a device debug and data capture support. +This page gives an overview of using the ARM platforms supported (default is Mbed) firmware example with Analog Devices AD7689 Evaluation board(s) and SDP-K1 controller board. This example code leverages the ADI developed IIO (Industrial Input Output) ecosystem to evaluate the AD7689 family devices (AD7689, AD7682, AD7699 and AD7949 -one at a time) by providing a device debug and data capture support.
-The overview of an entire system is shown below:+
  
-{{ :resources:tools-software:product-support-software:ad7689_iio_application_interfaces.png?600 |}} +{{section>resources/tools-software/product-support-software/iio_support_introduction#Introduction&showfooter=nofooter}}
- +
-IIO oscilloscope is used as a client application running on windows-os, which is ADI developed GUI for ADC data visualization and device debug. The physical interface used for communicating client application with firmware application (IIO device) is UART/VirtualCOM (*For now only SDP-K1 supports high speed VirtualCOM port @1Mbps or higher speed for faster data transmission). The firmware application communicates with IIO device (AD7689) using ADI No-OS drivers and platform drivers middle-ware software libraries. SDP-K1 is used as controller board, on which IIO firmware application runs and using above software libraries, the IIO firmware communicates with target device. The AD7689 eval board is used for development and testing of this application.+
  
 ---- ----
  
 ===Useful links=== ===Useful links===
 +{{section>resources/tools-software/product-support-software/useful_links#Useful Link&showfooter=nofooter}}
   * [[adi>en/products/ad7689.html|AD7689]]   * [[adi>en/products/ad7689.html|AD7689]]
   * [[adi>en/products/ad7682.html|AD7682]]   * [[adi>en/products/ad7682.html|AD7682]]
Line 16: Line 14:
   * [[adi>en/products/ad7949.html|AD7949]]   * [[adi>en/products/ad7949.html|AD7949]]
   * [[adi>en/products/ad7689.html#product-evaluationkit|AD7689 Evaluation Kit]]   * [[adi>en/products/ad7689.html#product-evaluationkit|AD7689 Evaluation Kit]]
-  * [[https://studio.keil.arm.com/|Keil Studio (Online Compiler)]] 
-  * [[https://os.mbed.com/platforms/SDP_K1/|SDP-K1 on Mbed]] 
  
 ---- ----
Line 28: Line 24:
   * EVAL-AD7689:\\ Use default   * EVAL-AD7689:\\ Use default
  
-AD7689 uses SPI communication for device parameter access and data capture. SDP-K1 is powered through USB connection from the computer. SDP-K1 acts as a Serial device when connected to PC, which creates a COM Port to connect to IIO Oscilloscope GUI running on windows-os. The COM port assigned to a device can be seen through the device manager for windows-based OS.+AD7689 uses SPI communication for device parameter access and data capture.
  
-{{ :resources:tools-software:product-support-software:ad7689_com_ports.png?400 |}} +{{section>resources/tools-software/product-support-software/hardware_connections_uart#UART Connections&showfooter=nofooter}}
- +
-SDP-K1 can support high speed VirtualCOM port USB interface, so by default VCOM is configured as default interface in the firmware. The interface can be set to UART by defining macro “USE_PHY_COM_PORT” in the app_config.h file. +
- +
-{{ :resources:tools-software:product-support-software:ad7689_vcom_port.png?600 |}}+
  
 ---- ----
Line 40: Line 32:
 ===== Software Downloads ===== ===== Software Downloads =====
  
-<WRAP round download> +{{section>resources/tools-software/product-support-software/iio_support_software_downloads#Software Downloads&showfooter=nofooter}}
-Latest firmware (Use below link): +
-  * [[https://os.mbed.com/teams/AnalogDevices/code/EVAL-AD7689/|AD7689 IIO Firmware]] +
-</WRAP> +
- +
-=== Quick Start to Use Mbed IIO Firmware === +
-If you have some familiarity with the Mbed platform, the following is a basic list of steps required to start running the code, see below for more detail: +
- +
-  * Connect the AD7689 EVAL-board to the SDP-K1 controller board as specified in hardware connections section. +
-  * Connect the SDP-K1 controller board to your computer over USB provided along with SDP-K1 board. +
-  * Import the code into Keil Studio from above firmware download link by using “File→Import Project…” option. Specify the web link of code in URL and check 'Make this the active project’ option. +
-{{ :resources:tools-software:product-support-software:ad7689_keil_project_import.jpg?600 |}} +
- +
-  * Make sure all dependent libraries are obtained correctly by IDE. +
-{{ :resources:tools-software:product-support-software:ad7689_keil_library_update.jpg?600 |}} +
- +
-  * Compile the code as shown below. After a successful compile a binary will be downloaded to your computer - store this into your computer. Drag and drop (or copy) this binary file to the SDP-K1 USB drive mounted in your computer file system (similar to C/D drives) to flash firmware into MCU. +
-{{ :resources:tools-software:product-support-software:ad7689_keil_compile.jpg?600 |}} +
- +
-==== Libiio: IIO Library ==== +
-This library provides an abstracted library interface to communicate IIO device and IIO client application (e.g. IIO Oscilloscope) without worrying about the low level hardware details. Download and install below [[wiki/LibIIO#libiio]] windows installer in your computer. +
-<WRAP round download> +
-Libiio installer for Windows (Use below link): +
-  * [[repo>libiio/releases|LibIIO Windows installer]] +
-</WRAP> +
- +
-==== IIO Oscilloscope (Client) ==== +
-This is a GUI (Graphical User Interface) based IIO client application for data visualization and device configuration/debugging. The data from IIO devices (e.g. ADCs/DACs) is transmitted over Serial/Ethernet/USB link to IIO Oscilloscope client through the abstracted layer of “libiio”.  +
-<WRAP round download> +
-Download and install below IIO Oscilloscope windows installer in your computer. +
-IIO Oscilloscope installer for Windows (Use below link): +
-  * [[repo>iio-oscilloscope/releases|IIO Oscilloscope windows installer (.exe)]] +
-</WRAP>+
  
 ---- ----
  
 ==== Evaluating AD7689 Using IIO Ecosystem ==== ==== Evaluating AD7689 Using IIO Ecosystem ====
-<note>Ensure that hardware connection has been made properly in between Controller Board (SDP-K1) and AD7689 Eval board. Also ensure all software's (IIO firmware, Libiio windows installer and IIO Oscilloscope windows installer) are downloaded and installed in your computer before trying to communicate with AD7689 device..</note>+ 
 +{{section>resources/tools-software/product-support-software/note_hardware_connections#Note in Hardware Connections&showfooter=nofooter}}
  
 ==== Running IIO Oscilloscope (Client) ==== ==== Running IIO Oscilloscope (Client) ====
Line 126: Line 87:
  
 ==== Python Environment and Scripts ==== ==== Python Environment and Scripts ====
-Data capture, sensor measurement, device calibration, etc. can be achieved with python based IIO clients, using 'pyadi-iio' library. A possible option using ADI's pyadi-iio library in python has been demonstrated in the forthcoming sections. The python scripts are provided along with firmware package. 
- 
-=== Setting-up Python Environment === 
-  * Install python (64-bit windows) into your local machine. The python scripts are developed and executed using python 3.10.5 version, so recommend using version 3.10.5 or beyond. [[https://www.python.org/downloads/|Download Python]] 
-  * Once python is installed, make sure the environment path (on windows machine) is set properly. You can verify if python is installed properly by typing “python --version” command on command line tool such as gitbash, command prompt, power shell, etc. 
-{{ :resources:tools-software:product-support-software:python_env_path_setup.png?800 |}} 
- 
-  * Install all required support packages by running requirements.txt file using command “python -m pip install -r requirements.txt” from the '/scripts' folder. 
-{{ :resources:tools-software:product-support-software:ad7689_python_installations.png?800 |}} 
- 
-=== Modifying/Running Python Scripts === 
-  * All python scripts specific to ad7689 IIO firmware are stored into “scripts” folder present in the project directory. So, any script must be executed from this folder. 
- 
-  * Update the ‘uri’ interface in script according to COM port assigned to your device (sdp-k1). 
  
-{{ :resources:eval:user-guides:ad4130:ad4130_pyadi-iio-uri-config.png?600 |}}+Data capture can be achieved with python based IIO clients, using 'pyadi-iio' library. A possible option using ADI's pyadi-iio library in python has been demonstrated in the forthcoming sections. The python scripts are provided along with firmware package.
  
-  * Executing the python script by using command “python script_name.py”+{{section>resources/tools-software/product-support-software/iio_support_python_application#Python Application&showfooter=nofooter}}
  
 ---- ----
resources/tools-software/product-support-software/ad7689_mbed_iio_support.txt · Last modified: 27 Dec 2022 08:49 by Mahesh Phalke