I created a flow graph which would do the following
dip_image_source_block (custom made digital image processing block which helps sending images over the air (neat OpenCV work))
|
|--> throttle block -->packet_encoder-->gmsk_mod-->uhd_usrp_sink(tuned with the help of uhd.tune_request)
Below described is a snip of my code :
class my_top_block(gr.top_block):
def __init__(self,options):
gr.top_block.__init__(self)
##################################################
# Variables to be set
##################################################
self.samp_rate = samp_rate = 250000
self._tx_amplitude = options.tx_amplitude # digital amplitude sent to USRP
# build the graph
tb = my_top_block(options)
tb.start() # start flow graph
tb.wait() # wait for it to finish
if __name__ == '__main__':
try:
main()
except KeyboardInterrupt:
pass
Although i have defined set_tx_amplitude and at run time i do provide
the user option --tx-amplitude value is set to 0.25 but it still
transmits at 16dBm (max power of a USRP N200) when you would expect it
to be around a quarter of that power.
Any suggestions in this regard would be greatly appreciated.