Merging r11186:11273 from grc branch.
[debian/gnuradio] / grc / scripts / usrp2_probe
index deb2e538df2463f6a357b47ac1e49d136431a1b4..00d4366ddfc2c24fc3d9c0094077b96e6ac3d3e1 100755 (executable)
@@ -29,10 +29,10 @@ import gobject
 
 from gnuradio.grc.gui.Dialogs import TextDisplay
 
-from gnuradio.grc.platforms.python.Platform import Platform
-platform = Platform(block_paths_internal_only=['usrp2_probe.xml'])
+from gnuradio.grc.python.Platform import Platform
+platform = Platform()
 
-from gnuradio.grc.platforms.gui.Platform import Platform
+from gnuradio.grc.gui.Platform import Platform
 platform = Platform(platform)
 
 flow_graph = platform.get_new_flow_graph()
@@ -104,11 +104,10 @@ class USRP2ProbeWindow(gtk.Window):
                p = subprocess.Popen(args=args, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=False, universal_newlines=True)
                msg = p.stdout.read()
                #extract mac addrs
-               self.usrp2_macs = map(lambda l: l.split()[0], filter(lambda l: l.count(':') >= 5, msg.strip().splitlines()))
+               self.usrp2_macs = sorted(map(lambda l: l.split()[0], filter(lambda l: l.count(':') >= 5, msg.strip().splitlines())))
                #set the tree store with the mac addrs
                self.treestore.clear()
-               for usrp2_mac in self.usrp2_macs:
-                       self.treestore.append(None, (usrp2_mac,))
+               for usrp2_mac in self.usrp2_macs: self.treestore.append(None, (usrp2_mac,))
                #set the text with the error message for 0 found, hide the list
                #when only 1 usrp2, auto handle selection, hide the list
                #for multiple usrp2, show the list
@@ -136,8 +135,11 @@ class USRP2ProbeWindow(gtk.Window):
                        'rx': (usrp2.source_32fc, 'adc_rate'),
                        'tx': (usrp2.sink_32fc, 'dac_rate'),
                }[usrp_type_param.evaluate()]
+               interface = usrp_interface_param.evaluate()
                try:
-                       u = make(usrp_interface_param.evaluate(), mac_addr)
+                       if not interface and not mac_addr: u = make()
+                       elif not mac_addr: u = make(interface)
+                       else: u = make(interface, mac_addr)
                        msg = ">>> USRP2 Probe\n"
                        msg = "%s\nMAC Addr:\n\t%s\n"%(msg, u.mac_addr())
                        msg = "%s\nName (ID):\n\t%s\n"%(msg, u.daughterboard_id())