Basic USRP AM Transmission


#1

Hello everyone,

I have been experimenting with the Flex400 board and have been trying to
implement a basic AM transmitter. I have a WFM and NFM transmitter
working, but I cannot get the AM one to transmit correctly. The code
below generates a much higher frequency tone. Any advice to what I am
doing wrong? Does my output need filtering before connecting to the
sink?

self.u = usrp.sink_c () # the USRP sink

Code here for setting up the USRP, omitted

src = gr.file_source (gr.sizeof_float, “audio-1.dat”, True) # 440Hz tone
file
const = gr.add_const_ff (1.0)
conv = gr.float_to_complex()

gain = gr.multiply_const_cc (4000.0) # transmitter gain

connect it all

self.connect (src, const)
self.connect (const, conv)
self.connect (conv, gain)
self.connect (gain, self.u)

Thanks,
~Chris~


#2

Robert R. wrote:

self.u = usrp.sink_c () # the USRP sink

Code here for setting up the USRP, omitted

src = gr.file_source (gr.sizeof_float, “audio-1.dat”, True) # 440Hz tone
file
What is the sample_rate of the audio file
What is you interpolation rate of the usrp
What is the duc frequency of your usrp.
If the sample rate of your audio file is for example 48000 Herz
Then the usrp interpolation rate should be 128000000/48000 = 2666
Which is I think way out of range for the usrp
You first have to interpolate in software to something in the range of
the usrp.

Greetings,
Martin