Keyboard Shortcuts
Likes
- N2adr-Sdr
- Messages
Search
Re: Problem with Quisk and LimeSDR/soapy
Hello mainly Mario and Syd
For rx I find that both Lime MIni and Pluto work fine on Quisk at 1MHz bandwidth and more.? Turn off transmit. For transmitting Pluto will not work satisfactorily on Quisk because the possible audio samplings for Pluto and Quisk? are incommensurate, that is no combination can be expressed as the ratio of two integers, For transmitting the LIme Mini will work on Quisk.? There is an initial problem because the Lime continues to transmit at a low level even when receiving, and this gives many spurious signals on receive.? These become more problematical:? 2m, 70cm, 23 cm.....A solution on receive is to to turn the transmit power to a minimum and to shift the transmitting frequency.? Reverse these to steps again for transmit.? Colin, G4EML, has implemented this in the Pi/Pluto combination and I am very grateful to him for taking time to talk with me about the problem.? My hardware file to do this is attached to message 2338 of 8/13/22. ? Line 32 is the offset for tx while rx, 10MHz.? Further additions start at line 127.? References to RTS and DTR switch an external PA. Lines 144, 145 set transmit parameters while receiving,? Lines 132,133 reset transmit parameters for transmitting. Also attached to the same message are screen shots showing Quisk+Lime transmitting while Raspberry Pi + Pluto is receiving.? The effect on 23cm is striking. Apologies for delay.? I wanted to turn the kit on in order to check and I have had a great many commitments these last few days,? Hope this helps. vy 73 Bob g3udi |
Re: Problem with Quisk and LimeSDR/soapy
Thanks Mario,
toggle quoted message
Show quoted text
I was trying it on HF and BBC Radio 4 on 92.7MHz with no luck. I'll have a closer look with quisk. 73 ... Sid. On 13/06/2023 09:17, Mario Roessler, DH5YM wrote:
Hi Sid, --
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support Senior Staff Specialist, Cricket Coach Microsoft Windows Free Zone - Linux used for all Computing Tasks |
Re: Problem with Quisk and LimeSDR/soapy
Hi Sid,
toggle quoted message
Show quoted text
LimeSDR and SDRAngel works quite well. I frequently use it for transmit of arbitrary waveform files. However the use of the software needs some effort. Its more an experimental plattform than a software for amateur radio. With Quisk and the Lime Mini i was able to transmit some FM and receive the same. Tuning on 9cm gave some strange effects with IQ suppression beeing insufficient. On 70cm it did look ok. regards Mario Am Di., 13. Juni 2023 um 00:00 Uhr schrieb Sid Boyce via groups.io <g3vbv@...>:
|
Re: Problem with Quisk and LimeSDR/soapy
Jim gave up on getting the Mini to work in quisk, so this sounds great.
toggle quoted message
Show quoted text
I wonder if it'll also work with the LimeSDR USB .... I've never been get it to work with any software -- sdrangel looked like an indecipherable patchwork quilt. I asked for help on the MyriadRF group, no one ever responded. 73 ... Sid. On 12/06/2023 07:29, Mario Roessler, DH5YM wrote:
--
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support Senior Staff Specialist, Cricket Coach Microsoft Windows Free Zone - Linux used for all Computing Tasks |
Re: Problem with Quisk and LimeSDR/soapy
Hi Bob, Mario |
Re: Problem with Quisk and LimeSDR/soapy
Hi Mario
Well in principle it should work!! I have made the Lime Mini work very well on ordinary simplex and had several QSOs on 2m.? I can send you a bit of code that implements this in the hardware file for Quisk if that might be helpful.? Quisk also has a feature to work with repeaters, thus using different frequencies for tx and rx which is what you must need for your application.? I have tried to use this but have never quite been successful.? The reason, I am almost certain, is that my understanding of Python/Quisk is not good enough.? Not too sure about the frequency stability for ssb and narrower modes but Lime can be phase-locked to a better standard.? The project here is to lock it to an old Rb standard. Several UK stations use Pluto in set-ups for the Q0-100 satellite, with success.? There is also a question of stability and most replace the 40MHz source with better tcxo, which is not too difficult.? For alternative software see by Colin g4eml.? This employs a RaspberryPi and the software is very user-friendly.? I am almost certain that the newest version will work with Lime.? A downside is that the frequency display on-screen is restricted to ~ 200kHz.? It will implement rx/tx frequency shifts abut I do not know over what range.? The kit will run approx. 50MHz -- 5GHz. Please let me know how you get on, 73? Bob g3udi |
Rx0 output
I'm having trouble getting "Digital Rx0 Output" to, well, output.? I'm on Linux running alsa but not pulse.? There are two soundcards, an internal and a USB external.?? I can use either and/or both for "Radio Sound Output" and "I/Q Rx Sample Input" without any issues.? I also have an alsa loopback running, tested and working.?
But when I try assigning any of these alsa sinks to "Digital Rx0 Output" it doesn't work.? I put audio_verbose to 2 and on stdio it tells me it has successfully opened the device and chosen a reasonable sample rate etc it all seems fine.? It lists on the config/status window but the latency is 0, errors is 0 and Level dB is -.? And obviously no sound comes out. Have I missed a config somewhere.? Is it relevant that on the radio/sound window the sample rate, delay etc are all editable for "Radio Sound Output" and "I/Q Rx Sample Input" but not for "Digital Rx0 Output".? It seems like I need to enable it somewhere. Suggestions? Many thanks Murray VK3ACF |
Re: Quisk Version 4.2.19 May 2023
Mike Black
What answer do you get when you send ZZAR; ??? That will tell you the format.
toggle quoted message
Show quoted text
Looks like I may need to update Hamlib to distinguish between SmartSDR and PowerSDR -- PowerSDR uses the +123 format and has a range of -020 to +120 2023-06-06T10:04:06.924627-0600: write_block(): TX 5 bytes, method=2 2023-06-06T10:04:06.924688-0600: 0000? ? 5a 5a 41 52 3b? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ZZAR; 2023-06-06T10:04:06.924749-0600: rigctl_send_cmd: debug Cmd Reply: 2023-06-06T10:04:31.934865-0600: 0000? ? 5a 5a 41 52 2b 31 32 30 3b? ? ? ? ? ? ? ? ? ? ? ? ? ZZAR+120; Mike W9MDB On Tuesday, June 6, 2023 at 09:47:57 AM CDT, ag5gt@... <ag5gt@...> wrote:
I was just now looking into updating my version of quisk preparatory to implementing the flex ZZAR commands in cat/serial-port software, but have a question (maybe this arises because I am communicating through the cat serial-port, using custom software to bypass hamlib). Do we really send "ZZAR+120;" to minimize agc? That would not seem to conform to the flex-6000 spec, due to passing four characters after the ZZAR prefix, with one being non-numeric. The spec accommodates three characters, all numeric, after the prefix, coding 000 through 100. By "mapping," I would guess we actually send "ZZAR000;" to set -20db and "ZZAR100;" to set +120db, with a linear-in-db interpolation in between. A further understanding would be that +120db (actually sending "ZZAR100;") is functionally equivalent to AGC being switched "off." Correct? BTW, the comment about AGC being a compressor, rather than limiter with break-point, was welcome enlightenment here. I have always struggled a bit to make agc do what I expect. Knowing the right way to think about it may help... bruce ag5gt |
Re: Quisk Version 4.2.19 May 2023
I was just now looking into updating my version of quisk preparatory to implementing the flex ZZAR commands in cat/serial-port software, but have a question (maybe this arises because I am communicating through the cat serial-port, using custom software to bypass hamlib).
Do we really send "ZZAR+120;" to minimize agc? That would not seem to conform to the flex-6000 spec, due to passing four characters after the ZZAR prefix, with one being non-numeric. The spec accommodates three characters, all numeric, after the prefix, coding 000 through 100. By "mapping," I would guess we actually send "ZZAR000;" to set -20db and "ZZAR100;" to set +120db, with a linear-in-db interpolation in between. A further understanding would be that +120db (actually sending "ZZAR100;") is functionally equivalent to AGC being switched "off." Correct? BTW, the comment about AGC being a compressor, rather than limiter with break-point, was welcome enlightenment here. I have always struggled a bit to make agc do what I expect. Knowing the right way to think about it may help... bruce ag5gt |
Re: Quisk Version 4.2.19 May 2023
¿ªÔÆÌåÓýThanks Jim! I will check how the remote serial port works in my set up and report back. Due to other commitments that might take a week or 2. 73s, Peter, PA3BIY Op 18/05/2023 om 18:23 schreef
jimahlstrom:
|
Quisk Version 4.2.19 May 2023
I added the Flex ZZAR command to the Hamlib interface. This controls the AGC level from -20 to +120 dB. The levels are mapped to the Quisk AGC level 0.0 to 1.0. The Flex AGC operates as a limiter but the Quisk AGC is a compressor, so you will need to experiment to find the correct ZZAR command. Also the Quisk AGC is never off. The off setting just changes the AGC level. So to turn AGC off send another ZZAR command, perhaps "ZZAR+120;".
?
When using the AC2YD remote feature, the serial port PTT now works correctly. Jim N2ADR |
Re: An audio start-up hitch in 4.1.77 running on a Pi 400
Below is a screenshot showing quisk's confirg screen with error on first start, along with pavu immediately after that. Whereas pavu showed no input devices before quisk started, the input devices do exist immediately after a quisk first start. At that point, closing and re-starting quisk results in quisk running normally. It seems like a chicken/egg problem. Quisk causes pulse-audio to create the monitors, but perhaps then tries to run before the monitors are actually created (?) and fails.
By default in the rpi 4 installation, quisk starts with the green "ON" button already enabled. Clicking that button (to "OFF") then causes the quisk process to end, similar to the effect of the window "X" click or kill signal. My expectation had been that quisk might load with that button toggled to "OFF" and then quisk would start signal processing using pulse-audio streams in response to clicking it to the "ON" state. Speculating further, quisk's sensitivity to pavu input monitor start-up sequence might then be mitigated because pavu might get its input setup done before the user clicks the "ON" button. That assumes quisk would not look for the pulse-audio input monitors before the user actually clicks the "ON" button. So, that's why I went looking for config options affecting quisk's start up behavior and the "ON" button. Loading in the "OFF" state, instead of "ON," seemed like a natural default behavior that might accommodate things like pulse-audio stream initialization. However, so far, I have found no related config options and I am out on a speculative limb anyway. Thoughts, anyone? Obviously, this is not a show-stopper. It's just a bit of awkwardness. |
Re: SO_PRIORITY on the socket
You are probably right (according to man pages). And according to that
toggle quoted message
Show quoted text
man page, it may even be possible that packets to this socket get precedence over packets from *other* interfaces. I was never able to *measure* a difference, even not when counting sequence errors over a long up-time period. But I also use a dedicated connection (using a cable for the radio and WiFi for the internet). Am 09.05.2023 um 19:53 schrieb Jaroslav ?karvada <zbox@...>: |
Re: SO_PRIORITY on the socket
IMHO any traffic generated on the machine will obey the priorities. I.e. imagine some upload going through the interface and IMHO such packets will be skipped in the queue by the SO_PRIORITY traffic. This is not my case, because I have dedicated interface where only the HL2 traffic is running, but for cases where the internet or LAN traffic shares the same interface with the HL2 this may help
toggle quoted message
Show quoted text
73! Jaroslav, OK2JRQ Christoph v. W¨¹llen napsal(a): I am not an expert, but I think these priorities are used by *routers* to make decisions, |
Re: SO_PRIORITY on the socket
I am not an expert, but I think these priorities are used by *routers* to make decisions,
toggle quoted message
Show quoted text
as far as I know they have little effect on packet handling inside *computers*. If this were the case, they have little effect on traffic within a subnet, as it is typical for SDR. On MacOS I use #ifdef __APPLE__ //optval = 0x10; // IPTOS_LOWDELAY optval = 0xb8; // DSCP EF if(setsockopt(tmp, IPPROTO_IP, IP_TOS, &optval, sizeof(optval))<0) { perror("data_socket: IP_TOS"); } #endif and also have not seen much effect in "real life". Am 09.05.2023 um 15:58 schrieb Jaroslav ?karvada <zbox@...>: |
SO_PRIORITY on the socket
Hi,
this was originally mentioned in [1] and it seems some SDRs use it. I have been using it for some time with quisk and HL2 and I haven't seen any problems. I also haven't seen any visible improvements, but it's because I have dedicated ethernet thus the packet scheduling is not an issue there. I think generally it could help 73! Jaroslav, OK2JRQ [1] --- a/hermes/quisk_hardware.py +++ b/hermes/quisk_hardware.py @@ -153,6 +153,7 @@ class Hardware(BaseHardware): self.socket_discover = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) self.socket_discover.setblocking(0) self.socket_discover.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) + self.socket_discover.setsockopt(socket.SOL_SOCKET, socket.SO_PRIORITY, 6) found = False st = "No capture device found." port = self.conf.rx_udp_port |