I am changing the distance between 1 and 1,5 meter. I usually change gain
settings. But I always make 100dB totals. Right now, RX=35, TX=65.
I used VNA as a signal generator. I set -20dBm signal in VNA and I ran my SDR
as receiver. Actually, the results are satisfactory. SDRs receiver seems okay.
Almost no difference between 0 and 180 degree. So, can we say the problem is in
transmitter?
I can’t share all of the code. But I share the connections and settings in
attachment.
##################################################
# Variables
##################################################
self.sample_rate = sample_rate = 10e6
self.fft_size = fft_size = 1024
self.center_freq = center_freq = freqList[0]
self.bw = bw = 200e3
self.lo_offset = lo_offset = 50e3
##################################################
# Blocks
##################################################
self.uhd_usrp_source_0 = uhd.usrp_source(
",".join(("serial=xxxxxxx", "num_send_frames=256", "num_recv_frames=256")),
uhd.stream_args(
cpu_format="fc32",
otw_format="sc12",
args='',
channels=list(range(0, 1)),
),
)
self.uhd_usrp_source_0.set_samp_rate(sample_rate)
self.uhd_usrp_source_0.set_time_unknown_pps(uhd.time_spec(0))
self.uhd_usrp_source_0.set_center_freq(uhd.tune_request(center_freq,
rf_freq=center_freq-lo_offset,
rf_freq_policy=uhd.tune_request.POLICY_MANUAL), 0)
self.uhd_usrp_source_0.set_antenna('RX2', 0)
self.uhd_usrp_source_0.set_bandwidth(bw, 0)
self.uhd_usrp_source_0.set_gain(35, 0)
self.uhd_usrp_sink_0 = uhd.usrp_sink(
",".join(("serial=xxxxxxx", "num_send_frames=256", "num_recv_frames=256")),
uhd.stream_args(
cpu_format="fc32",
otw_format="sc12",
args='',
channels=list(range(0, 1)),
),
'',
)
self.uhd_usrp_sink_0.set_samp_rate(sample_rate)
self.uhd_usrp_sink_0.set_time_unknown_pps(uhd.time_spec(0))
self.uhd_usrp_sink_0.set_center_freq(uhd.tune_request(center_freq,
rf_freq=center_freq-lo_offset,
rf_freq_policy=uhd.tune_request.POLICY_MANUAL), 0)
self.uhd_usrp_sink_0.set_antenna('TX/RX', 0)
self.uhd_usrp_sink_0.set_bandwidth(bw, 0)
self.uhd_usrp_sink_0.set_gain(65, 0)
self.fft_vxx_0 = fft.fft_vcc(fft_size, True, window.blackmanharris(fft_size),
True, 1)
self.blocks_vector_to_stream_0 = blocks.vector_to_stream(gr.sizeof_float *
fft_size, 1)
self.blocks_stream_to_vector_0_0_0 =
blocks.stream_to_vector(gr.sizeof_gr_complex * 1, fft_size)
self.blocks_null_sink_0 = blocks.null_sink(gr.sizeof_float * fft_size)
self.blocks_nlog10_ff_0 = blocks.nlog10_ff(10, fft_size, 0)
self.blocks_multiply_const_xx_0 = blocks.multiply_const_cc(1 / fft_size,
fft_size)
self.blocks_file_sink_0 = blocks.file_sink(gr.sizeof_float * fft_size, path,
False)
self.blocks_file_sink_0.set_unbuffered(True)
self.blocks_complex_to_mag_squared_0 = blocks.complex_to_mag_squared(fft_size)
self.analog_sig_source_x_0 = analog.sig_source_c(sample_rate,
analog.GR_SIN_WAVE, 20000, 1, 0, 0)
##################################################
# Connections
##################################################
self.connect((self.analog_sig_source_x_0, 0), (self.uhd_usrp_sink_0, 0))
self.connect((self.uhd_usrp_source_0, 0), (self.blocks_stream_to_vector_0_0_0,
0))
self.connect((self.blocks_stream_to_vector_0_0_0, 0), (self.fft_vxx_0, 0))
self.connect((self.fft_vxx_0, 0), (self.blocks_multiply_const_xx_0, 0))
self.connect((self.blocks_multiply_const_xx_0, 0),
(self.blocks_complex_to_mag_squared_0, 0))
self.connect((self.blocks_complex_to_mag_squared_0, 0),
(self.blocks_nlog10_ff_0, 0))
self.connect((self.blocks_nlog10_ff_0, 0), (self.blocks_vector_to_stream_0, 0))
self.connect((self.blocks_vector_to_stream_0, 0), (self.blocks_file_sink_0, 0))
self.connect((self.blocks_vector_to_stream_0, 0), (self.blocks_null_sink_0, 0))
_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]