AD9361 Transceiver Help with FastLock Profile

I am trying to use the fastlock profiles on the 9361 for my development. I have the E310 system object, but it cannot re-tune frequency fast enough to support what I need to do. Is there a way to use the existing library (noOs.so) in order to do what I need to do? The system object itself looks pretty locked down as far as visibility goes, so I don't really have a reference other than the Analog Devices help and/or github.
The alternative is re-write the gpp to 9361 SPI bus interface, but I would much rather add to existing as opposed to write from scratch
Thank you

 Accepted Answer

Hi William,
I'm afraid it's not possible to use the fastlock functionality in the current E310 system objects, and you are correct the system object in this case is pretty locked down. It's a function of our implementation approach. For exactly this reason, from 18b, our Xilinx Zynq-Based Radio support (which is based on the same zynq+ad9361 hardware as the E310) is based on Analog Devices' libiio infrastructure, which makes it all a lot more open. In this case, you can access the IIO kernel drivers directly, if you wish. We hope to move the E310 to the same framework, but we are not there yet.
I'm sorry I can't be more help at this stage.
Neil

4 Comments

As a follow on to this question, I would like to use the existing board support package (omitting the existing 9361 System Object block). I've tried using Xilinx to create a new BSP, but that has failed so far. I can compile OK, but receive "illegal instruction" as soon as I try to run the example. My current effort / attempt is I'm trying to get the 9361 repo working in Simulink, but struggling with compiling everything. The big error that I get is "fatal error: xparameters.h: no such file or directory."
I'm not sure if just including the correct header file is enough. That seems like a file that if I properly reference it, it causes a cascade of undefined references and such.
Do you have any guidance to how to properly include the required paths in my system object block to compile successfully?
Thank you
Hi William,
Can you elaborate on what exactly you are trying to do here? I'm afraid we're a bit confused as to what you mean. Are you trying to use the Analog Devices Board Support Packages?
Thanks,
Neil
Neil
I guess I wasn't very clear looking back at my follow-on question. I would like to use the existing sdcard image, but modify it to work with the 9361 driver that I will eventually build. I tried creating a new BSP in Xilinx that consisted of the same .hdf and .bit from the FPGA export. But when I went to run the 9361 example, it failed with "illegal instruction" error.
I'm trying to incorporate the 9361 noOS repo into my project, and write a custom block that handles 9361 traffic to also include the fast lock profile mechanism.
Edit: I have a current Mathworks image currently on the E310 (312). I want to use that with a custom block that uses the 9361 noOS api library
Edit 2: I successfully compiled the 9361 api using the platform_linux driver. I've also incorporated it into a System Object (that passes through to the 9361 driver). However, my problem now is the ad9361_init() function fails to complete due to a calibration timeout.
I have no idea how to debug this issue. My clock rates are:
rx: 982016000, 245504000, 122752000, 61376000, 30688000, 30688000
tx: 982016000, 122752000, 61376000, 30688000, 30688000, 30688000
RF Bandwidth is: 22 MHz
I need to use a sampling rate of 30.688 MHz for my design.
I modified the "util.h" to include the debug commands in order to see the analog devices chip print out information. And up to the calibration check it seems like everything is OK.
Any advice?
Thanks again
Hi William,
I'm afraid it's likely you're heading down a path you might not get much success with. Our E310 images have a very custom FPGA image which is tightly intertwined with the software we ship, so I don't think you will manage. It was to remove the closed design that we made the shift to libiio for the Zynq Radio support package, there is some info here. Like I said earlier, we are working on moving the E310 to the same hardware and software images, but I can't promise when that will be available. If you contact us via tech support we can provide more info.
Kind regards,
Neil

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!