I am working on ADRV9361-z7035. I have to build no-os software. For build no-os setup I have build the HDL file successfully and created application in XSDK. I have added all the necessary file into src folder and project build successfully. The remaining is program to fpga and run configuration.
I have question regrading it which is mentioned below.
1. How to program the fpga board using QSPI?
2. How to operate no-os software after it successfully dumped in the target board?
waiting for your response.
If you want to run the program using JTAG you program the fpga first (from the tools menu) then run the generated .elf file (from the run menu).
If you want to build a flash image that uses this bitstream…
You have to connect the UART-USB cable to a host in order to see the messages that are being sent by the board.
On this board, the programming can be done using the JTAG header near the supply port and…
dimpy said:2. How to operate no-os software after it successfully dumped in the target board?
Thank you for reply.
Kindly answer the above mentioned question.
You can check these links on how to use the no-os for AD9361:
Is there any other option to program FPGA without using JTAG?
Kindly find the attached link of JTAG-HS3
Can we use this JTAG cable instead of which you suggest?
This JTAG programmer should work too
We have successfully program the no-os into adrv9361-z7035.
1. How can we control the parameters like frequency, attenuation etc. using console commands?
2. It is required any terminal to use console commands?
Waiting for your response.
You can set the parameters using the iio oscilloscope's ad936X plugin.
If you want to use the board with iio, you have to compile the project using make TINYIIOD=y ( wiki.analog.com/.../iio ). Connect to the board's uart, run the newly built software ( that includes tinyiiod ) and wait for a "Done" message on the terminal. After you see that message you need to close the terminal so the serial connection can be used by the IIO Oscilloscope app. In the app, select the Serial device option and connect to the board's port at 115200 baud rate. If everything is configured corectly, an plugin window similar to this one should appear : wiki.analog.com/.../fmcomms2_plugin
Using this plugin you can set the parameters you're looking for.
Hi Sergiu amiclaus
We don't want use iio oscilloscope with no-os to set parameters. Is there any other way to set parameters in no-os?
Besides iio oscilloscope, we do not have any other app that can set the device parameters over UART.
Here https://analogdevicesinc.github.io/libiio/master/index.html at Frameworks section you can found options to interact with the board using libiio.
And here you can found an example using python: github.com/.../ad9361_advanced_ensm.py
Hi Sergiu mchindris
Thank you for your response.
1) Should we use API which is given here https://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz/software/baremetal for control the various parameters?
If yes how should we use API?
2) We want to make ADRV9361-z7035 board as standalone that is why we program the no-os software in it. So with no-os we cannot use IIO oscilloscope. Kindly guide me if there is another way to control the various parameters?
1) Yes, those are the functions that lets you control the parameters.
2) If you want to control the parameters, you need an interface that will let you communicate with the board (uart, ethernet, etc..).
In order to configure parameters on the board from outside you can do it over UART using the IIOD protocol
Here you can find how API is exposed over iio:
And, in order to modify this parameters there are different iio clients or iio binding for different languages, you can find more info here: https://wiki.analog.com/resources/tools-software/linux-software/libiio_internals#the_network_backend_and_iio_daemon at Bindings and here https://analogdevicesinc.github.io/libiio/master/index.html at FRAMEWORKS.