From cab7c1eb5c0d323ade589f33e0703dd6fe9c237b Mon Sep 17 00:00:00 2001
From: Chris Kuethe <chris.kuethe+github@gmail.com>
Date: Sun, 3 May 2015 16:05:00 -0700
Subject: Print scan rate

Useful when scanning in a way that is likely to run slowly, doubly
so when multiple passes across the band are needed.
---
 gr-uhd/examples/python/usrp_spectrum_sense.py | 12 ++++++++++++
 1 file changed, 12 insertions(+)

(limited to 'gr-uhd/examples/python')

diff --git a/gr-uhd/examples/python/usrp_spectrum_sense.py b/gr-uhd/examples/python/usrp_spectrum_sense.py
index ba45a2e80e..b1ea6b44d8 100755
--- a/gr-uhd/examples/python/usrp_spectrum_sense.py
+++ b/gr-uhd/examples/python/usrp_spectrum_sense.py
@@ -33,6 +33,7 @@ import math
 import struct
 import threading
 from datetime import datetime
+import time
 
 sys.stderr.write("Warning: this may have issues on some machines+Python version combinations to seg fault due to the callback in bin_statitics.\n\n")
 
@@ -271,6 +272,8 @@ def main_loop(tb):
     bin_start = int(tb.fft_size * ((1 - 0.75) / 2))
     bin_stop = int(tb.fft_size - bin_start)
 
+    timestamp = 0
+    centerfreq = 0
     while 1:
 
         # Get the next message sent from the C++ code (blocking call).
@@ -282,6 +285,15 @@ def main_loop(tb):
         # m.raw_data is a string that contains the binary floats.
         # You could write this as binary to a file.
 
+        # Scanning rate
+        if timestamp == 0:
+            timestamp = time.time()
+            centerfreq = m.center_freq
+        if m.center_freq < centerfreq:
+            sys.stderr.write("scanned %.1fMHz in %.1fs\n" % ((centerfreq - m.center_freq)/1.0e6, time.time() - timestamp))
+            timestamp = time.time()
+        centerfreq = m.center_freq
+
         for i_bin in range(bin_start, bin_stop):
 
             center_freq = m.center_freq
-- 
cgit v1.2.3