I've got some pieces of flex2400 in the lab, one of which runs usrp_oscope.py at 2.45GHz for monitoring the signal power. We change different flex2400 on another motherboard to see the difference of their power. Surprisingly, with the same transmitter program, and the same location of TX & RX antennas, the signal power received differs a lot from board to board. Some with amplitude of 1~2 hundred, some several thousand.
Is there anything I missed when setting transmitting power in the script? The following is the code setting the usrp_sink:
u = usrp.sink_c (0, self.usrp_interp)
subdev_spec = usrp.pick_tx_subdevice(u)
print "subdev_spec = ", subdev_spec
mux_val = usrp.determine_tx_mux_value(u, subdev_spec)
print "mux_val = 0x%x" % mux_val
u.set_mux(mux_val)
subdev = usrp.selected_subdev(u, subdev_spec)
u.set_pga (0, options.gain)
u.set_pga (1, options.gain)
subdev.set_gain(subdev.gain_range()[1])
subdev.set_auto_tr(True)
r = u.tune(subdev._which, subdev, freq)
It seems the set_pga() has no effect on transmitting power. Why?
The return value of subdev.gain_range() is [0, 0, 1], I don't know what it mean, and still, it seems there is no differnce whether I set the gain of daughterborad to 0 or 1.