not1mm 24.10.23__py3-none-any.whl → 24.10.24__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 +4 -0
- not1mm/data/phonetics/cq2.wav +0 -0
- not1mm/lib/version.py +1 -1
- not1mm/plugins/cq_ww_cw.py +9 -0
- not1mm/vfo.py +16 -46
- {not1mm-24.10.23.dist-info → not1mm-24.10.24.dist-info}/METADATA +4 -3
- {not1mm-24.10.23.dist-info → not1mm-24.10.24.dist-info}/RECORD +11 -10
- {not1mm-24.10.23.dist-info → not1mm-24.10.24.dist-info}/LICENSE +0 -0
- {not1mm-24.10.23.dist-info → not1mm-24.10.24.dist-info}/WHEEL +0 -0
- {not1mm-24.10.23.dist-info → not1mm-24.10.24.dist-info}/entry_points.txt +0 -0
- {not1mm-24.10.23.dist-info → not1mm-24.10.24.dist-info}/top_level.txt +0 -0
not1mm/__main__.py
CHANGED
@@ -746,6 +746,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
746
746
|
return
|
747
747
|
if msg.get("cmd", "") == "TUNE":
|
748
748
|
# b'{"cmd": "TUNE", "freq": 7.0235, "spot": "MM0DGI"}'
|
749
|
+
if self.vfo_window:
|
750
|
+
self.vfo_window.msg_from_main(msg)
|
749
751
|
vfo = msg.get("freq")
|
750
752
|
vfo = float(vfo) * 1000000
|
751
753
|
self.radio_state["vfoa"] = int(vfo)
|
@@ -880,6 +882,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
880
882
|
self.bandmap_window.msg_from_main(cmd)
|
881
883
|
if self.check_window:
|
882
884
|
self.check_window.msg_from_main(cmd)
|
885
|
+
if self.vfo_window:
|
886
|
+
self.vfo_window.msg_from_main(cmd)
|
883
887
|
|
884
888
|
if setdarkmode:
|
885
889
|
darkPalette = QPalette()
|
Binary file
|
not1mm/lib/version.py
CHANGED
not1mm/plugins/cq_ww_cw.py
CHANGED
@@ -45,6 +45,7 @@ from PyQt6 import QtWidgets
|
|
45
45
|
|
46
46
|
from not1mm.lib.plugin_common import gen_adif, get_points
|
47
47
|
from not1mm.lib.version import __version__
|
48
|
+
from not1mm.lib.ham_utility import get_logged_band
|
48
49
|
|
49
50
|
logger = logging.getLogger(__name__)
|
50
51
|
|
@@ -150,6 +151,14 @@ def prefill(self):
|
|
150
151
|
|
151
152
|
def points(self):
|
152
153
|
"""Calc point"""
|
154
|
+
# @awandahl Retrieve callsign and band information
|
155
|
+
call = self.contact.get("Call", "")
|
156
|
+
band = float(get_logged_band(str(int(self.contact.get("Freq", 0.0) * 1000))))
|
157
|
+
|
158
|
+
# @awandahl Check if the contact is a duplicate on the current band
|
159
|
+
dupe_check = self.database.check_dupe_on_band(call, band)
|
160
|
+
if dupe_check.get("isdupe", 0) > 0:
|
161
|
+
return 0 # @awandahl Return zero points for duplicates
|
153
162
|
result = self.cty_lookup(self.station.get("Call", ""))
|
154
163
|
if result:
|
155
164
|
for item in result.items():
|
not1mm/vfo.py
CHANGED
@@ -14,8 +14,7 @@ Purpose: Provide onscreen widget that interacts with DIY VFO knob and remote rig
|
|
14
14
|
|
15
15
|
import logging
|
16
16
|
import os
|
17
|
-
import
|
18
|
-
from json import loads, JSONDecodeError
|
17
|
+
from json import loads
|
19
18
|
|
20
19
|
import serial
|
21
20
|
from PyQt6 import QtCore, QtWidgets, uic
|
@@ -25,7 +24,6 @@ from PyQt6.QtGui import QColorConstants, QPalette, QColor
|
|
25
24
|
|
26
25
|
import not1mm.fsutils as fsutils
|
27
26
|
from not1mm.lib.cat_interface import CAT
|
28
|
-
from not1mm.lib.multicast import Multicast
|
29
27
|
|
30
28
|
logger = logging.getLogger(__name__)
|
31
29
|
|
@@ -45,22 +43,12 @@ class VfoWindow(QDockWidget):
|
|
45
43
|
super().__init__()
|
46
44
|
uic.loadUi(fsutils.APP_DATA_PATH / "vfo.ui", self)
|
47
45
|
self.setWindowTitle("VFO Window")
|
48
|
-
|
49
46
|
self.rig_control = None
|
50
47
|
self.timer = QTimer()
|
51
48
|
self.timer.timeout.connect(self.getwaiting)
|
52
49
|
self.load_pref()
|
53
50
|
self.lcdNumber.display(0)
|
54
51
|
self.pico = None
|
55
|
-
self._udpwatch = None
|
56
|
-
|
57
|
-
self.multicast_interface = Multicast(
|
58
|
-
self.pref.get("multicast_group", "239.1.1.1"),
|
59
|
-
self.pref.get("multicast_port", 2239),
|
60
|
-
self.pref.get("interface_ip", "0.0.0.0"),
|
61
|
-
)
|
62
|
-
self.multicast_interface.ready_read_connect(self.watch_udp)
|
63
|
-
|
64
52
|
self.setup_serial()
|
65
53
|
self.poll_rig_timer = QtCore.QTimer()
|
66
54
|
self.poll_rig_timer.timeout.connect(self.poll_radio)
|
@@ -216,44 +204,26 @@ class VfoWindow(QDockWidget):
|
|
216
204
|
)
|
217
205
|
self.lcdNumber.setStyleSheet("QLCDNumber { color: red; }")
|
218
206
|
|
219
|
-
def
|
207
|
+
def msg_from_main(self, msg_dict) -> None:
|
220
208
|
"""
|
221
209
|
Watch for a 'HALT' UPD packet from not1mm.
|
222
210
|
Exit app if found.
|
223
211
|
"""
|
224
|
-
|
225
|
-
|
212
|
+
if msg_dict.get("cmd", "") == "TUNE":
|
213
|
+
# b'{"cmd": "TUNE", "freq": 7.0235, "spot": "MM0DGI"}'
|
214
|
+
vfo = msg_dict.get("freq")
|
215
|
+
vfo = float(vfo) * 1000000
|
216
|
+
changefreq = f"F {int(vfo)}\r"
|
226
217
|
try:
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
logger.
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
logger.debug(the_error)
|
237
|
-
continue
|
238
|
-
if json_data.get("station", "") != platform.node():
|
239
|
-
continue
|
240
|
-
logger.debug(f"{json_data=}")
|
241
|
-
|
242
|
-
if json_data.get("cmd", "") == "TUNE":
|
243
|
-
# b'{"cmd": "TUNE", "freq": 7.0235, "spot": "MM0DGI"}'
|
244
|
-
vfo = json_data.get("freq")
|
245
|
-
vfo = float(vfo) * 1000000
|
246
|
-
changefreq = f"F {int(vfo)}\r"
|
247
|
-
try:
|
248
|
-
if self.pico:
|
249
|
-
self.pico.write(changefreq.encode())
|
250
|
-
except OSError:
|
251
|
-
logger.critical("Unable to write to serial device.")
|
252
|
-
except AttributeError:
|
253
|
-
logger.critical("Unable to write to serial device.")
|
254
|
-
continue
|
255
|
-
if json_data.get("cmd", "") == "DARKMODE":
|
256
|
-
self.setDarkMode(json_data.get("state", False))
|
218
|
+
if self.pico:
|
219
|
+
self.pico.write(changefreq.encode())
|
220
|
+
except OSError:
|
221
|
+
logger.critical("Unable to write to serial device.")
|
222
|
+
except AttributeError:
|
223
|
+
logger.critical("Unable to write to serial device.")
|
224
|
+
return
|
225
|
+
if msg_dict.get("cmd", "") == "DARKMODE":
|
226
|
+
self.setDarkMode(msg_dict.get("state", False))
|
257
227
|
|
258
228
|
def showNumber(self, the_number) -> None:
|
259
229
|
"""Display vfo value with dots"""
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: not1mm
|
3
|
-
Version: 24.10.
|
3
|
+
Version: 24.10.24
|
4
4
|
Summary: NOT1MM Logger
|
5
5
|
Author-email: Michael Bridak <michael.bridak@gmail.com>
|
6
6
|
Project-URL: Homepage, https://github.com/mbridak/not1mm
|
@@ -232,10 +232,11 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
|
|
232
232
|
|
233
233
|
## Recent Changes (Polishing the Turd)
|
234
234
|
|
235
|
+
- [24-10-24] Forgot to convert the VFO dockwidget along with the rest. CQ WW CW, Dupes now score 0.
|
235
236
|
- [24-10-23] Remove duplicate marked calls in the bandmap.
|
236
237
|
- [24-10-22] Added ESM to RAC Canada Day. Added French REF.
|
237
238
|
- [24-10-21] Scaled back the hits returned from the check window from 25 to 20. Seems less resource hungry now.
|
238
|
-
- [24-10-20-1] ReWrote how the widgets interact. I
|
239
|
+
- [24-10-20-1] ReWrote how the widgets interact. I probably broke a thing or two. Let me know.
|
239
240
|
- [24-10-20] Add ESM to ARRL DX.
|
240
241
|
- [24-10-19-1] Rewrite part of CAT control.
|
241
242
|
- [24-10-19] Change ESM button states when the run state is toggled. Add ESM to ARRL Field Day and Winter Field Day.
|
@@ -547,7 +548,7 @@ You can fill. You can fill. Everyone look at your keys.
|
|
547
548
|
|
548
549
|
### Changing station information
|
549
550
|
|
550
|
-
Station information can be changed any time by going
|
551
|
+
Station information can be changed any time by going toawandahl
|
551
552
|
`File` > `Station Settings` and editing the information.
|
552
553
|
|
553
554
|
## Selecting a contest (It's REQUIRED Russ)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
not1mm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
2
|
-
not1mm/__main__.py,sha256=
|
2
|
+
not1mm/__main__.py,sha256=DaYuqX83hURHwL4fzQ40M8IcjUkiXd0Pi2h7Je077ks,135215
|
3
3
|
not1mm/bandmap.py,sha256=uCaM07IWyC22LFO3R1_ViaW7SBXjIaoJ-ypglJIKddg,30670
|
4
4
|
not1mm/checkwindow.py,sha256=F6hNCbVSLG2PPY2afgmwlBWeqr1Uj4-n__AivDLVQ_0,9670
|
5
5
|
not1mm/fsutils.py,sha256=ukHKxKTeNKxKwqRaJjtzRShL4X5Xl0jRBbADyy3Ifp8,1701
|
@@ -7,7 +7,7 @@ not1mm/logwindow.py,sha256=TvpzQTNB92hISlUO3iWBqtlPmlebdhOkAArx0DNGcOs,43966
|
|
7
7
|
not1mm/lookupservice.py,sha256=4c36x_1G3Sy69gQfJ6El7vHLIKTjLGH67ziPPoeYweM,2648
|
8
8
|
not1mm/radio.py,sha256=eu1kBjmttREFZ5tAJpNuQSMrmWeKw4Tb-sjgjChUYUs,4693
|
9
9
|
not1mm/test.py,sha256=atZoDXL9DArK4dS8gBCDmlMt5AHuiVZmFOQIp62hDHg,314
|
10
|
-
not1mm/vfo.py,sha256=
|
10
|
+
not1mm/vfo.py,sha256=ggPyWtxMbdSE5RwdK0nDRwDNqOxdpb_pvnzZdbzZVQE,11136
|
11
11
|
not1mm/voice_keying.py,sha256=sA3gw5_k7kShTg2qhG7HkKDM5M6KheJVRkAc_C7mxDk,3006
|
12
12
|
not1mm/data/JetBrainsMono-ExtraLight.ttf,sha256=g5Hn7BPounWMGDj1a8zZcyKMz03HSqW__pUluRR7Evg,274144
|
13
13
|
not1mm/data/MASTER.SCP,sha256=FWKs4Xw3w7FNUt2npA6VzsLME7NAbHRugxaL6TnsvzU,364234
|
@@ -61,6 +61,7 @@ not1mm/data/phonetics/b.wav,sha256=vOcw0gCYws-1AaGXu8pqnb3TPfnnj6_b7c5vV7_4kUY,4
|
|
61
61
|
not1mm/data/phonetics/c.wav,sha256=To-OPpsUuwYz7Ix_Sxzbx0JE_dVDY81M2kpcu9rewhA,46746
|
62
62
|
not1mm/data/phonetics/contest.wav,sha256=8JXCFI-10dAwtQg63hmOIdQxh__601rw4TXZTJoP0ew,62558
|
63
63
|
not1mm/data/phonetics/cq.wav,sha256=ooIgH1EsFBZWK-7MuKG9iUEFXa5WUQ0PQiOVqyMwWss,92498
|
64
|
+
not1mm/data/phonetics/cq2.wav,sha256=TjOFqV1Dg25DZBV-JLnIMFKNXtHzAvidyfzi0soIq_U,333480
|
64
65
|
not1mm/data/phonetics/d.wav,sha256=YWYt1kCh2AhH3WIbnbrqpychwh9pFpXDxeaFF00cCt4,52524
|
65
66
|
not1mm/data/phonetics/e.wav,sha256=p2zrwjmHTmkQre8AkgUhrDcFPcRqOTu_ux7wPsK6oN4,45700
|
66
67
|
not1mm/data/phonetics/f.wav,sha256=j0dU4zl8mTVdfleR-nHbn1Vphi7O79GCtuXraVjAvD8,53438
|
@@ -114,7 +115,7 @@ not1mm/lib/plugin_common.py,sha256=TbFUbftjELFt4QRdsjSHbqnXSngZOlSwlCTClqosDXA,9
|
|
114
115
|
not1mm/lib/select_contest.py,sha256=WsptLuwkouIHeocJL3oZ6-eUfEnhpwdc-x7eMZ_TIVM,359
|
115
116
|
not1mm/lib/settings.py,sha256=7_JFDSKPOd35Gwzqhrbed4EfrlYUm7AEnz2xBRioc-g,13280
|
116
117
|
not1mm/lib/super_check_partial.py,sha256=hwT2NRwobu0PLDyw6ltmbmcAtGBD02CKGFbgGWjXMqA,2334
|
117
|
-
not1mm/lib/version.py,sha256=
|
118
|
+
not1mm/lib/version.py,sha256=1ItBCw4c7VEOtdvWAg-RL8jUzGElo6UcBV2_QhhMw8E,49
|
118
119
|
not1mm/lib/versiontest.py,sha256=8vDNptuBBunn-1IGkjNaquehqBYUJyjrPSF8Igmd4_Y,1286
|
119
120
|
not1mm/plugins/10_10_fall_cw.py,sha256=IttjX1yy4nDdACGsiYlPteFG8eVseX_WtoFio6bqHE8,10953
|
120
121
|
not1mm/plugins/10_10_spring_cw.py,sha256=ThCptdM3dX4ywhoy2JRcOEyHSqcJolFaT7O_PYzM1Mg,10958
|
@@ -137,7 +138,7 @@ not1mm/plugins/cq_160_ssb.py,sha256=zIwSMAjHSt6W2edrDzVbyTf860JowHoFkU9BKO8Enag,
|
|
137
138
|
not1mm/plugins/cq_wpx_cw.py,sha256=ZFbcXI8vykXsgMI51YtjM0eQaDOiL0fLG7oAUR1Hfuc,17589
|
138
139
|
not1mm/plugins/cq_wpx_rtty.py,sha256=6zucmuH4Ky5BpgIPVgLxhFv-_HbQdRc5VweutrbACH8,20408
|
139
140
|
not1mm/plugins/cq_wpx_ssb.py,sha256=g4pxNyWX18Ig_IDMbJo1u1T9kImw1feSAgjDZuLRbdY,16239
|
140
|
-
not1mm/plugins/cq_ww_cw.py,sha256=
|
141
|
+
not1mm/plugins/cq_ww_cw.py,sha256=ioFk94WokRzQFiSUbFXYx17jsQl8S0N9bfi__ykFgqA,16408
|
141
142
|
not1mm/plugins/cq_ww_rtty.py,sha256=B3q0hhmYJ3R50PJoyJ6d5GgATfIjM3Cm8m3OPMVLlhY,20702
|
142
143
|
not1mm/plugins/cq_ww_ssb.py,sha256=tr3XPe0O6-aV_6-QnmWPFJu8S_QtZ68bsbb3l6PBOes,16086
|
143
144
|
not1mm/plugins/cwt.py,sha256=Jlhu19dpIlcAUFIP4Lrjz1raMok0yLyYg9cq7EQylys,16472
|
@@ -159,9 +160,9 @@ not1mm/plugins/ref_ssb.py,sha256=qzhojE-rL7NaMkb6V2XYwZTlx_GDPw3FXlDivGM4oBk,200
|
|
159
160
|
not1mm/plugins/stew_perry_topband.py,sha256=CKBQbYl4ETxhXJd2dma4fg_C5pag_s7Nf61SCztZtqE,10668
|
160
161
|
not1mm/plugins/weekly_rtty.py,sha256=ipgY-KlKlEHafnBg-_AFk9KhiXkGTvb4ENoezIeD7jU,18185
|
161
162
|
not1mm/plugins/winter_field_day.py,sha256=nPuPxdK1FimPsHk-uz_3MA4cBqBp6WcwApk7PZwWeWg,13579
|
162
|
-
not1mm-24.10.
|
163
|
-
not1mm-24.10.
|
164
|
-
not1mm-24.10.
|
165
|
-
not1mm-24.10.
|
166
|
-
not1mm-24.10.
|
167
|
-
not1mm-24.10.
|
163
|
+
not1mm-24.10.24.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
164
|
+
not1mm-24.10.24.dist-info/METADATA,sha256=qCTa_iK2MWDAnEE-cDH99vSfIkIKiiWIheprhpoQfyg,35144
|
165
|
+
not1mm-24.10.24.dist-info/WHEEL,sha256=OVMc5UfuAQiSplgO0_WdW7vXVGAt9Hdd6qtN4HotdyA,91
|
166
|
+
not1mm-24.10.24.dist-info/entry_points.txt,sha256=pMcZk_0dxFgLkcUkF0Q874ojpwOmF3OL6EKw9LgvocM,47
|
167
|
+
not1mm-24.10.24.dist-info/top_level.txt,sha256=0YmTxEcDzQlzXub-lXASvoLpg_mt1c2thb5cVkDf5J4,7
|
168
|
+
not1mm-24.10.24.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|