diff --git a/res/modes_rx.ui b/res/modes_rx.ui new file mode 100644 index 0000000..cb7d9eb --- /dev/null +++ b/res/modes_rx.ui @@ -0,0 +1,745 @@ + + + MainWindow + + + + 0 + 0 + 800 + 600 + + + + MainWindow + + + + + + 10 + 220 + 91 + 281 + + + + + + + 10 + 10 + 221 + 181 + + + + Input + + + + + 10 + 60 + 66 + 17 + + + + Rate + + + + + + 10 + 30 + 66 + 17 + + + + Source + + + + + + 10 + 90 + 66 + 17 + + + + Gain + + + + + + 90 + 30 + 121 + 27 + + + + + + + 10 + 150 + 66 + 17 + + + + Antenna + + + + + + 10 + 120 + 66 + 17 + + + + Threshold + + + + + + 90 + 60 + 91 + 27 + + + + + + + 90 + 90 + 71 + 27 + + + + + + + 90 + 120 + 71 + 27 + + + + + + + 90 + 150 + 121 + 27 + + + + + + + 160 + 90 + 31 + 17 + + + + dB + + + + + + 160 + 120 + 31 + 17 + + + + dB + + + + + + 180 + 60 + 41 + 17 + + + + Msps + + + + + + + 260 + 10 + 341 + 151 + + + + Output + + + + + 10 + 120 + 61 + 22 + + + + KML + + + + + + 130 + 30 + 31 + 17 + + + + Port + + + + + + 130 + 60 + 31 + 17 + + + + Port + + + + + + 10 + 30 + 71 + 22 + + + + SBS-1 + + + + + + 130 + 90 + 31 + 17 + + + + Port + + + + + + 10 + 60 + 61 + 22 + + + + Raw + + + + + + 160 + 120 + 111 + 27 + + + + + + + 160 + 30 + 71 + 27 + + + + + + + 160 + 60 + 71 + 27 + + + + + + + 160 + 90 + 71 + 27 + + + + + + + 100 + 120 + 66 + 17 + + + + Filename + + + + + + 10 + 90 + 101 + 22 + + + + FlightGear + + + check_kml + check_kml + label_6 + label_7 + check_sbs1 + label_8 + check_raw + line_kmlfilename + line_sbs1port + line_rawport + line_fgfsport + label_9 + check_fgfs + + + + + 100 + 220 + 16 + 281 + + + + Qt::Vertical + + + + + + 130 + 200 + 651 + 301 + + + + 0 + + + + Dashboard + + + + + 190 + 30 + 21 + 17 + + + + nm + + + + + + 480 + 30 + 21 + 17 + + + + kts + + + + + + 480 + 60 + 21 + 17 + + + + ft + + + + + + 250 + 10 + 61 + 20 + + + + Heading + + + + + + 30 + 10 + 61 + 20 + + + + Bearing + + + + + + 120 + 150 + 118 + 23 + + + + 24 + + + false + + + + + + 10 + 150 + 101 + 17 + + + + Signal strength + + + + + + 130 + 10 + 61 + 20 + + + + Range + + + + + + 360 + 30 + 51 + 20 + + + + Speed + + + + + + 350 + 60 + 61 + 20 + + + + Altitude + + + + + + 370 + 90 + 51 + 20 + + + + Ident + + + + + + 120 + 30 + 71 + 27 + + + + true + + + + + + 410 + 30 + 71 + 27 + + + + true + + + + + + 410 + 60 + 71 + 27 + + + + true + + + + + + 410 + 90 + 71 + 27 + + + + true + + + + + + 410 + 120 + 121 + 27 + + + + true + + + + + + 370 + 120 + 51 + 20 + + + + Type + + + + + + 120 + 180 + 121 + 27 + + + + true + + + + + + 120 + 210 + 121 + 27 + + + + true + + + + + + 50 + 180 + 61 + 21 + + + + Latitude + + + + + + 40 + 210 + 71 + 21 + + + + Longitude + + + + + + Data browser + + + + + Live data + + + + + 5 + 11 + 631 + 251 + + + + + + + + + 10 + 200 + 101 + 17 + + + + Visible aircraft + + + + + + 640 + 30 + 98 + 27 + + + + Start + + + + + + 10 + 520 + 271 + 22 + + + + Show ADS-B-equipped aircraft only + + + + + + + 0 + 0 + 800 + 25 + + + + + + + + diff --git a/res/testmain.py b/res/testmain.py new file mode 100755 index 0000000..c05559a --- /dev/null +++ b/res/testmain.py @@ -0,0 +1,100 @@ +#!/usr/bin/python + +import os, sys +from PyQt4 import QtCore,QtGui + +from test import Ui_MainWindow + +import air_modes + +class mainwindow(QtGui.QMainWindow): + def __init__(self): + QtGui.QMainWindow.__init__(self) + self.ui = Ui_MainWindow() + self.ui.setupUi(self) + self.setObjectName("gr-air-modes Mode S receiver") + + #set defaults + #add file, RTL, UHD sources + self.ui.comboSource.addItems(["UHD device", "RTL-SDR", "File"]) + self.ui.comboSource.setCurrentIndex(0) + + #populate antenna, rate combo boxes based on source + self.populate_source_options() + + #should round to actual achieved gain + self.ui.line_gain.insert("30") + + #default to 3dB + self.ui.line_threshold.insert("3") + + self.ui.combo_ant.setCurrentIndex(self.ui.combo_ant.findText("RX2")) + + #check KML by default, leave the rest unchecked. + self.ui.check_sbs1.setCheckState(QtCore.Qt.Unchecked) + self.ui.check_raw.setCheckState(QtCore.Qt.Unchecked) + self.ui.check_fgfs.setCheckState(QtCore.Qt.Unchecked) + self.ui.check_kml.setCheckState(QtCore.Qt.Checked) + + self.ui.line_sbs1port.insert("30003") + self.ui.line_rawport.insert("9988") + self.ui.line_fgfsport.insert("5500") + self.ui.line_kmlfilename.insert("modes.kml") + + #disable by default + self.ui.check_adsbonly.setCheckState(QtCore.Qt.Unchecked) + + #goes and gets valid antenna, sample rate options from the device and grays out appropriate things + def populate_source_options(self): + sourceid = self.ui.comboSource.currentText() + self.rates = [] + self.ratetext = [] + self.antennas = [] + + if sourceid == "UHD device": + try: + from gnuradio import uhd + self.src = uhd.single_usrp_source("", uhd.io_type_t.COMPLEX_FLOAT32, 1) + self.rates = [rate.start() for rate in self.src.get_samp_rates()] + self.antennas = self.src.get_antennas() + self.src = None #deconstruct UHD source for now + self.ui.combo_ant.setEnabled(True) + self.ui.combo_rate.setEnabled(True) + except: + self.rates = [] + self.antennas = [] + self.ui.combo_ant.setEnabled(False) + self.ui.combo_rate.setEnabled(False) + + elif sourceid == "RTL-SDR": + self.rates = [2.4e6] + self.antennas = ["RX"] + self.ui.combo_ant.setEnabled(False) + self.ui.combo_rate.setEnabled(False) + + elif sourceid == "File": + self.rates = [2e6, 4e6, 6e6, 8e6, 10e6] + self.antennas = ["None"] + self.ui.combo_ant.setEnabled(False) + self.ui.combo_rate.setEnabled(True) + + self.ui.combo_rate.clear() + self.ratetext = ["%.3f" % (rate / 1.e6) for rate in self.rates] + for rate, text in zip(self.rates, self.ratetext): + self.ui.combo_rate.addItem(text, rate) + + self.ui.combo_ant.clear() + self.ui.combo_ant.addItems(self.antennas) + + if 4e6 in self.rates: + self.ui.combo_rate.setCurrentIndex(self.rates.index(4e6)) + + def on_comboSource_currentIndexChanged(self, index): + self.populate_source_options() + +if __name__ == '__main__': + app = QtGui.QApplication(sys.argv) + window = mainwindow() + window.show() + sys.exit(app.exec_()) +