not1mm 24.9.14__py3-none-any.whl → 24.9.22__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- not1mm/__main__.py +31 -17
- not1mm/data/MASTER.SCP +1155 -1554
- not1mm/data/cty.json +1 -1
- not1mm/data/new_contest.ui +9 -4
- not1mm/data/rttymacros.txt +24 -0
- not1mm/lib/cwinterface.py +29 -21
- not1mm/lib/fldigi_sendstring.py +23 -0
- not1mm/lib/lookup.py +7 -4
- not1mm/lib/plugin_common.py +9 -0
- not1mm/lib/version.py +1 -1
- not1mm/plugins/arrl_vhf_jan.py +2 -2
- not1mm/plugins/arrl_vhf_jun.py +2 -2
- not1mm/plugins/arrl_vhf_sep.py +2 -2
- not1mm/plugins/cq_ww_cw.py +34 -0
- not1mm/plugins/cq_ww_rtty.py +478 -0
- not1mm/plugins/cq_ww_ssb.py +34 -0
- not1mm/test.py +19 -4
- {not1mm-24.9.14.dist-info → not1mm-24.9.22.dist-info}/METADATA +4 -1
- {not1mm-24.9.14.dist-info → not1mm-24.9.22.dist-info}/RECORD +23 -20
- {not1mm-24.9.14.dist-info → not1mm-24.9.22.dist-info}/WHEEL +1 -1
- {not1mm-24.9.14.dist-info → not1mm-24.9.22.dist-info}/LICENSE +0 -0
- {not1mm-24.9.14.dist-info → not1mm-24.9.22.dist-info}/entry_points.txt +0 -0
- {not1mm-24.9.14.dist-info → not1mm-24.9.22.dist-info}/top_level.txt +0 -0
not1mm/__main__.py
CHANGED
@@ -66,6 +66,7 @@ from not1mm.lib.version import __version__
|
|
66
66
|
from not1mm.lib.versiontest import VersionTest
|
67
67
|
from not1mm.lib.ft8_watcher import FT8Watcher
|
68
68
|
from not1mm.lib.fldigi_watcher import FlDigiWatcher
|
69
|
+
from not1mm.lib.fldigi_sendstring import FlDigi_Comm
|
69
70
|
|
70
71
|
import not1mm.fsutils as fsutils
|
71
72
|
from not1mm.logwindow import LogWindow
|
@@ -172,6 +173,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
172
173
|
bandmap_window = None
|
173
174
|
vfo_window = None
|
174
175
|
lookup_service = None
|
176
|
+
fldigi_util = None
|
175
177
|
|
176
178
|
def __init__(self, *args, **kwargs):
|
177
179
|
super().__init__(*args, **kwargs)
|
@@ -611,18 +613,19 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
611
613
|
|
612
614
|
"""
|
613
615
|
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
self.contest
|
625
|
-
|
616
|
+
if result and result != "NONE":
|
617
|
+
datadict = {}
|
618
|
+
splitdata = result.upper().strip().split("<")
|
619
|
+
for data in splitdata:
|
620
|
+
if data:
|
621
|
+
tag = data.split(":")
|
622
|
+
if tag == ["EOR>"]:
|
623
|
+
break
|
624
|
+
datadict[tag[0]] = tag[1].split(">")[1].strip()
|
625
|
+
logger.debug(f"{datadict=}")
|
626
|
+
if hasattr(self.contest, "ft8_handler"):
|
627
|
+
self.contest.set_self(self)
|
628
|
+
self.contest.ft8_handler(datadict)
|
626
629
|
|
627
630
|
def setDarkMode(self, setdarkmode=False) -> None:
|
628
631
|
"""Forces a darkmode palette."""
|
@@ -1897,7 +1900,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
1897
1900
|
self.score.setText(str(score))
|
1898
1901
|
self.contest.reset_label(self)
|
1899
1902
|
if self.contest.name != "ICWC Medium Speed Test":
|
1900
|
-
if self.current_mode
|
1903
|
+
if self.current_mode in ("CW", "RTTY"):
|
1901
1904
|
self.sent.setText("599")
|
1902
1905
|
self.receive.setText("599")
|
1903
1906
|
else:
|
@@ -1951,7 +1954,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
1951
1954
|
"MSK144",
|
1952
1955
|
"JT65",
|
1953
1956
|
"JT9",
|
1954
|
-
"Q65"
|
1957
|
+
"Q65",
|
1955
1958
|
):
|
1956
1959
|
self.contact["Freq"] = round(
|
1957
1960
|
float(self.radio_state.get("vfoa", 0.0)) / 1000, 2
|
@@ -2339,6 +2342,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2339
2342
|
self.voice_process.voice_string(self.process_macro(function_key.toolTip()))
|
2340
2343
|
# self.voice_string(self.process_macro(function_key.toolTip()))
|
2341
2344
|
return
|
2345
|
+
if self.radio_state.get("mode") in ["RTTY"]:
|
2346
|
+
self.fldigi_util.send_string(self.process_macro(function_key.toolTip()))
|
2342
2347
|
if self.cw:
|
2343
2348
|
if self.pref.get("cwtype") == 3 and self.rig_control is not None:
|
2344
2349
|
self.rig_control.sendcw(self.process_macro(function_key.toolTip()))
|
@@ -2480,6 +2485,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2480
2485
|
except (RuntimeError, AttributeError):
|
2481
2486
|
...
|
2482
2487
|
|
2488
|
+
self.fldigi_util = FlDigi_Comm()
|
2489
|
+
|
2483
2490
|
if self.pref.get("useflrig", False):
|
2484
2491
|
logger.debug(
|
2485
2492
|
"Using flrig: %s",
|
@@ -2650,7 +2657,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2650
2657
|
fname = json_data.get("result", {}).get("fname", "")
|
2651
2658
|
name = json_data.get("result", {}).get("name", "")
|
2652
2659
|
grid = json_data.get("result", {}).get("grid", "")
|
2653
|
-
error_text = json_data.get("result", {}).get("error_text", "")
|
2660
|
+
# error_text = json_data.get("result", {}).get("error_text", "")
|
2654
2661
|
nickname = json_data.get("result", {}).get("nickname", "")
|
2655
2662
|
|
2656
2663
|
if self.contest:
|
@@ -2988,6 +2995,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2988
2995
|
self.set_band_indicator(band)
|
2989
2996
|
self.set_window_title()
|
2990
2997
|
self.clearinputs()
|
2998
|
+
self.read_cw_macros()
|
2991
2999
|
return
|
2992
3000
|
if mode == "SSB":
|
2993
3001
|
self.setmode("SSB")
|
@@ -3099,8 +3107,9 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3099
3107
|
if mode in ("RTTY", "DIGI-U", "DIGI-L"):
|
3100
3108
|
if self.current_mode != "RTTY":
|
3101
3109
|
self.current_mode = "RTTY"
|
3102
|
-
self.sent.setText("
|
3103
|
-
self.receive.setText("
|
3110
|
+
self.sent.setText("599")
|
3111
|
+
self.receive.setText("599")
|
3112
|
+
self.read_cw_macros()
|
3104
3113
|
|
3105
3114
|
def get_opon(self) -> None:
|
3106
3115
|
"""
|
@@ -3262,6 +3271,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3262
3271
|
"""
|
3263
3272
|
if self.radio_state.get("mode") == "CW":
|
3264
3273
|
macro_file = "cwmacros.txt"
|
3274
|
+
elif self.radio_state.get("mode") == "RTTY":
|
3275
|
+
macro_file = "rttymacros.txt"
|
3265
3276
|
else:
|
3266
3277
|
macro_file = "ssbmacros.txt"
|
3267
3278
|
if not (fsutils.USER_DATA_PATH / macro_file).exists():
|
@@ -3279,6 +3290,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3279
3290
|
logger.critical(
|
3280
3291
|
f"Could not open file {fsutils.USER_DATA_PATH / macro_file} {err}"
|
3281
3292
|
)
|
3293
|
+
self.read_cw_macros()
|
3282
3294
|
|
3283
3295
|
def read_cw_macros(self) -> None:
|
3284
3296
|
"""
|
@@ -3289,6 +3301,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3289
3301
|
|
3290
3302
|
if self.radio_state.get("mode") == "CW":
|
3291
3303
|
macro_file = "cwmacros.txt"
|
3304
|
+
elif self.radio_state.get("mode") == "RTTY":
|
3305
|
+
macro_file = "rttymacros.txt"
|
3292
3306
|
else:
|
3293
3307
|
macro_file = "ssbmacros.txt"
|
3294
3308
|
|