Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
- N2adr-Sdr
- Messages
Search
Re: Quisk GUI Questions
开云体育
Hi Jim,
I have added my radio and it is working just fine with the base radio as "Fixed Softrock" (on the Radios tab, where it is labeled "Add a new radio with the" and I select Softrock), but my radio is not really a fixed SoftRock, and so the Config window has a
lot of options that do not make sense for my hardware.? I could use a SoftRock USB as a base radio too, but I still have the same problem.? ? I wanted to make the Config GUI more appropriate to my hardware.? At first I thought I could add a widgets file and
do that, but I could not figure out how to change widgets on the Config window.? Maybe, what I'm asking is more like, what would be the best way to add a new radio to the list you can select it as a base radio and customize the settings for it.? Do you have
any instructions on how to modify the GUI so it is appropriate to my hardware?? It may not be worth the effort now, but the customizable widgets file made me hope I could do it fairly easily like the hardware, but the examples were not so plentiful and helpful.
I looked over Warren Pratt's WDSP and unfortunately, it seems to be optimized for the HPSDR radios, and I can't so far find any way to modify the filter coefficients in his bandpass/notch filter which looks like the closest thing to what I need.? It might require
writing a new block.? He does have a well-optimized setup for DDC/DUC hardware, but unfortunately not quite so nice for NZIF or ZIF hardware like the SoftRock.? I see why you must have put the I-Q correction in your own code.? Even though John Melton modified
the WDSP code for Linux, it appears Warren has only been updating the Windows version of WDSP.? I would like to be wrong on this, but I couldn't find any evidence otherwise.? If it isn't too much looking, it would be nice to have a pointer to what you did.?
Even though I'm sending the data over UDP, my ADC is essentially like the sound card it replaced.? For the I-Q balance in Quisk, I'm beginning to suspect you must be using software features only available if the data came from a sound card.? Is that correct??
I thought about trying to make my UDP stream appear to Linux as if it was a sound card, but discarded that as more difficult.
Another small thing.? I would like to change the default font size for ConfigFileRadio because I can only see half the letters on labels, etc.? I can change it for my radio, but when I choose to start with ConfigFileRadio, I cannot change? it.? Is there an
easy way to do that??
Thanks,
Rob
From: [email protected] <[email protected]> on behalf of jimahlstrom via groups.io <jahlstr@...>
Sent: Thursday, May 23, 2024 7:05 AM To: [email protected] <[email protected]> Subject: Re: [n2adr-sdr] Quisk GUI Questions ?
CAUTION: This email originated from outside the Walla Walla University email system.
The widgets file for a given radio only controls what is shown in the last line on the screen. To control the Config/radio/Hardware screen you need to add another radio to quisk_conf_defaults.py and then select that radio. There are multiple radios in
quisk_conf_defaults.py to use as examples.
Or, if I don't understand your question, please ask with more details. Jim N2ADR |
||||||
Re: Quisk GUI Questions
The widgets file for a given radio only controls what is shown in the last line on the screen. To control the Config/radio/Hardware screen you need to add another radio to quisk_conf_defaults.py and then select that radio. There are multiple radios in quisk_conf_defaults.py to use as examples.
Or, if I don't understand your question, please ask with more details. Jim N2ADR |
||||||
Re: Quisk GUI Questions
开云体育
Hi Jim, et. al.,
After thinking about doing this math in my routine, the only nice thing about doing it that way that makes sense to me is I don't have to go read the code and figure out where the DSP is done.? The process is essentially changing the filter used is SSB demodulation
so it undoes the filtering that happened to mess up the I-Q data in the first place.? Doing this should involve changing only filter coefficient data, not even code that is already in Quisk, probably in WDSP.? Unfortunately for me, reading the code I did not
write is one of the more difficult parts of this process, but it is the price you pay to re-use someone else's code and that is big.? Thanks so much, Jim for maintaining Quisk.? It is a big and often thankless job, but it is important to all of us who use
it.??
Again, thanks!
Rob
KL7NA From: [email protected] <[email protected]> on behalf of Rob Frohne (KL7NA) via groups.io <rob.frohne@...>
Sent: Wednesday, May 22, 2024 5:24 PM To: [email protected] <[email protected]> Subject: Re: [n2adr-sdr] Quisk GUI Questions ?
CAUTION: This email originated from outside the Walla Walla University email system.
Thanks, Jim,
Would it be better to make my own correction in the Python hardware file assuming I can make it fast enough?? The paper I cited in my other question shows how if you assume it is a linear error, you can calibrate it out once for the IF spectrum (48 kHz in my
case).? With my transceiver, I can envision running a calibration routine where the transmitter spins over the IF range, and the receiver adjusts for the lowest image, to come up with the 2x2 correction matrix needed.? I could calibrate the IF so it is "flat"
across the 48 kHz too while I was reducing the images.? It seems to me at the moment that doing this all in software is superior to trying to make the hardware perfect.? Maybe doing both is best, but one of the goals of my project is to make it cheap (about
$25), and using 1% components runs up the cost for producing a small number of boards at JLCPCB because?there is a $3 charge for each extended component value.? The issue I see with doing my own thing in the software for I-Q correction is that there will be
two I-Q routines in Quisk, which makes it more convoluted.? ?Maybe I can make the other method invisible in the Config GUI or reuse the button.??
I still don't understand where to modify the Config window.? I thought you could just sub-class it in your own widgets file, but haven't figured out how to modify anything but the main window.? Could you point me to an example that does something with the Config
or Radio sub-window?
Thanks & 73,
Rob
KL7NA
From: [email protected] <[email protected]> on behalf of jimahlstrom via groups.io <jahlstr@...>
Sent: Wednesday, May 22, 2024 2:00 PM To: [email protected] <[email protected]> Subject: Re: [n2adr-sdr] Quisk GUI Questions ?
CAUTION: This email originated from outside the Walla Walla University email system.
Hello Rob,
By GUI I guess you mean the Config/radio/Hardware screen. You can change this to anything you want by creating another "Radio" in the file quisk_conf_defaults.py. There are many radios there to serve as examples. But then you must connect the GUI values to the Quisk engine to use them. The phase and amplitude balance buttons are grayed out because you are not using a soundcard. Even if they were active, you still need to insert the corrections into the data stream. Jim N2ADR |
||||||
Re: Quisk GUI Questions
开云体育
Thanks, Jim,
Would it be better to make my own correction in the Python hardware file assuming I can make it fast enough?? The paper I cited in my other question shows how if you assume it is a linear error, you can calibrate it out once for the IF spectrum (48 kHz in my
case).? With my transceiver, I can envision running a calibration routine where the transmitter spins over the IF range, and the receiver adjusts for the lowest image, to come up with the 2x2 correction matrix needed.? I could calibrate the IF so it is "flat"
across the 48 kHz too while I was reducing the images.? It seems to me at the moment that doing this all in software is superior to trying to make the hardware perfect.? Maybe doing both is best, but one of the goals of my project is to make it cheap (about
$25), and using 1% components runs up the cost for producing a small number of boards at JLCPCB because?there is a $3 charge for each extended component value.? The issue I see with doing my own thing in the software for I-Q correction is that there will be
two I-Q routines in Quisk, which makes it more convoluted.? ?Maybe I can make the other method invisible in the Config GUI or reuse the button.??
I still don't understand where to modify the Config window.? I thought you could just sub-class it in your own widgets file, but haven't figured out how to modify anything but the main window.? Could you point me to an example that does something with the Config
or Radio sub-window?
Thanks & 73,
Rob
KL7NA
From: [email protected] <[email protected]> on behalf of jimahlstrom via groups.io <jahlstr@...>
Sent: Wednesday, May 22, 2024 2:00 PM To: [email protected] <[email protected]> Subject: Re: [n2adr-sdr] Quisk GUI Questions ?
CAUTION: This email originated from outside the Walla Walla University email system.
Hello Rob,
By GUI I guess you mean the Config/radio/Hardware screen. You can change this to anything you want by creating another "Radio" in the file quisk_conf_defaults.py. There are many radios there to serve as examples. But then you must connect the GUI values to the Quisk engine to use them. The phase and amplitude balance buttons are grayed out because you are not using a soundcard. Even if they were active, you still need to insert the corrections into the data stream. Jim N2ADR |
||||||
Re: Quisk GUI Questions
Hello Rob,
By GUI I guess you mean the Config/radio/Hardware screen. You can change this to anything you want by creating another "Radio" in the file quisk_conf_defaults.py. There are many radios there to serve as examples. But then you must connect the GUI values to the Quisk engine to use them. The phase and amplitude balance buttons are grayed out because you are not using a soundcard. Even if they were active, you still need to insert the corrections into the data stream. Jim N2ADR |
||||||
Re: I-Q Rebalance
If you're using the 'soundcard' route for capturing an I/Q stream from your SDR, consider using the Pan in your OS' mixer for that input if available, or adjust L/R on that input independently if to balance the I/Q stream if available. On Wed, May 22, 2024 at 10:59?AM Rob Frohne (KL7NA) via <rob.frohne=[email protected]> wrote:
|
||||||
Re: I-Q Rebalance
Hello Rob,
A dependency on RF frequency can come about from an imbalance in the power splitter from the antenna or in the two mixers operating at RF. Please see the documentation under "SoftRock" and the paper . Quisk collects phase corrections at points (RF frequency, AF frequency) and does a two-dimensional interpolation. If the RF frequency doesn't matter, just use the band center. If it does matter, use several RF frequencies with the same table of AF frequencies. Jim N2ADR |
||||||
Re: I-Q Rebalance
Quisk realy does need an auto image scheme based on a user defined frequency span from previously resolved I-Q balance.? On Wed, May 22, 2024, 7:59 AM Rob Frohne (KL7NA) via <rob.frohne=[email protected]> wrote:
|
||||||
I-Q Rebalance
开云体育
Hi All,
I am having problems with images in my near-zero IF (SoftRock) type receiver.? I am still pursuing the hardware problem that is causing the imbalance and consequential poor image rejection, but after thinking about it, I decided the software solution might
be better overall, because then you would not have to be so careful that your ADC, an all the I and Q components matched perfectly and it would enable a cheaper SDR receiver.? So, I have been looking at Quisk and its implementation of this rebalancing.? As
I think about it, I don't see a mechanism for how the I-Q balance would be a function of the RF frequency, only the IF frequency.? If this is the case, you would have a whole lot less calibration to do to get good image rejection.? This paper
?from 2002 seems to indicate that as well.? I am a little leery to just conclude that though, because the implementation in Quisk seems to indicate experimental evidence that the
RF frequency matters too.? Can any of you shed light on this?
TNX & 73, Rob KL7NA |
||||||
Quisk GUI Questions
开云体育
Hi Jim,
I am fiddling around trying to make Quisk?I am playing with.?
This transceiver is similar to a SoftRock, but uses its onboard ADC, sending the I and Q data over UDP instead of USB.? This morning I went to make a widgets file, expecting to be able to customize Quisk widgets like I see it customized using the hardware.py
files, which is fantastic, but the example files are not as many, and grepping for phrases like Si570 crystal frequency, which I see in the Config screen for SofRrock type radios doesn't seem to lead me to code to modify or emulate.? ?? ?For example, I would
like to allow this radio to use the Rx Phase option, but it is always grayed out, probably because I'm not using a classical soundcard.? There are options for the SoftRock that are not quite appropriate for my radio, for example, the Si570 options.? My radio
is using the Si5351a instead of an Si570, and I have been making it a child of the fixed SoftRock, but it doesn't need a fixed crystal frequency either.? The areas of the GUI I want to mess with most are the Config ones at present anyway, but the examples
show how to add buttons and a few other controls to the main GUI.? ?There are still plenty of things I am working on, but it is sending and receiving FT8.? ?I
?to put my Quisk files in because putting them in the main repo makes it easier for me to remember how to set Quisk up for this rig.? Any suggestions on modifying the GUI?
73,
Rob
KL7NA
|
||||||
Quisk Version 4.2.33 May 2024
I 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.
Jim N2ADR |
||||||
Bug in scope
开云体育
Hi Jim, et. al.,
While playing around with the SDR-TRX, I found the scope view very useful.? Thanks for including it.? There does appear to be a bug when you first start Quisk, and switch to the scope from the graph that there is no trace the first time, but if you switch back
to the graph and then back to the scope it works with a trace nicely.? I suspect most folks don't use the scope much, so this bug isn't noticeable to most, but it was puzzling me until I found the workaround.
73,
Rob
KL7NA
|
||||||
Re: What am I doing wrong in my quisk_conf?
开云体育
I think I'm past this problem and on to others now.? At least I'm getting a spectral display and audio.? It is a lot louder that I expected and some other issues I need to look into now.
73,
Rob
KL7NA
From: [email protected] <[email protected]> on behalf of Rob Frohne (KL7NA) via groups.io <rob.frohne@...>
Sent: Sunday, May 5, 2024 11:39 AM To: [email protected] <[email protected]> Subject: [n2adr-sdr] What am I doing wrong in my quisk_conf? ?
CAUTION: This email originated from outside the Walla Walla University email system.
Hi Jim, et. al.,
I'm working?on getting my development testing rig I call the SDR-TRX.? It uses the Raspberry Pi Pico W connected to a Linux box running WSJT-X and Quisk using WiFi to be a QRP 20 meter digital mode transceiver.?? The source, docs, etc. are on GitHub
.? I have had some good successes, but this morning I am having difficulty with my quisk_conf using a UDP connection to gather the I and Q samples in Quisk.? I am not quite sure what my problem is, but I am hoping a quick tip will fix it.? I see no
spectral display and hear no audio, and when I look at the status, I get this:
The latency (What are the units?) just ticks up and up.? My packets are coming in from UDP, little endian, 32 bits of I and then 32 bits of Q, over and over again (48 ks/s), in packets 1468 bytes long with the first four bytes being the packet number.? I have
verified that the data looks good using the python script .?? I'm pretty sure the ?is where my problem lies.? Any tips?
73,
Rob
KL7NA
|
||||||
What am I doing wrong in my quisk_conf?
开云体育
Hi Jim, et. al.,
I'm working?on getting my development testing rig I call the SDR-TRX.? It uses the Raspberry Pi Pico W connected to a Linux box running WSJT-X and Quisk using WiFi to be a QRP 20 meter digital mode transceiver.?? The source, docs, etc. are on GitHub
.? I have had some good successes, but this morning I am having difficulty with my quisk_conf using a UDP connection to gather the I and Q samples in Quisk.? I am not quite sure what my problem is, but I am hoping a quick tip will fix it.? I see no
spectral display and hear no audio, and when I look at the status, I get this:
The latency (What are the units?) just ticks up and up.? My packets are coming in from UDP, little endian, 32 bits of I and then 32 bits of Q, over and over again (48 ks/s), in packets 1468 bytes long with the first four bytes being the packet number.? I have
verified that the data looks good using the python script .?? I'm pretty sure the ?is where my problem lies.? Any tips?
73,
Rob
KL7NA
|
||||||
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.
?
Some Linux digital programs can not use the usual Quisk Pulse loopback device and must use an Alsa loopback. I added more documentation for Alsa loopbacks, added more information on the Sound screen and I changed the default Alsa sample size to 16 bit.
?
Quisk now responds to the Hermes Lite2 Tx inhibit input by displaying a message and extinguishing the "Tx" light. There is a new item "Hermes Lite2 protocol" on the Hardware screen to control this behavior. Jim N2ADR |
||||||
Re: Is 16 kHz sampling ok in Quisk?
开云体育
Thanks Jim,
That is kind of what I thought.? ?? I have control for the transceiver working on the UART with the audio cable and sound card and am converting the control so it works on UDP.? The basic controls work, but getting WSJT-X data to the transmitter is still being
debugged.? After that I will work on the UDP audio transmission in binary at 48 kHz to a simple program and then to Quisk.? Thanks for the confirmation.
73,
Rob
KL7NA
From: [email protected] <[email protected]> on behalf of jimahlstrom via groups.io <jahlstr@...>
Sent: Monday, April 8, 2024 10:08 AM To: [email protected] <[email protected]> Subject: Re: [n2adr-sdr] Is 16 kHz sampling ok in Quisk? ?
CAUTION: This email originated from outside the Walla Walla University email system.
The lowest sample rate for Quisk is 48ksps.
Jim N2ADR |
to navigate to use esc to dismiss