I'm currently trying to transmit a waveform using GNU Radio and the FMCOMMS3 but it doesn't seem like its transmitting using a spectrum analyzer. The flow graph is shown below.
Center Freq: 917 M
Sampling Rate: 4M
Any help is appreciated
The transmitter is in cyclic mode, meaning it will transmit continuously only the first buffer of samples provided.
Changing the cyclic mode to false resulted in me being able to see the signal once. I noticed that after stopping the flow graph, a large signal centered at the frequency of interest, 917M, with a span of 10 MHZ shows up on the spectrum analyzer, however, when I launch the flow graph this signal goes away and nothing shows on the spectrum analyzer but noise. Not sure what's going on
I've noticed two more details about the flowgraph. First, the signal you are sending is very small, trying scaling it (by 32768) to use the short data type better. Second, you are using RF Port B do you mean to use this port?
No. I didn't mean to use RF Port B. I adjusted this setting to RF Port A. I'm not exactly sure what you mean by the signal I'm sending being very "small". How do I go about scaling it for better results? 32768 is the buffer size used in this case so is that what you referring to when you say the signal is small?
The data you are converting from Float to short is within the range +/- 1. When you convert it to a short it will either be 1, 0, or -1. You are using almost no resolution of the DAC. Scaling the input (by changing scale factor on the Float to short block) by 32768 will scale the input to use all 16 bits of the system.
@Travis thanks for the info and all your help. Will definitely make some changes based on your suggestions.
I've noticed that with outside of run time(flow graph not executing) the fmcomms3 still sends a signal sometimes even stronger than the one i'm sending during run time. Is there a way to stop or turn this off? I know this a separate issue and kind of off topic. Sorry. Perhaps I should have started a new thread with this.
Until recently the transmitter would repeat the last two bytes of data provided when a stream was quit. This was just part of the DMA design. I doubt this change, which converts this to just transmit zeros, is in the HDL of your SD card. So that energy is probably a result of that logic. To do a quick check try sending zeros to the transmitter and quit the stream.
Regardless of this you will always have some LO leakage.
Retrieving data ...