Transmit and Receive LTE using adrv9371 and ZC706


I am trying to modify the Transmit and Receive LTE MIMO code given in the below link.

This code runs perfectly on AD RF SOM.

Now, I am trying the same example to run on ADRV9371.

ad9361_LTE() ( The code that's in the Legacy folder under LTE_MATLAB) uses IIO hence, I modified this code to 9371 and it works for the dummy data which is used in trData. (I was able to see LTE spectrum on the Spectrum Analyzer). Please note that I upsampled the enodeBOutput by 8 (to match 122.88Mhz) for Transnmission.

But, when I modify it to the above image and try to Transmit, MATLAB crashes. After a bit debugging, I understood that the buffer size that I have pre-allocated,is too large and that could be the reason for my Crash. (Not sure though)

Next, I changed the IIO objects to Adi Objects and used adi.AD9371.Tx and could similarly transmit the dummy Data but, when tried to Transmit the full grid, I get an error.

This error is related to SamplesPerFrame. The Final enodeBOutput is much larger than 2^20, Hence,I always get an error. 

How, do I transmit this whole grid either using IIO objects or ADI objects?

Please suggest any work around.




Error using adi.AD9371.Base/set.SamplesPerFrame (line 65)
Expected SamplesPerFrame to be a scalar with value <= 1.04858e+06.

Error in adi.AD9371.Tx/setupImpl (line 71)
obj.SamplesPerFrame = size(data,1);

Error in ad9371_LTE_adi_Tx_3 (line 216)