-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit ffa047c
Showing
143 changed files
with
52,434 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Quisk Software Defined Radio by N2ADR | ||
**December 26, 2023** | ||
|
||
This is Quisk, a Software Defined Radio (SDR). | ||
You supply radio hardware such as Hermes Lite2 or SoftRock to convert | ||
the antenna voltage to I/Q samples. | ||
Then send the samples to a computer running Quisk. | ||
The Quisk software will read the I/Q data, tune it, filter it, | ||
demodulate it, and send the audio to headphones or speakers. | ||
Quisk has a microphone input and a key input so it can operate as a | ||
complete transceiver. | ||
|
||
The web page for this project is [https://groups.io/g/n2adr-sdr](https://groups.io/g/n2adr-sdr). | ||
|
||
The change log is [here](CHANGELOG.txt). | ||
|
||
The documentation is [here](docs.html). | ||
|
||
The help file is [here](help.html). | ||
|
||
This site is under construction. Check back soon. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
#Quisk version 4.2.29 | ||
from .quisk import main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
def main(): | ||
import quisk | ||
if quisk.__file__.find('__init__') >= 0: # quisk is the package | ||
import quisk.quisk as quisk | ||
quisk.main() | ||
|
||
if __name__ == "__main__": | ||
main() |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
# This provides access to a remote radio. See ac2yd/remote_common.py and .pdf files for documentation. | ||
|
||
from ac2yd.control_common import ControlCommon | ||
|
||
class Hardware(ControlCommon): | ||
def __init__(self, app, conf): | ||
ControlCommon.__init__(self, app, conf) | ||
self.hermes_code_version = 40 | ||
self.HL2_TEMP = ";;;" | ||
self.var_rates = ['48', '96', '192', '384'] | ||
self.var_index = 0 | ||
#app.bandscope_clock = conf.rx_udp_clock | ||
def ChangeLNA(self, value): | ||
pass | ||
def ChangeAGC(self, value): | ||
pass | ||
def HeartBeat(self): | ||
ControlCommon.HeartBeat(self) | ||
args = self.HL2_TEMP.split(';') | ||
widg = self.app.bottom_widgets | ||
if widg: | ||
widg.text_temperature.SetLabel(args[0]) | ||
widg.text_pa_current.SetLabel(args[1]) | ||
widg.text_fwd_power.SetLabel(args[2]) | ||
widg.text_swr.SetLabel(args[3]) | ||
def RadioInit(self): # Send initial parameters not covered by CommonInit() | ||
idName = "RfLna" | ||
value = self.app.midiControls[idName][0].GetValue() | ||
self.RemoteCtlSend("%s;%d\n" % (idName, value)) | ||
def VarDecimGetChoices(self): # return text labels for the control | ||
return self.var_rates | ||
def VarDecimGetLabel(self): # return a text label for the control | ||
return "Sample rate ksps" | ||
def VarDecimGetIndex(self): # return the current index | ||
return self.var_index | ||
def VarDecimSet(self, index=None): # set decimation, return sample rate | ||
if index is None: # initial call to set rate before the call to open() | ||
rate = self.app.vardecim_set # May be None or from different hardware | ||
else: | ||
rate = int(self.var_rates[index]) * 1000 | ||
if rate == 48000: | ||
self.var_index = 0 | ||
elif rate == 96000: | ||
self.var_index = 1 | ||
elif rate == 192000: | ||
self.var_index = 2 | ||
elif rate == 384000: | ||
self.var_index = 3 | ||
else: | ||
self.var_index = 0 | ||
rate = 48000 | ||
return rate | ||
def VarDecimRange(self): | ||
return (48000, 384000) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# This provides access to a remote radio. See ac3yd/remote_common.py and .pdf files for documentation. | ||
|
||
from ac2yd.control_common import ControlCommon | ||
|
||
class Hardware(ControlCommon): | ||
def __init__(self, app, conf): | ||
ControlCommon.__init__(self, app, conf) | ||
self.index = 0 | ||
self.rx_udp_clock = 122880000 | ||
self.decimations = [] # supported decimation rates | ||
for dec in (40, 20, 10, 8, 5, 4, 2): | ||
self.decimations.append(dec * 64) | ||
self.decimations.append(80) | ||
self.decimations.append(64) | ||
def RadioInit(self): # Send initial parameters not covered by CommonInit() | ||
pass | ||
def VarDecimGetChoices(self): # return text labels for the control | ||
clock = self.rx_udp_clock | ||
l = [] # a list of sample rates | ||
for dec in self.decimations: | ||
l.append(str(int(float(clock) / dec / 1e3 + 0.5))) | ||
return l | ||
def VarDecimGetLabel(self): # return a text label for the control | ||
return "Sample rate ksps" | ||
def VarDecimGetIndex(self): # return the current index | ||
return self.index | ||
def VarDecimSet(self, index=None): # set decimation, return sample rate | ||
if index is None: # initial call to set decimation before the call to open() | ||
rate = self.application.vardecim_set # May be None or from different hardware | ||
try: | ||
dec = int(float(self.rx_udp_clock // rate + 0.5)) | ||
self.index = self.decimations.index(dec) | ||
except: | ||
self.index = 0 | ||
else: | ||
self.index = index | ||
dec = self.decimations[self.index] | ||
return int(float(self.rx_udp_clock) / dec + 0.5) | ||
def VarDecimRange(self): | ||
return (48000, 960000) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# This provides access to a remote radio. See ac2yd/remote_common.py and .pdf files for documentation. | ||
|
||
from ac2yd.control_common import ControlCommon | ||
|
||
class Hardware(ControlCommon): | ||
def __init__(self, app, conf): | ||
ControlCommon.__init__(self, app, conf) | ||
def RadioInit(self): # Send initial parameters not covered by CommonInit() | ||
pass |
Oops, something went wrong.