diff options
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/uhd_txrx_debug_prints/uhd_txrx_debug_prints_README.md (renamed from tools/uhd_txrx_debug_prints_README.md) | 0 | ||||
| -rwxr-xr-x[-rw-r--r--] | tools/uhd_txrx_debug_prints/uhd_txrx_debug_prints_graph.py (renamed from tools/uhd_txrx_debug_prints_graph.py) | 43 | 
2 files changed, 39 insertions, 4 deletions
diff --git a/tools/uhd_txrx_debug_prints_README.md b/tools/uhd_txrx_debug_prints/uhd_txrx_debug_prints_README.md index 1425a4d96..1425a4d96 100644 --- a/tools/uhd_txrx_debug_prints_README.md +++ b/tools/uhd_txrx_debug_prints/uhd_txrx_debug_prints_README.md diff --git a/tools/uhd_txrx_debug_prints_graph.py b/tools/uhd_txrx_debug_prints/uhd_txrx_debug_prints_graph.py index 4fbd7aa86..b0f6681f6 100644..100755 --- a/tools/uhd_txrx_debug_prints_graph.py +++ b/tools/uhd_txrx_debug_prints/uhd_txrx_debug_prints_graph.py @@ -1,6 +1,27 @@ - -__author__ = 'johannes' - +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# +# Copyright 2013-2014 Ettus Research LLC +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program.  If not, see <http://www.gnu.org/licenses/>. +# +""" +Plots the output of the streamers that is produced when DEBUG_TXRX +is enabled. +""" + +import argparse  import matplotlib.pyplot as plt  import numpy as np @@ -52,6 +73,8 @@ def convert_to_bool(data):  def convert_data_set(data, reqtype):      zdata = zip(*data)      res = [] +    if len(zdata) == 0: +        return res      for i in range(len(reqtype)):          if reqtype[i] == np.bool:              res.append(np.asarray(convert_to_bool(zdata[i]), dtype=np.bool)) @@ -256,6 +279,9 @@ def plot_rtt_lines(data, fignum):      rx = extract_libusb("rx", data)      #tx = extract_libusb("tx", data) +    if len(data) == 0 or len(rx) == 0: +        return +      plt.figure(fignum)      for i in range(len(rx[0])):          if rx[0][i] > -1: @@ -307,11 +333,19 @@ def get_unknown_lines(data):  rx_metadata_error_codes = {0x0: "NONE", 0x1: "TIMEOUT", 0x2: "LATE_COMMAND", 0x4: "BROKEN_CHAIN", 0x8: "OVERFLOW",                             0xc: "ALIGNMENT", 0xf: "BAD_PACKET"} + +def parse_args(): +    """ Parse args, yo """ +    parser = argparse.ArgumentParser(description='Plot tool for debug prints.') +    parser.add_argument('-f', '--filename', default=None, help='Debug output file') +    return parser.parse_args() +  # Be really careful with the input files. They get pretty huge in a small time.  # Doing some of the plotting can eat up a lot of time then.  # Although this file contains a lot of functions by now, it is still left to the user to use everythin correctly.  def main(): -    filename = "/home/johannes/tests/bseries_stall/bseries_stall_3.log" +    args = parse_args() +    filename = args.filename      print "get data from: ", filename      #pref1 = "super_recv_packet_handler"      #pref2 = "recv" @@ -376,5 +410,6 @@ def main():      plt.show()  if __name__ == '__main__': +    print "[WARNING] This tool is in alpha status. Only use if you know what you're doing!"      main()  | 
