Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a1343c1264 |
@@ -1,3 +1,10 @@
|
|||||||
|
Quisk Version 4.2.33 May 2024
|
||||||
|
==============================
|
||||||
|
Added the get_level Hamlib command "l STRENGTH". It returns the S-meter reading. I finally found some Hamlib
|
||||||
|
documentation, often not an easy task. The return value of STRENGTH is in dB with zero dB equal to S9.
|
||||||
|
There are 6 dB per S-unit. So a STRENGTH of 4 is 4dB over S9, and -6, -12, -18 is S8, S7, S6. I also added
|
||||||
|
the corresponding FlexRadio command ZZSM.
|
||||||
|
|
||||||
Quisk Version 4.2.32 April 2024
|
Quisk Version 4.2.32 April 2024
|
||||||
================================
|
================================
|
||||||
I found and fixed a bug in the microphone filters that can result in a buffer overrun. You should update Quisk.
|
I found and fixed a bug in the microphone filters that can result in a buffer overrun. You should update Quisk.
|
||||||
|
|||||||
+1
-1
@@ -1,2 +1,2 @@
|
|||||||
#Quisk version 4.2.32
|
#Quisk version 4.2.33
|
||||||
from .quisk import main
|
from .quisk import main
|
||||||
|
|||||||
@@ -658,6 +658,16 @@ class HamlibHandlerSerial:
|
|||||||
self.app.pttButton.SetValue(0, True)
|
self.app.pttButton.SetValue(0, True)
|
||||||
else:
|
else:
|
||||||
self.Error(cmd, data)
|
self.Error(cmd, data)
|
||||||
|
def ZZSM(self, cmd, data, length): # return the S-meter value in dB * 2; 0 to 260
|
||||||
|
if length == 0: # 0 to 260 is -140 to -10 dB; S9 == -73 dB == 134; dB = ZZSM / 2 - 140
|
||||||
|
i = round((self.app.hamlib_strength + 67) * 2)
|
||||||
|
if i < 0:
|
||||||
|
i = 0
|
||||||
|
elif i > 260:
|
||||||
|
i = 260
|
||||||
|
self.Write('%s%03d;' % (cmd, i))
|
||||||
|
else:
|
||||||
|
self.Error(cmd, data)
|
||||||
def ZZSP(self, cmd, data, length): # the split status
|
def ZZSP(self, cmd, data, length): # the split status
|
||||||
if length == 0:
|
if length == 0:
|
||||||
if self.app.split_rxtx:
|
if self.app.split_rxtx:
|
||||||
@@ -1151,7 +1161,7 @@ class HamlibHandlerRig2: # Test with telnet localhost 4532
|
|||||||
def GetLevel(self):
|
def GetLevel(self):
|
||||||
name = self.GetParamName()
|
name = self.GetParamName()
|
||||||
if name == '?': # send back supported parameters
|
if name == '?': # send back supported parameters
|
||||||
self.Reply2('AGC AF', 0)
|
self.Reply2('AGC AF STRENGTH', 0)
|
||||||
elif name == 'AGC':
|
elif name == 'AGC':
|
||||||
if self.app.BtnAGC.GetValue():
|
if self.app.BtnAGC.GetValue():
|
||||||
self.Reply2(4, 0)
|
self.Reply2(4, 0)
|
||||||
@@ -1160,6 +1170,9 @@ class HamlibHandlerRig2: # Test with telnet localhost 4532
|
|||||||
elif name == 'AF':
|
elif name == 'AF':
|
||||||
x = self.app.audio_volume # audio_volume is 0 to 1.000
|
x = self.app.audio_volume # audio_volume is 0 to 1.000
|
||||||
self.Reply2("%.5f" % x, 0)
|
self.Reply2("%.5f" % x, 0)
|
||||||
|
elif name == 'STRENGTH':
|
||||||
|
i = round(self.app.hamlib_strength)
|
||||||
|
self.Reply2(i, 0)
|
||||||
else:
|
else:
|
||||||
self.ErrParam()
|
self.ErrParam()
|
||||||
def SetLevel(self):
|
def SetLevel(self):
|
||||||
@@ -3565,6 +3578,7 @@ class App(wx.App):
|
|||||||
self.smeter_avg_seconds = 1.0 # seconds for S-meter average
|
self.smeter_avg_seconds = 1.0 # seconds for S-meter average
|
||||||
self.smeter_sunits = -87.0
|
self.smeter_sunits = -87.0
|
||||||
self.smeter_usage = "smeter" # specify use of s-meter display
|
self.smeter_usage = "smeter" # specify use of s-meter display
|
||||||
|
self.hamlib_strength = 0.0;
|
||||||
self.timer = time.time() # A seconds clock
|
self.timer = time.time() # A seconds clock
|
||||||
self.heart_time0 = self.timer # timer to call HeartBeat at intervals
|
self.heart_time0 = self.timer # timer to call HeartBeat at intervals
|
||||||
self.save_time0 = self.timer
|
self.save_time0 = self.timer
|
||||||
@@ -5043,6 +5057,7 @@ class App(wx.App):
|
|||||||
self.smeter_sunits_time0 = self.timer
|
self.smeter_sunits_time0 = self.timer
|
||||||
s = self.smeter_sunits / 6.0 # change to S units; 6db per S unit
|
s = self.smeter_sunits / 6.0 # change to S units; 6db per S unit
|
||||||
s += Hardware.correct_smeter # S-meter correction for the gain, band, etc.
|
s += Hardware.correct_smeter # S-meter correction for the gain, band, etc.
|
||||||
|
self.hamlib_strength = (s - 9.0) * 6.0 # convert to dB; 0 dB is S9
|
||||||
if s < 0:
|
if s < 0:
|
||||||
s = 0
|
s = 0
|
||||||
if s >= 9.5:
|
if s >= 9.5:
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import os
|
|||||||
# You must define the version here. A title string including
|
# You must define the version here. A title string including
|
||||||
# the version will be written to __init__.py and read by quisk.py.
|
# the version will be written to __init__.py and read by quisk.py.
|
||||||
|
|
||||||
Version = '4.2.32'
|
Version = '4.2.33'
|
||||||
|
|
||||||
fp = open("__init__.py", "w") # write title string
|
fp = open("__init__.py", "w") # write title string
|
||||||
fp.write("#Quisk version %s\n" % Version)
|
fp.write("#Quisk version %s\n" % Version)
|
||||||
|
|||||||
Reference in New Issue
Block a user