From 6e6100f766a3e436444dbda7705eb2d4b03ace79 Mon Sep 17 00:00:00 2001 From: Dawid SQ6EMM Date: Fri, 7 Mar 2025 09:52:23 +0100 Subject: [PATCH] Add possibility to set frequency tolerance (initial for jt4 only) Signed-off-by: Dawid SQ6EMM --- owrx/config/defaults.py | 2 +- owrx/controllers/settings/decoding.py | 4 ++-- owrx/wsjt.py | 9 ++++----- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/owrx/config/defaults.py b/owrx/config/defaults.py index 30e3da5d..818d16f6 100644 --- a/owrx/config/defaults.py +++ b/owrx/config/defaults.py @@ -152,11 +152,11 @@ defaultConfig = PropertyLayer( decoding_queue_workers=2, decoding_queue_length=10, wsjt_decoding_depth=3, - wsjt_frequency_tolerance=20, wsjt_decoding_depths=PropertyLayer(jt65=1), fst4_enabled_intervals=[15, 30], fst4w_enabled_intervals=[120, 300], jt4_enabled_submodes=["F", "G"], + jt4_frequency_tolerance=20, q65_enabled_combinations=["A30", "E120", "C60"], js8_enabled_profiles=["normal", "slow"], js8_decoding_depth=3, diff --git a/owrx/controllers/settings/decoding.py b/owrx/controllers/settings/decoding.py index ced6fa07..1c3e32a7 100644 --- a/owrx/controllers/settings/decoding.py +++ b/owrx/controllers/settings/decoding.py @@ -71,8 +71,8 @@ class DecodingSettingsController(SettingsFormController): infotext="A higher decoding depth will allow more results, but will also consume more cpu", ), NumberInput( - "wsjt_frequency_tolerance", - "Default WSJT frequency tolerance", + "jt4_frequency_tolerance", + "Default JT4 frequency tolerance", infotext="A higher frequency tolerance will allow more decodes, but will also consume more cpu", ), WsjtDecodingDepthsInput( diff --git a/owrx/wsjt.py b/owrx/wsjt.py index 78ced60a..02bc67b7 100644 --- a/owrx/wsjt.py +++ b/owrx/wsjt.py @@ -29,14 +29,13 @@ class WsjtProfile(AudioChopperProfile, metaclass=ABCMeta): # default when no setting is provided return 3 - def frequency_tolerance(self): + def jt4_frequency_tolerance(self): pm = Config.get() - if "wsjt_frequency_tolerance" in pm: - return pm["wsjt_frequency_tolerance"] + if "jt4_frequency_tolerance" in pm: + return pm["jt4_frequency_tolerance"] # default when no setting is provided return 20 - def getTimestampFormat(self): if self.getInterval() < 60: return "%H%M%S" @@ -230,7 +229,7 @@ class JT4Profile(WsjtProfile): return self.submode def decoder_commandline(self, file): - return ["jt9", "-4", "-b", str(self.submode), "-d", str(self.decoding_depth()), "-F", str(self.frequency_tolerance()), file] + return ["jt9", "-4", "-b", str(self.submode), "-d", str(self.decoding_depth()), "-F", str(self.jt4_frequency_tolerance()), file] def getMode(self): return "JT4"