3 # Copyright 2008 Free Software Foundation, Inc.
5 # This file is part of GNU Radio
7 # GNU Radio is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 3, or (at your option)
12 # GNU Radio is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
17 # You should have received a copy of the GNU General Public License
18 # along with GNU Radio; see the file COPYING. If not, write to
19 # the Free Software Foundation, Inc., 51 Franklin Street,
20 # Boston, MA 02110-1301, USA.
25 from gnuradio import usrp
26 from optparse import OptionParser
28 def disp_usrp(which, serial=None):
29 u_source = usrp.source_c(which=which)
30 u_sink = usrp.sink_c(which=which)
31 u_serial = u_source.serial_number()
33 if serial is not None:
34 if serial != u_serial:
37 print "USRP", which, "serial number", u_source.serial_number()
38 subdev_A_rx = usrp.selected_subdev(u_source, (0,0))
39 subdev_B_rx = usrp.selected_subdev(u_source, (1,0))
40 subdev_A_tx = usrp.selected_subdev(u_sink, (0,0))
41 subdev_B_tx = usrp.selected_subdev(u_sink, (1,0))
42 print " RX d'board %s" % (subdev_A_rx.side_and_name(),)
43 print " RX d'board %s" % (subdev_B_rx.side_and_name(),)
44 print " TX d'board %s" % (subdev_A_tx.side_and_name(),)
45 print " TX d'board %s" % (subdev_B_tx.side_and_name(),)
47 if __name__ == "__main__":
48 parser = OptionParser()
49 parser.add_option("-w", "--which", type="int", default=None,
50 help="select which USRP (0, 1, ...) default is all found",
52 parser.add_option("-s", "--serial", default=None,
53 help="select USRP by serial number",
55 (options, args) = parser.parse_args()
57 print parser.print_help()
60 if options.serial is not None and options.which is not None:
61 print "Use of --which or --serial is exclusive"
64 if options.which is not None:
66 disp_usrp(options.which)
68 print "USRP", options.which, "not found."
70 for n in range(MAX_USRPS):
72 disp_usrp(n, options.serial)