Wiki

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
resources:tools-software:no-os-software:iio [27 Apr 2021 13:51] – [BUILD PROJECT WITH IIO SUPPORT] Ramona Alexandra Nechitaresources:tools-software:no-os-software:iio [14 Nov 2023 15:25] (current) – tinyiiod -> iiod Darius B
Line 4: Line 4:
 under IIO headline. under IIO headline.
 ====== BUILD PROJECT WITH IIO SUPPORT ====== ====== BUILD PROJECT WITH IIO SUPPORT ======
-Go to no-OS  +To build project with no-OS IIO support go to the desired no-OS project folder ''/no-OS/projects/project_name'' and execute:
-To build project with no-OS IIO support go to no-OS folder and do:+
  
-''git submodule update --recursive''+''make reset''
  
-Then go to the project “/no-OS/projects/project_name” and execute: +''make IIOD=y''
- +
-''make clean_all'' +
- +
-''make TINYIIOD=y''+
  
 Depending on the project and hardware used, the platform might have to be specified inside the Makefile in the project folder, or from command line: Depending on the project and hardware used, the platform might have to be specified inside the Makefile in the project folder, or from command line:
Line 19: Line 14:
 ''make PLATFORM=desired_platform clean_all'' ''make PLATFORM=desired_platform clean_all''
  
-''make PLATFORM=desired_platform TINYIIOD=y''+''make PLATFORM=desired_platform IIOD=y''
  
 For more information about building projects, go to: [[:resources:no-os:build|https://github.com/analogdevicesinc/no-OS/wiki/Building-no-OS-on-Linux]]. For more information about building projects, go to: [[:resources:no-os:build|https://github.com/analogdevicesinc/no-OS/wiki/Building-no-OS-on-Linux]].
Line 29: Line 24:
 <hidden Linux (Click to expand)> <hidden Linux (Click to expand)>
 ''sudo ./build/project.out'' ''sudo ./build/project.out''
-<note important>Make sure IIOD is not already running! It can be stopped it with \\+<note important>Make sure IIOD is not already running! It can be stopped it with\\
 ''sudo systemctl stop iiod'' ''sudo systemctl stop iiod''
 </note> </note>
Line 39: Line 34:
  
 ''make develop'' ''make develop''
-===== IIO-Oscilloscope client ===== +===== Connecting to Clients ===== 
-IIO-Oscilloscope is one possible client (it has to be built with SERIAL_BACKEND option)select the corresponding serial port and set baud rate to 921600. For more information about IIO Oscilloscope go to:+After building and running a no-Os project, the data can be displayed, processed and visualized through a series of clients, such as command line tools, MATLAB® and Simulink®, IIO-Oscilloscope, etc. Find the complete list of frameworks and applications at http://analogdevicesinc.github.io/libiio/master/index.html  
 + 
 +For simply displaying or storing information regarding the devices, [[:resources:tools-software:linux-software:libiio:iio_info | iio_info]], [[:resources:tools-software:linux-software:libiio:iio_attr | iio_attr]], [[:resources:tools-software:linux-software:libiio:iio_reg | iio_reg]], [[:resources:tools-software:linux-software:libiio:iio_readdev | iio_readdev]], [[:resources:tools-software:linux-software:libiio:iio_writedev | iio_writedev]] are included in the default builds. 
 + 
 +Here is an example on how to use ''iio_info''
 +  * For serial context ''iio_info -u serial:/dev/ttyUSB0,115200'' 
 +  * For network ''iio_info -u ip:<host>'' 
 + 
 + 
 +For a graphical user interface and plots IIO-Oscilloscope is one possible client. For more information about IIO Oscilloscope go to:
 https://wiki.analog.com/resources/tools-software/linux-software/iio_oscilloscope https://wiki.analog.com/resources/tools-software/linux-software/iio_oscilloscope
-   + 
 +Connecting to IIO-Oscilloscope with the serial context: 
 {{:resources:tools-software:no-os-software:iio:iio_osc_uart.png?direct&400|}} {{:resources:tools-software:no-os-software:iio:iio_osc_uart.png?direct&400|}}
  
-===== Python device over iio client =====+And with network:
  
-https://analogdevicesinc.github.io/pyadi-iio/devices/adi.ad936x.html+{{:resources:tools-software:no-os-software:screenshot_from_2021-04-29_02-04-15.png?400|}}
  
-https://analogdevicesinc.github.io/pyadi-iio/guides/examples.html +Once connected, two windows should pop up.
-===== Helper utilities as client =====+
  
-Helper utilities from Libiio can be used also:        
  
-''iio_readdev -u serial:/dev/ttyUSB0,921600 -400 -s 6400 cf-ad9361-lpc > sample.dat''+{{:resources:tools-software:no-os-software:screenshot_from_2021-04-29_02-04-15.png?400|}} 
 + 
 +{{:resources:tools-software:no-os-software:screenshot_from_2021-04-29_02-06-48.png?400|}} 
 + 
 +===== Python device over iio client ===== 
 + 
 +A python abstraction module for ADI hardware also exists, to make them easier to use. The supported devices can be found at 
 +https://analogdevicesinc.github.io/pyadi-iio/devices/index.html
  
-For more details about libiio helper utilities please visit following link: 
-https://wiki.analog.com/resources/tools-software/linux-software/libiio/iio_readdev 
 ====== IIO DEMO APPLICATION ====== ====== IIO DEMO APPLICATION ======
 A demo iio application can be found in the following location: A demo iio application can be found in the following location:
Line 90: Line 99:
 ====== SOFTWARE ARCHITECTURE ====== ====== SOFTWARE ARCHITECTURE ======
  
-The relations between modules can be seen in the following figure. Doted lines represent function callbacks. +The relations between modules can be seen in the following figure.
- +
-{{:resources:tools-software:no-os-software:iio:iio_arhitecture.png?direct&800|}} +
- +
-An iio_app instance is always necessary, since it instantiates libtinyiiod library, the rest of iio modules (iio_demo) are optional, each one registering a new device to be checked when a command is received. +
- +
-====== LIBTINYIIOD ====== +
-Is a library to ease the development of software interfacing I/O (IIO) devices. The library abstracts the low-level details of hardware, and provides a simple yet complete programming interface that can be used for advanced projects.+
  
-{{:resources:tools-software:no-os-software:iio:iio_libtinyiiod.png?direct&400|}}+{{:resources:tools-software:no-os-software:iio_diagram.png?400|}}
  
-https://github.com/analogdevicesinc/libtinyiiod 
  
resources/tools-software/no-os-software/iio.1619524272.txt.gz · Last modified: 27 Apr 2021 13:51 by Ramona Alexandra Nechita