aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorDimitri Stolnikov <horiz0n@gmx.net>2014-03-11 10:44:06 +0100
committerDimitri Stolnikov <horiz0n@gmx.net>2014-03-11 10:44:06 +0100
commitd29896d85427b5dd8e4dbb8ca534160e2275f8e2 (patch)
treed8c7ebb4c28c690afa892353615134552d95e8e5 /apps
parente0d1fb0377e49cd8ba07906b21bbe41c8705f1b6 (diff)
apps/siggen: add parameter to specify named gains
Diffstat (limited to 'apps')
-rw-r--r--apps/osmocom_siggen_base.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/apps/osmocom_siggen_base.py b/apps/osmocom_siggen_base.py
index f7f5854..2719aa7 100644
--- a/apps/osmocom_siggen_base.py
+++ b/apps/osmocom_siggen_base.py
@@ -200,6 +200,23 @@ class top_block(gr.top_block, pubsub):
if self._verbose:
print "Set gain to:", gain
+ if self._verbose:
+ gain_names = self.src.get_gain_names()
+ for name in gain_names:
+ range = self.src.get_gain_range(name)
+ print "%s gain range: start %d stop %d step %d" % (name, range.start(), range.stop(), range.step())
+
+ if options.gains:
+ for tuple in options.gains.split(","):
+ name, gain = tuple.split(":")
+ gain = int(gain)
+ print "Setting gain %s to %d." % (name, gain)
+ self.src.set_gain(gain, name)
+
+ if self._verbose:
+ rates = self.src.get_sample_rates()
+ print 'Supported sample rates %d-%d step %d.' % (rates.start(), rates.stop(), rates.step())
+
# Set the antenna
if(options.antenna):
ant = self._sink.set_antenna(options.antenna, 0)
@@ -436,6 +453,8 @@ def get_options():
help="Set sample rate (bandwidth), minimum by default")
parser.add_option("-g", "--gain", type="eng_float", default=None,
help="Set gain in dB (default is midpoint)")
+ parser.add_option("-G", "--gains", type="string", default=None,
+ help="Set named gain in dB, name:gain,name:gain,...")
parser.add_option("-f", "--tx-freq", type="eng_float", default=None,
help="Set carrier frequency to FREQ [default=mid-point]",
metavar="FREQ")