From 45ee54fad3f457b8e1bffa99f9adb7232f2aa386 Mon Sep 17 00:00:00 2001 From: Manolis Surligas Date: Thu, 2 Nov 2017 14:03:24 +0200 Subject: [PATCH] Fix CW decoder GUI option for non-X hosts --- CMakeLists.txt | 2 +- apps/flowgraphs/cw_decoder.grc | 2 +- apps/flowgraphs/satnogs_cw_decoder.py | 57 ++------------------------- 3 files changed, 5 insertions(+), 56 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c4d1d08..4afeebb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -48,7 +48,7 @@ list(INSERT CMAKE_MODULE_PATH 0 ${CMAKE_SOURCE_DIR}/cmake/Modules) # Set the version information here set(VERSION_INFO_MAJOR_VERSION 1) set(VERSION_INFO_API_COMPAT 2) -set(VERSION_INFO_MINOR_VERSION 0) +set(VERSION_INFO_MINOR_VERSION 1) set(VERSION_INFO_MAINT_VERSION git) ######################################################################## diff --git a/apps/flowgraphs/cw_decoder.grc b/apps/flowgraphs/cw_decoder.grc index 72539a9..d610d53 100644 --- a/apps/flowgraphs/cw_decoder.grc +++ b/apps/flowgraphs/cw_decoder.grc @@ -38,7 +38,7 @@ generate_options - qt_gui + no_gui hier_block_src_path diff --git a/apps/flowgraphs/satnogs_cw_decoder.py b/apps/flowgraphs/satnogs_cw_decoder.py index dde15d5..cca5634 100755 --- a/apps/flowgraphs/satnogs_cw_decoder.py +++ b/apps/flowgraphs/satnogs_cw_decoder.py @@ -5,20 +5,9 @@ # Title: CW Decoder # Author: Manolis Surligas (surligas@gmail.com) # Description: A CW (Morse) Decoder -# Generated: Wed Nov 1 21:56:56 2017 +# Generated: Thu Nov 2 13:59:29 2017 ################################################## -if __name__ == '__main__': - import ctypes - import sys - if sys.platform.startswith('linux'): - try: - x11 = ctypes.cdll.LoadLibrary('libX11.so') - x11.XInitThreads() - except: - print "Warning: failed to XInitThreads()" - -from PyQt4 import Qt from gnuradio import analog from gnuradio import blocks from gnuradio import eng_notation @@ -29,36 +18,13 @@ from gnuradio.filter import firdes from optparse import OptionParser import osmosdr import satnogs -import sys import time -from gnuradio import qtgui -class satnogs_cw_decoder(gr.top_block, Qt.QWidget): +class satnogs_cw_decoder(gr.top_block): def __init__(self, antenna=satnogs.not_set_antenna, bb_gain=satnogs.not_set_rx_bb_gain, cw_offset=700, decoded_data_file_path='/tmp/.satnogs/data/data', dev_args=satnogs.not_set_dev_args, doppler_correction_per_sec=1000, enable_iq_dump=0, file_path='test.txt', if_gain=satnogs.not_set_rx_if_gain, iq_file_path='/tmp/iq.dat', lo_offset=100e3, ppm=0, rf_gain=satnogs.not_set_rx_rf_gain, rigctl_port=4532, rx_freq=100e6, rx_sdr_device='usrpb200', waterfall_file_path='/tmp/waterfall.dat', wpm=20): gr.top_block.__init__(self, "CW Decoder") - Qt.QWidget.__init__(self) - self.setWindowTitle("CW Decoder") - qtgui.util.check_set_qss() - try: - self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc')) - except: - pass - self.top_scroll_layout = Qt.QVBoxLayout() - self.setLayout(self.top_scroll_layout) - self.top_scroll = Qt.QScrollArea() - self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame) - self.top_scroll_layout.addWidget(self.top_scroll) - self.top_scroll.setWidgetResizable(True) - self.top_widget = Qt.QWidget() - self.top_scroll.setWidget(self.top_widget) - self.top_layout = Qt.QVBoxLayout(self.top_widget) - self.top_grid_layout = Qt.QGridLayout() - self.top_layout.addLayout(self.top_grid_layout) - - self.settings = Qt.QSettings("GNU Radio", "satnogs_cw_decoder") - self.restoreGeometry(self.settings.value("geometry").toByteArray()) ################################################## # Parameters @@ -161,11 +127,6 @@ class satnogs_cw_decoder(gr.top_block, Qt.QWidget): self.connect((self.rational_resampler_xxx_0, 0), (self.satnogs_waterfall_sink_0, 0)) self.connect((self.satnogs_coarse_doppler_correction_cc_0, 0), (self.freq_xlating_fir_filter_xxx_0, 0)) - def closeEvent(self, event): - self.settings = Qt.QSettings("GNU Radio", "satnogs_cw_decoder") - self.settings.setValue("geometry", self.saveGeometry()) - event.accept() - def get_antenna(self): return self.antenna @@ -405,21 +366,9 @@ def main(top_block_cls=satnogs_cw_decoder, options=None): if options is None: options, _ = argument_parser().parse_args() - from distutils.version import StrictVersion - if StrictVersion(Qt.qVersion()) >= StrictVersion("4.5.0"): - style = gr.prefs().get_string('qtgui', 'style', 'raster') - Qt.QApplication.setGraphicsSystem(style) - qapp = Qt.QApplication(sys.argv) - tb = top_block_cls(antenna=options.antenna, bb_gain=options.bb_gain, cw_offset=options.cw_offset, decoded_data_file_path=options.decoded_data_file_path, dev_args=options.dev_args, doppler_correction_per_sec=options.doppler_correction_per_sec, enable_iq_dump=options.enable_iq_dump, file_path=options.file_path, if_gain=options.if_gain, iq_file_path=options.iq_file_path, lo_offset=options.lo_offset, ppm=options.ppm, rf_gain=options.rf_gain, rigctl_port=options.rigctl_port, rx_freq=options.rx_freq, rx_sdr_device=options.rx_sdr_device, waterfall_file_path=options.waterfall_file_path, wpm=options.wpm) tb.start() - tb.show() - - def quitting(): - tb.stop() - tb.wait() - qapp.connect(qapp, Qt.SIGNAL("aboutToQuit()"), quitting) - qapp.exec_() + tb.wait() if __name__ == '__main__':