not1mm 25.4.19.1__py3-none-any.whl → 25.4.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 +37 -37
- not1mm/bandmap.py +2 -2
- not1mm/lib/cat_interface.py +53 -35
- not1mm/lib/version.py +1 -1
- not1mm/radio.py +2 -2
- not1mm/ratewindow.py +1 -2
- not1mm/vfo.py +2 -0
- {not1mm-25.4.19.1.dist-info → not1mm-25.4.22.dist-info}/METADATA +3 -1
- {not1mm-25.4.19.1.dist-info → not1mm-25.4.22.dist-info}/RECORD +13 -13
- {not1mm-25.4.19.1.dist-info → not1mm-25.4.22.dist-info}/WHEEL +1 -1
- {not1mm-25.4.19.1.dist-info → not1mm-25.4.22.dist-info}/entry_points.txt +0 -0
- {not1mm-25.4.19.1.dist-info → not1mm-25.4.22.dist-info}/licenses/LICENSE +0 -0
- {not1mm-25.4.19.1.dist-info → not1mm-25.4.22.dist-info}/top_level.txt +0 -0
not1mm/__main__.py
CHANGED
@@ -3192,12 +3192,12 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3192
3192
|
self.pref.get("CAT_ip", "127.0.0.1"),
|
3193
3193
|
int(self.pref.get("CAT_port", 12345)),
|
3194
3194
|
)
|
3195
|
-
self.rig_control.delta = int(self.pref.get("CAT_polldelta", 555))
|
3196
|
-
self.rig_control.moveToThread(self.radio_thread)
|
3197
|
-
self.radio_thread.started.connect(self.rig_control.run)
|
3198
|
-
self.radio_thread.finished.connect(self.rig_control.deleteLater)
|
3199
|
-
self.rig_control.poll_callback.connect(self.poll_radio)
|
3200
|
-
self.radio_thread.start()
|
3195
|
+
# self.rig_control.delta = int(self.pref.get("CAT_polldelta", 555))
|
3196
|
+
# self.rig_control.moveToThread(self.radio_thread)
|
3197
|
+
# self.radio_thread.started.connect(self.rig_control.run)
|
3198
|
+
# self.radio_thread.finished.connect(self.rig_control.deleteLater)
|
3199
|
+
# self.rig_control.poll_callback.connect(self.poll_radio)
|
3200
|
+
# self.radio_thread.start()
|
3201
3201
|
|
3202
3202
|
elif self.pref.get("userigctld", False) is True:
|
3203
3203
|
logger.debug(
|
@@ -3209,24 +3209,24 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3209
3209
|
self.pref.get("CAT_ip", "127.0.0.1"),
|
3210
3210
|
int(self.pref.get("CAT_port", 4532)),
|
3211
3211
|
)
|
3212
|
-
self.rig_control.delta = int(self.pref.get("CAT_polldelta", 555))
|
3213
|
-
self.rig_control.moveToThread(self.radio_thread)
|
3214
|
-
self.radio_thread.started.connect(self.rig_control.run)
|
3215
|
-
self.radio_thread.finished.connect(self.rig_control.deleteLater)
|
3216
|
-
self.rig_control.poll_callback.connect(self.poll_radio)
|
3217
|
-
self.radio_thread.start()
|
3212
|
+
# self.rig_control.delta = int(self.pref.get("CAT_polldelta", 555))
|
3213
|
+
# self.rig_control.moveToThread(self.radio_thread)
|
3214
|
+
# self.radio_thread.started.connect(self.rig_control.run)
|
3215
|
+
# self.radio_thread.finished.connect(self.rig_control.deleteLater)
|
3216
|
+
# self.rig_control.poll_callback.connect(self.poll_radio)
|
3217
|
+
# self.radio_thread.start()
|
3218
3218
|
else:
|
3219
3219
|
self.rig_control = Radio(
|
3220
3220
|
"fake",
|
3221
3221
|
self.pref.get("CAT_ip", "127.0.0.1"),
|
3222
3222
|
int(self.pref.get("CAT_port", 0000)),
|
3223
3223
|
)
|
3224
|
-
|
3225
|
-
|
3226
|
-
|
3227
|
-
|
3228
|
-
|
3229
|
-
|
3224
|
+
self.rig_control.delta = int(self.pref.get("CAT_polldelta", 555))
|
3225
|
+
self.rig_control.moveToThread(self.radio_thread)
|
3226
|
+
self.radio_thread.started.connect(self.rig_control.run)
|
3227
|
+
self.radio_thread.finished.connect(self.rig_control.deleteLater)
|
3228
|
+
self.rig_control.poll_callback.connect(self.poll_radio)
|
3229
|
+
self.radio_thread.start()
|
3230
3230
|
|
3231
3231
|
self.cw = None
|
3232
3232
|
if (
|
@@ -3509,7 +3509,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3509
3509
|
self.callsign.setCursorPosition(position)
|
3510
3510
|
|
3511
3511
|
if " " in text:
|
3512
|
-
if stripped_text in ["CW", "RTTY", "SSB", "FM", "AM"]:
|
3512
|
+
if stripped_text in ["CW", "RTTY", "SSB", "FM", "AM", "LSB", "USB"]:
|
3513
3513
|
self.change_mode(stripped_text)
|
3514
3514
|
return
|
3515
3515
|
if stripped_text == "OPON":
|
@@ -3674,7 +3674,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3674
3674
|
self.clearinputs()
|
3675
3675
|
self.read_macros()
|
3676
3676
|
return
|
3677
|
-
if mode in ["AM", "FM"]:
|
3677
|
+
if mode in ["AM", "FM", "LSB", "USB"]:
|
3678
3678
|
if self.rig_control:
|
3679
3679
|
if self.rig_control.online:
|
3680
3680
|
self.rig_control.set_mode(mode)
|
@@ -3925,9 +3925,9 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3925
3925
|
self.contact["Band"] = get_logged_band(str(vfo))
|
3926
3926
|
self.set_band_indicator(band)
|
3927
3927
|
|
3928
|
-
if self.rig_control:
|
3929
|
-
|
3930
|
-
|
3928
|
+
# if self.rig_control:
|
3929
|
+
# if self.rig_control.online:
|
3930
|
+
# print(f"{self.rig_control.get_modes()=}=======================")
|
3931
3931
|
|
3932
3932
|
if self.radio_state.get("mode") != mode:
|
3933
3933
|
info_dirty = True
|
@@ -3959,26 +3959,26 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3959
3959
|
):
|
3960
3960
|
self.setmode("RTTY")
|
3961
3961
|
|
3962
|
-
cmd = {}
|
3963
|
-
cmd["cmd"] = "RADIO_STATE"
|
3964
|
-
cmd["band"] = band
|
3965
|
-
cmd["vfoa"] = vfo
|
3966
|
-
cmd["mode"] = mode
|
3967
|
-
cmd["bw"] = bw
|
3968
3962
|
if self.bandmap_window:
|
3963
|
+
cmd = {}
|
3964
|
+
cmd["cmd"] = "RADIO_STATE"
|
3965
|
+
cmd["band"] = band
|
3966
|
+
cmd["vfoa"] = vfo
|
3967
|
+
cmd["mode"] = mode
|
3968
|
+
cmd["bw"] = bw
|
3969
3969
|
self.bandmap_window.msg_from_main(cmd)
|
3970
3970
|
if info_dirty:
|
3971
3971
|
try:
|
3972
3972
|
logger.debug("VFO: %s MODE: %s BW: %s", vfo, mode, bw)
|
3973
3973
|
self.set_window_title()
|
3974
|
-
cmd = {}
|
3975
|
-
cmd["cmd"] = "RADIO_STATE"
|
3976
|
-
cmd["band"] = band
|
3977
|
-
cmd["vfoa"] = vfo
|
3978
|
-
cmd["mode"] = mode
|
3979
|
-
cmd["bw"] = bw
|
3980
|
-
if self.bandmap_window:
|
3981
|
-
|
3974
|
+
# cmd = {}
|
3975
|
+
# cmd["cmd"] = "RADIO_STATE"
|
3976
|
+
# cmd["band"] = band
|
3977
|
+
# cmd["vfoa"] = vfo
|
3978
|
+
# cmd["mode"] = mode
|
3979
|
+
# cmd["bw"] = bw
|
3980
|
+
# if self.bandmap_window:
|
3981
|
+
# self.bandmap_window.msg_from_main(cmd)
|
3982
3982
|
if self.n1mm:
|
3983
3983
|
self.n1mm.radio_info["Freq"] = vfo[:-1]
|
3984
3984
|
self.n1mm.radio_info["TXFreq"] = vfo[:-1]
|
not1mm/bandmap.py
CHANGED
@@ -385,7 +385,7 @@ class BandMapWindow(QDockWidget):
|
|
385
385
|
|
386
386
|
def msg_from_main(self, packet):
|
387
387
|
""""""
|
388
|
-
if self.active is False:
|
388
|
+
if self.active is False or not self.isVisible():
|
389
389
|
return
|
390
390
|
if packet.get("cmd", "") == "RADIO_STATE":
|
391
391
|
self.set_band(packet.get("band") + "m", False)
|
@@ -688,7 +688,7 @@ class BandMapWindow(QDockWidget):
|
|
688
688
|
def update_stations(self):
|
689
689
|
"""doc"""
|
690
690
|
self.update_timer.setInterval(UPDATE_INTERVAL)
|
691
|
-
if self.active is False:
|
691
|
+
if self.active is False or not self.isVisible():
|
692
692
|
return
|
693
693
|
self.clear_all_callsign_from_scene()
|
694
694
|
self.spot_aging()
|
not1mm/lib/cat_interface.py
CHANGED
@@ -71,6 +71,7 @@ class CAT:
|
|
71
71
|
self.host = host
|
72
72
|
self.port = port
|
73
73
|
self.online = False
|
74
|
+
self.rigctld_bw = "0"
|
74
75
|
self.fake_radio = {
|
75
76
|
"vfo": "14032000",
|
76
77
|
"mode": "CW",
|
@@ -121,6 +122,7 @@ class CAT:
|
|
121
122
|
|
122
123
|
def __initialize_rigctrld(self):
|
123
124
|
try:
|
125
|
+
logger.debug("Connecting to rigctrld")
|
124
126
|
self.rigctrlsocket = socket.socket()
|
125
127
|
self.rigctrlsocket.settimeout(0.5)
|
126
128
|
self.rigctrlsocket.connect((self.host, self.port))
|
@@ -154,6 +156,7 @@ class CAT:
|
|
154
156
|
except (socket.error, UnicodeDecodeError):
|
155
157
|
...
|
156
158
|
self.rigctrlsocket.settimeout(0.5)
|
159
|
+
# logger.debug("%s", dump)
|
157
160
|
return dump
|
158
161
|
|
159
162
|
def sendvoicememory(self, memoryspot=1):
|
@@ -165,8 +168,9 @@ class CAT:
|
|
165
168
|
"""..."""
|
166
169
|
try:
|
167
170
|
self.online = True
|
168
|
-
self.rigctrlsocket.send(bytes(f"
|
169
|
-
|
171
|
+
self.rigctrlsocket.send(bytes(f"+\\send_voice_mem {memoryspot}\n", "utf-8"))
|
172
|
+
info = self.__get_serial_string()
|
173
|
+
logger.debug("%s", info)
|
170
174
|
return
|
171
175
|
except socket.error as exception:
|
172
176
|
self.online = False
|
@@ -188,7 +192,8 @@ class CAT:
|
|
188
192
|
try:
|
189
193
|
self.online = True
|
190
194
|
self.rigctrlsocket.send(bytes(f"b{texttosend}\n", "utf-8"))
|
191
|
-
|
195
|
+
info = self.__get_serial_string()
|
196
|
+
logger.debug("%s", info)
|
192
197
|
return True
|
193
198
|
except socket.error as exception:
|
194
199
|
self.online = False
|
@@ -204,7 +209,8 @@ class CAT:
|
|
204
209
|
try:
|
205
210
|
self.online = True
|
206
211
|
self.rigctrlsocket.send(bytes(f"L KEYSPD {speed}\n", "utf-8"))
|
207
|
-
|
212
|
+
info = self.__get_serial_string()
|
213
|
+
logger.debug("%s", info)
|
208
214
|
return
|
209
215
|
except socket.error as exception:
|
210
216
|
self.online = False
|
@@ -306,6 +312,7 @@ class CAT:
|
|
306
312
|
self.online = True
|
307
313
|
self.rigctrlsocket.send(b"|f\n")
|
308
314
|
report = self.__get_serial_string().strip()
|
315
|
+
logger.debug("%s", report)
|
309
316
|
if "get_freq:|" in report and "RPRT 0" in report:
|
310
317
|
seg_rpt = report.split("|")
|
311
318
|
return seg_rpt[1].split(" ")[1]
|
@@ -360,8 +367,10 @@ class CAT:
|
|
360
367
|
self.rigctrlsocket.send(b"|m\n")
|
361
368
|
# get_mode:|Mode: CW|Passband: 500|RPRT 0
|
362
369
|
report = self.__get_serial_string().strip()
|
370
|
+
logger.debug("%s", report)
|
363
371
|
if "get_mode:|" in report and "RPRT 0" in report:
|
364
372
|
seg_rpt = report.split("|")
|
373
|
+
self.rigctld_bw = seg_rpt[2].split(" ")[1]
|
365
374
|
return seg_rpt[1].split(" ")[1]
|
366
375
|
except IndexError as exception:
|
367
376
|
logger.debug("%s", f"{exception}")
|
@@ -403,25 +412,27 @@ class CAT:
|
|
403
412
|
|
404
413
|
def __getbw_rigctld(self):
|
405
414
|
"""return bandwidth"""
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
self.
|
424
|
-
return ""
|
415
|
+
return self.rigctld_bw
|
416
|
+
# if self.rigctrlsocket:
|
417
|
+
# try:
|
418
|
+
# self.online = True
|
419
|
+
# self.rigctrlsocket.send(b"|m\n")
|
420
|
+
# # get_mode:|Mode: CW|Passband: 500|RPRT 0
|
421
|
+
# report = self.__get_serial_string().strip()
|
422
|
+
# logger.debug("%s", report)
|
423
|
+
# if "get_mode:|" in report and "RPRT 0" in report:
|
424
|
+
# seg_rpt = report.split("|")
|
425
|
+
# return seg_rpt[2].split(" ")[1]
|
426
|
+
|
427
|
+
# except IndexError as exception:
|
428
|
+
# logger.debug("%s", f"{exception}")
|
429
|
+
# except socket.error as exception:
|
430
|
+
# self.online = False
|
431
|
+
# logger.debug("%s", f"{exception}")
|
432
|
+
# self.rigctrlsocket = None
|
433
|
+
# return ""
|
434
|
+
# self.__initialize_rigctrld()
|
435
|
+
# return ""
|
425
436
|
|
426
437
|
def get_power(self):
|
427
438
|
"""Get power level from rig"""
|
@@ -454,6 +465,7 @@ class CAT:
|
|
454
465
|
self.rigctrlsocket.send(b"|l RFPOWER\n")
|
455
466
|
# get_level: RFPOWER|0.000000|RPRT 0
|
456
467
|
report = self.__get_serial_string().strip()
|
468
|
+
logger.debug("%s", report)
|
457
469
|
if "get_level: RFPOWER|" in report and "RPRT 0" in report:
|
458
470
|
seg_rpt = report.split("|")
|
459
471
|
return int(float(seg_rpt[1]) * 100)
|
@@ -587,8 +599,9 @@ class CAT:
|
|
587
599
|
if self.rigctrlsocket:
|
588
600
|
try:
|
589
601
|
self.online = True
|
590
|
-
self.rigctrlsocket.send(bytes(f"F {freq}\n", "utf-8"))
|
591
|
-
|
602
|
+
self.rigctrlsocket.send(bytes(f"|F {freq}\n", "utf-8"))
|
603
|
+
info = self.__get_serial_string()
|
604
|
+
logger.debug("%s", info)
|
592
605
|
return True
|
593
606
|
except socket.error as exception:
|
594
607
|
self.online = False
|
@@ -633,10 +646,12 @@ class CAT:
|
|
633
646
|
if self.rigctrlsocket:
|
634
647
|
try:
|
635
648
|
self.online = True
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
649
|
+
# logger.debug(f"\nM {mode} 0\n")
|
650
|
+
self.rigctrlsocket.send(bytes(f"\n|M {mode} 0\n", "utf-8"))
|
651
|
+
# if self.__get_serial_string() != "RPRT 0\n":
|
652
|
+
# self.rigctrlsocket.send(bytes(f"\n|M {mode} 0\n", "utf-8"))
|
653
|
+
info = self.__get_serial_string()
|
654
|
+
logger.debug("%s", info)
|
640
655
|
return True
|
641
656
|
except socket.error as exception:
|
642
657
|
self.online = False
|
@@ -674,11 +689,12 @@ class CAT:
|
|
674
689
|
|
675
690
|
def __setpower_rigctld(self, power):
|
676
691
|
if power.isnumeric() and int(power) >= 1 and int(power) <= 100:
|
677
|
-
rig_cmd = bytes(f"L RFPOWER {str(float(power) / 100)}\n", "utf-8")
|
692
|
+
rig_cmd = bytes(f"|L RFPOWER {str(float(power) / 100)}\n", "utf-8")
|
678
693
|
try:
|
679
694
|
self.online = True
|
680
695
|
self.rigctrlsocket.send(rig_cmd)
|
681
|
-
|
696
|
+
info = self.__get_serial_string()
|
697
|
+
logger.debug("%s", info)
|
682
698
|
except socket.error:
|
683
699
|
self.online = False
|
684
700
|
self.rigctrlsocket = None
|
@@ -704,12 +720,13 @@ class CAT:
|
|
704
720
|
# Get 'PTT' status.
|
705
721
|
# Returns PTT as a value in set_ptt above.
|
706
722
|
|
707
|
-
rig_cmd = bytes("T 1\n", "utf-8")
|
723
|
+
rig_cmd = bytes("|T 1\n", "utf-8")
|
708
724
|
logger.debug("%s", f"{rig_cmd}")
|
709
725
|
try:
|
710
726
|
self.online = True
|
711
727
|
self.rigctrlsocket.send(rig_cmd)
|
712
|
-
|
728
|
+
info = self.__get_serial_string()
|
729
|
+
logger.debug("%s", info)
|
713
730
|
except socket.error:
|
714
731
|
self.online = False
|
715
732
|
self.rigctrlsocket = None
|
@@ -743,12 +760,13 @@ class CAT:
|
|
743
760
|
|
744
761
|
def __ptt_off_rigctld(self):
|
745
762
|
"""Toggle PTT state off"""
|
746
|
-
rig_cmd = bytes("T 0\n", "utf-8")
|
763
|
+
rig_cmd = bytes("|T 0\n", "utf-8")
|
747
764
|
logger.debug("%s", f"{rig_cmd}")
|
748
765
|
try:
|
749
766
|
self.online = True
|
750
767
|
self.rigctrlsocket.send(rig_cmd)
|
751
|
-
|
768
|
+
into = self.__get_serial_string()
|
769
|
+
logger.debug("%s", into)
|
752
770
|
except socket.error:
|
753
771
|
self.online = False
|
754
772
|
self.rigctrlsocket = None
|
not1mm/lib/version.py
CHANGED
not1mm/radio.py
CHANGED
@@ -15,7 +15,7 @@ import logging
|
|
15
15
|
from PyQt6.QtCore import QObject, pyqtSignal, QThread, QEventLoop
|
16
16
|
from not1mm.lib.cat_interface import CAT
|
17
17
|
|
18
|
-
logger = logging.getLogger("
|
18
|
+
logger = logging.getLogger("radio")
|
19
19
|
|
20
20
|
|
21
21
|
class Radio(QObject):
|
@@ -103,7 +103,7 @@ class Radio(QObject):
|
|
103
103
|
except QEventLoop:
|
104
104
|
...
|
105
105
|
# QThread.msleep(int(self.delta / 2))
|
106
|
-
QThread.msleep(
|
106
|
+
QThread.msleep(100)
|
107
107
|
|
108
108
|
def store_last_data_mode(self, the_mode: str = ""):
|
109
109
|
"""if the last mode is a data mode, save it."""
|
not1mm/ratewindow.py
CHANGED
@@ -118,9 +118,8 @@ class RateWindow(QDockWidget):
|
|
118
118
|
|
119
119
|
# WHERE datetime(timestamp) > datetime(current_timestamp, '-60 minutes')
|
120
120
|
|
121
|
-
if not self.active:
|
121
|
+
if not self.active or not self.isVisible():
|
122
122
|
return
|
123
|
-
|
124
123
|
# Get Q's in the 60 Minutes
|
125
124
|
query = f"select (julianday(MAX(ts)) - julianday(MIN(ts))) * 24 * 60 as timespan, count(*) as items from (select * from dxlog where ContestNR = {self.database.current_contest} and datetime(TS) > datetime(current_timestamp, '-60 minutes'));"
|
126
125
|
result = self.database.exec_sql(query)
|
not1mm/vfo.py
CHANGED
@@ -189,6 +189,8 @@ class VfoWindow(QDockWidget):
|
|
189
189
|
Poll radio via CAT asking for VFO state.
|
190
190
|
If it's with in the HAM bands set the vfo knob to match the radio.
|
191
191
|
"""
|
192
|
+
if not self.isVisible():
|
193
|
+
return
|
192
194
|
if self.rig_control:
|
193
195
|
if self.rig_control.online is False:
|
194
196
|
self.rig_control.reinit()
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: not1mm
|
3
|
-
Version: 25.4.
|
3
|
+
Version: 25.4.22
|
4
4
|
Summary: NOT1MM Logger
|
5
5
|
Author-email: Michael Bridak <michael.bridak@gmail.com>
|
6
6
|
License: GPL-3.0-or-later
|
@@ -256,6 +256,8 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
|
|
256
256
|
|
257
257
|
## Recent Changes
|
258
258
|
|
259
|
+
- [25-4-22] Mostly code cleanup. Not running some code when not needed.
|
260
|
+
- [25-4-21] Add a couple more debug messages. Add LSB/USB to input-able commands to the callsign field.
|
259
261
|
- [25-4-19-1] Add FM and AM as input-able commands to the callsign field.
|
260
262
|
- [25-4-19] Changed S&P QSY wipe from 50hz to 500hz.
|
261
263
|
- [25-4-18] Option to clear input fields when QSY in S&P mode.
|
@@ -1,16 +1,16 @@
|
|
1
1
|
not1mm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
2
|
-
not1mm/__main__.py,sha256=
|
3
|
-
not1mm/bandmap.py,sha256
|
2
|
+
not1mm/__main__.py,sha256=_rZzYXQyD1Ded9AENfUZRRyyJKPtWgo0QOj5xq0ofD0,156668
|
3
|
+
not1mm/bandmap.py,sha256=n8mrRzo_8b1muzICk8nSpvaiAV4NyNoUkZBa6Rjprns,29968
|
4
4
|
not1mm/checkwindow.py,sha256=zEHlw40j6Wr3rvKbCQf2lcezCoiZqaBqEvBjQU5aKW0,7630
|
5
5
|
not1mm/fsutils.py,sha256=ukHKxKTeNKxKwqRaJjtzRShL4X5Xl0jRBbADyy3Ifp8,1701
|
6
6
|
not1mm/logwindow.py,sha256=e36t4ebyhLF6UR3y3HJWUwL1rzeqRFzdek7NAYINJNM,42565
|
7
7
|
not1mm/lookupservice.py,sha256=GkY_qHZfrW6XHf8upIoaG4hCFqm0fg6Ganu9ConGrIc,2628
|
8
|
-
not1mm/radio.py,sha256=
|
9
|
-
not1mm/ratewindow.py,sha256=
|
8
|
+
not1mm/radio.py,sha256=4Lysf9BY3vdtYCHwKfzO5WN7IGyh4_lKSVuQ6F4Z08g,5536
|
9
|
+
not1mm/ratewindow.py,sha256=vMM56sOWbglQXf16Rhhgx2V4uaiGzTkfmcOmhgNd1GQ,7018
|
10
10
|
not1mm/rtc_service.py,sha256=axAwnCBuTr-QL0YwXtWvg9tjwhcFsiiEZFgFjOofX6k,2816
|
11
11
|
not1mm/statistics.py,sha256=YbXBCr8wtmXlF21ojgsh0jY_G-dnCApUFe87JZclZAI,7712
|
12
12
|
not1mm/test.py,sha256=BNhsSvLnNG5hN4pywIWnj4pUBI-wQYY4Ejfbl97knmw,1198
|
13
|
-
not1mm/vfo.py,sha256=
|
13
|
+
not1mm/vfo.py,sha256=LbGjJKb6ipDEbEEcaeIR2DiEpReolamSzuY25rU3iOo,8997
|
14
14
|
not1mm/voice_keying.py,sha256=HZImqC5NgnyW2nknNYQ3b7I8-6S_hxpq5G4RcIRXn_k,3005
|
15
15
|
not1mm/data/JetBrainsMono-ExtraLight.ttf,sha256=g5Hn7BPounWMGDj1a8zZcyKMz03HSqW__pUluRR7Evg,274144
|
16
16
|
not1mm/data/MASTER.SCP,sha256=LuF8dTtdRKaqSyzJ1nl7zW2-gs5ehQiXiI41t5Zo9Bo,362769
|
@@ -100,7 +100,7 @@ not1mm/data/phonetics/yourcall.wav,sha256=4kheHJmCiRDL2kjhlgXQ8_u_eEMgKxiNGu5UBk
|
|
100
100
|
not1mm/data/phonetics/z.wav,sha256=arafCi7fwmBLdVDI-PRyaL4U-03PIQDhffwY5noJ_2c,51768
|
101
101
|
not1mm/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
102
102
|
not1mm/lib/about.py,sha256=sWycfGcruN3SaEe4JmaJ61K6D8Itq0WxpUYT-lEcmYM,416
|
103
|
-
not1mm/lib/cat_interface.py,sha256=
|
103
|
+
not1mm/lib/cat_interface.py,sha256=zMSGSVl7B_hX2XIpTpdyepedyfFTm0rFVWRpSZvadoc,26637
|
104
104
|
not1mm/lib/cwinterface.py,sha256=rKUnqljHQC_Iljq4TCmAgSPe49lWbKcfxg58cE8YX5Y,5177
|
105
105
|
not1mm/lib/database.py,sha256=fykyaQaTa_Pwde51f09Odbexy1mlUqObv0fjZ7hf3E0,51693
|
106
106
|
not1mm/lib/edit_contact.py,sha256=Ki9bGPpqyQQBB1cU8VIBDCal3lbXeQ6qxhzklmhE2_w,353
|
@@ -118,7 +118,7 @@ not1mm/lib/plugin_common.py,sha256=D1OBjyLmX7zuSPqgTCmHwXzAKA12J_zTQItvyIem-4Y,1
|
|
118
118
|
not1mm/lib/select_contest.py,sha256=WsptLuwkouIHeocJL3oZ6-eUfEnhpwdc-x7eMZ_TIVM,359
|
119
119
|
not1mm/lib/settings.py,sha256=cC83Nw4pGLWyHybIflDR1ylX9P7Hq2P5b5yFZtx-llY,15410
|
120
120
|
not1mm/lib/super_check_partial.py,sha256=hwT2NRwobu0PLDyw6ltmbmcAtGBD02CKGFbgGWjXMqA,2334
|
121
|
-
not1mm/lib/version.py,sha256=
|
121
|
+
not1mm/lib/version.py,sha256=ziScggUquUMYDmJTMkk17HkC-imVcSH6S0USjwd6GY8,48
|
122
122
|
not1mm/lib/versiontest.py,sha256=8vDNptuBBunn-1IGkjNaquehqBYUJyjrPSF8Igmd4_Y,1286
|
123
123
|
not1mm/plugins/10_10_fall_cw.py,sha256=oJh3JKqjOpnWElSlZpiQ631UnaOd8qra5s9bl_QoInk,14783
|
124
124
|
not1mm/plugins/10_10_spring_cw.py,sha256=p7dSDtbFK0e6Xouw2V6swYn3VFVgHKyx4IfRWyBjMZY,14786
|
@@ -179,9 +179,9 @@ not1mm/plugins/stew_perry_topband.py,sha256=3U-Dr28haBTqTaZWLiC1qHQBmLsLENDL-ihy
|
|
179
179
|
not1mm/plugins/ukeidx.py,sha256=0ABGW7_9Ui0Rgr8mkPBxOJokAIerM1a4-HWnl6VsnV8,19105
|
180
180
|
not1mm/plugins/weekly_rtty.py,sha256=C8Xs3Q5UgSYx-mFFar8BVARWtmqlyrbeC98Ubzb4UN8,20128
|
181
181
|
not1mm/plugins/winter_field_day.py,sha256=hmAMgkdqIXtnCNyUp8J9Bb8liN8wj10wps6ROuG-Bok,15284
|
182
|
-
not1mm-25.4.
|
183
|
-
not1mm-25.4.
|
184
|
-
not1mm-25.4.
|
185
|
-
not1mm-25.4.
|
186
|
-
not1mm-25.4.
|
187
|
-
not1mm-25.4.
|
182
|
+
not1mm-25.4.22.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
183
|
+
not1mm-25.4.22.dist-info/METADATA,sha256=PmAUZdFCwd3J4Y0vdPb2R9T_yowMus5u1cR4svjS5qY,40596
|
184
|
+
not1mm-25.4.22.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
|
185
|
+
not1mm-25.4.22.dist-info/entry_points.txt,sha256=pMcZk_0dxFgLkcUkF0Q874ojpwOmF3OL6EKw9LgvocM,47
|
186
|
+
not1mm-25.4.22.dist-info/top_level.txt,sha256=0YmTxEcDzQlzXub-lXASvoLpg_mt1c2thb5cVkDf5J4,7
|
187
|
+
not1mm-25.4.22.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|