AnsweredAssumed Answered

Information on DDS device tree for FMCOMMS2/3

Question asked by brandonj on Aug 22, 2014
Latest reply on Sep 2, 2014 by larsc

I'm working on arbitrary waveform generation using the DDS device's DAC DMA buffer. I followed the source in the fmcomms2 plugin to see how it was implemented but I'm not getting anything, which are probably due to my poor understanding of the DDS device tree. For example, what is the difference between out_altvoltage0_TX1_I_F1_frequency and out_altvoltage1_TX1_I_F2_frequency? Is there any relationship between these and the DMA buffer?

 

iio:device3/out_altvoltage0_TX1_I_F1_frequency

iio:device3/out_altvoltage1_TX1_I_F2_frequency

iio:device3/out_altvoltage2_TX1_Q_F1_frequency

iio:device3/out_altvoltage3_TX1_Q_F2_frequency

iio:device3/out_altvoltage4_TX2_I_F1_frequency

iio:device3/out_altvoltage5_TX2_I_F2_frequency

iio:device3/out_altvoltage6_TX2_Q_F1_frequency

iio:device3/out_altvoltage7_TX2_Q_F2_frequency

 

Is *_raw the file to enable the channel? Is there any documentation of what all of the channels and their attributes do? I couldn't find any related posts and I don't think it's clear.

 

What are the sampling frequencies for and how do they differ from the PHY sampling frequency, i.e.

iio:device3/out_altvoltage_TX1_I_F1_sampling_frequency

 

As an aside, when I reboot my board I always see a bunch of spurs on my TX port over a 20 MHz band at 2400 MHz. If I set the DDS to disabled, they do not go away. My suspicion is that from testing maybe my devices files are corrupted because I can't recall ever looking at the TX port and observing this?

 

As for my arbitrary waveform generation from file, here's my experiment and observations:

 

1) Generate CW at 2403 MHz 0 dBm w/ 3 dB cable IL (-3 dBm going into RX2)

2) Tune TX/RX LO to 2400 MHz, sample rate = 20 MHz, RF bandwidth = 10 MHz

3) Capture receive data to file using my application

4) Observe CW at 3 MHz

5) Load transmit data from this file

6) Format data for the DDS buffer and push buffer

 

I observe:

 

3 MHz CW @ -40 dBm

-3 MHz CW @ -41 dBm

0 MHz/DC @ - 65 dBm

 

Obviously the -3 MHz shouldn't be there. The signal level is low even though I have the TX attenuation set to 0 dB, but I suspect that's in part because the RX data isn't full 16-bits dynamic range since the RSSI is never close to 0 dBFS.

Outcomes