Thanks, I’ll try advices from this mail and thread.
I am contributing to development of software for RP2040 to transmit WSPR and I
need just the simple monitoring tool. So I designed simple flowgraph in GNU
radio, which just receives given frequency using SDR, filters it by narrow band
LP filter and sends the tone (approximately 1500 +-4 Hz) to Audio sink. Nothing
complicated. I run it on the notebook which plays the tone from speakers and
microphone on the same notebook is listening to it and is sending the digitized
sound to WSJT-X. It work as intended.
I just wanted to get the signal from the audio output of the GNU radio to the
audio input of the WSJT-X a little better way than "scratching with my left
hand behind my right ear"
So no communication with transceiver, no WSPR transmission (my RP2040 is the
monitored transmitter).
Jakub Šerých
From: Marcus Müller
Sent: Thursday, June 6, 2024 2:38 PM
To: Kevin McQuiggin ; discuss >> GNURadio Discussion List
; dave_a...@bigpond.com; Šerých Jakub
Subject: Re: Audio sink to "wire"
Hi everyone,
trying to get the discussion back under one email thread (hint: it's easier to
deal with the mailing list if you *don't* get the digest but each email
individually, and set up your email client or -service to file emails from the
mailing list into their own folder).
So, Dave pointed out:
Under Linux, a simple approach is to use a loopback (essentially establish a
Virtual Audio Cable). The loopback is established by
sudo modprobe snd_aloop enable=1,1 index=10,11
The WJST-X audio input is then plughw:CARD=Loopback_1,DEV=1
and the GNU Radio audio sink device can be left as default.
right! That works with every sound system.
However, if the intent is to use WSJT-X, there is some extra complexity.
WSJT-X assumes it is communicating with a transceiver (a rig) and will look to
check that the rig is configured consistently with what WSJT-X expects. So you
need another program that emulates a chosen type of transceiver (eg a Kenwood
TS-2000) and responds to those WSJT-X checks. Switching between Tx and Rx
requires some similar complexity.
Indeed, and that's why Henning Paul has his own CAT/hamlib proxy for
interfacing with WSJT-X to emulate his own hardware frontend, see [1] slide 22.
Luckily, I don't think you'll have to go that far, usually. Depends, really, on
what you want to control from WSJT-X; you'd choose CAT as transceiver/rig type,
probably.
However, I'm not deeply into these ham radio applications. If there's demand to
talk about ham affairs like plugging WSJT-X to GNU Radio (and maybe ask whether
someone can talk about their experiences doing something specific), I do
recommend heading over to our Matrix chat room for GNU Radio in amateur radio,
#HamRadio:gnuradio.org
you can easily access that, if you've never used Matrix before, using, for
example, [2]. Note that there's a lot of knowledge out there – and a lot of
implementations that not everyone knows about. For example, I think someone has
implemented FT-8 in GNU Radio (can't find the link right now). And: there's a
series of talk recordings, organized by Barry Duggan himself, which I find
worth watching [3].
Best,
Marcus
[1] https://github.com/hennichodernich/talks/blob/main/SDR_Selbstbau.pdf
[2] https://app.element.io/#/room/#HamRadio:gnuradio.org (account necessary for
writing messages, you can sign up for free there, or anywhere else on the
matrix network; do join [2a] while you're there)
[2a] https://app.element.io/#/room/#gnuradio-space:gnuradio.org
[3] https://wiki.gnuradio.org/index.php/Talk:HamRadio
On 05.06.24 23:21, Kevin McQuiggin wrote:
Hi Jakub and Marcus:
On the Mac, use the BlackHole virtual audio driver. It’s at
https://github.com/ExistentialAudio/BlackHole. You can create a virtual audio
device and point WSJT-X at it for input, output, or both. It works well and
the developer is responsive to questions and suggestions.
Kevin
On Jun 5, 2024, at 1:12 PM, Marcus Müller
<mailto:marcus.muel...@ettus.com> wrote:
Uff, please don't recommend such stunts :) This can be solved easily in
software at zero cost.
If you're on a modern Linux, you use the pipewire audio system. Install
`qpwgraph`, start WSJT-X and just use qwpgraph to connect the output of your
GNU Radio flow graph to the input of your WSJT-X. (or vice versa, really!)
If you're using an older Linux distribution, you might still be using
pulseaudio. No problem, you just 1. create a "black hole" audio sink, then 2.
form a virtual microphone input from that:
1. pactl load-module module-null-sink sink_name=cable_out
sink_properties=device.description=cable_out
2. pactl load-module module-remap-source master=cable_out.monitor
source_name=cable_in source_properties=device.description=cable_in
You'd then use `cable_out` as device name in your GNU Radio Audio sink. That's
it.
On Windows, I'm no expert, but there's many lo