A small program to feed the audio from your QRP-Labs QDX digital transceiver through to your computer's speakers

Overview

qdx-receiver

What is this?

A small program to feed the audio from your QRP-Labs QDX digital transceiver through to your computer's speakers. Also gives you a small user interface in which you can see a signal-strength meter, control the output volume coming from your speakers, and to tune the QDX to a particular frequency (receive SSB and other signals!).

OK, Why?

The QDX has the following characteristics:

  • High performance embedded SDR SSB receiver with 60-70dB of unwanted sideband cancellation
  • Built-in 24-bit 48ksps USB sound card
  • Built-in USB Virtual COM Serial port for CAT control
  • Si5351A Synthesized VFO with 25MHz TCXO as standard So it's a superb receiver, and works very well with software such as WSJT-X etc. for digital amateur radio modes.

However, its RF amplifier expects to see a well-matched antenna; if the antenna is presenting a poor match to the transmitter, it's quite likely that you will blow the BS170 power amplifier transistors. So, how are you to tune the antenna (using an ATU) without transmitting? Typically this can be done by listening to the received audio of the radio, whilst tuning the antenna, listening for the loudest signal. You're then in the right area, and transmission can be used to fine-tune.

Except that the QDX has no speaker. You could watch the received audio meter in WSJT-X, but I find it easier to tune to an empty part of the band, and assess the noise with my ears.

That's where qdx-receiver could help.

Plus you could use it to tune around and find other interesting signals!

Project Status

Project started 9 Jul 2023, currently a bit rough, but working.

Known issues:

  • Some audio artifacts, especially soon after startup. Probably my gain setting is wrong.
  • The signal strength meter is "an attempt" - it vaguely matches my real transceiver's meter, sometimes.

Needed before a proper release:

  • No packaging/release system yet. Build it yourself from source.
  • Finds the QDX audio output device, but only finds the speaker device as named on a MacBook or my old Windows laptop. (Eventually you'll be able to choose this.)
  • Developed and tested best on macOS Catalina. Should build on Linux and Windows.

Nice to have:

  • Volume control could adjust the QDX's actual gain.
  • No configuration yet (to store the last tuned frequency on each band; the last used frequency; the amplitude).
  • Make the GUI "beautiful".

Really nice to have:

  • A waterfall display.
  • Bandpass/notch filtering for CW.
  • DSP noise reduction.
  • The moon on a stick.

How To Use qdx-receiver

  • Use the banks of up/down arrow buttons to increase/decrease a digit in the frequency display.
  • Use your mouse wheel to continue incrementing/decrementing that digit, to scroll through the spectrum.
  • Click one of the "metre bands" buttons to switch to the FT8 frequency of that band.
  • Adjust the output volume with the volume slider.
  • Toggle the audio on/off with the mute button.

Building

There's no download yet, so to try it you'll need the Rust toolchain. See https://rustup.rs for how to obtain it. With modern Rust installed, clone this repo. You'll also need to install portaudio and fltk. No docs on how to do this yet. From the command line, cd to your cloned repo, and do: cargo build Now make a nice cup of tea. To run, do: cargo run

Notes

License, Copyright & Contact info

This code is released under the Apache 2.0 License: http://www.apache.org/licenses/LICENSE-2.0.html.

(C) 2023 Matt J. Gumbley

[email protected]

Mastodon: @[email protected]

http://devzendo.github.io/qdx-receiver

You might also like...
this tool visualizes audio input
this tool visualizes audio input

audiovis I tried to create a high quality classic audio visualiser with cpal as audio backend and wgpu as accelerated video frontend demo bar visualis

Symphonia is a pure Rust audio decoding and media demuxing library supporting AAC, FLAC, MP3, MP4, OGG, Vorbis, and WAV.

Pure Rust multimedia format demuxing, tag reading, and audio decoding library

A simple CLI audio player with strange features.

legacylisten legacylisten is a simple CLI audio player I wrote because no existing one fulfilled my needs. The main feature is that you can change how

Rust - Augmented Audio Libraries
Rust - Augmented Audio Libraries

Augmented Audio Libraries In this repository I'll push some experiments trying to use Rust for audio programming. Goals Goal 1: Learn & have fun This

CLI Rust Audio Visualizer
CLI Rust Audio Visualizer

crav Console-based Rust Audio Visualizer It can run in the terminal but also has a 3D accelerated backend implemented in wgpu. demo compatibility The

A tool that switch default audio playback device on windows.

AudioSwitch A tool built by Rust that can switch default audio playback device on windows. How to use specify which device you want to use Execute it

Simple examples to demonstrate full-stack Rust audio plugin dev with baseplug and iced_audio
Simple examples to demonstrate full-stack Rust audio plugin dev with baseplug and iced_audio

iced baseplug examples Simple examples to demonstrate full-stack Rust audio plugin dev with baseplug and iced_audio WIP (The GUI knobs do nothing curr

A low-level windowing system geared towards making audio plugin UIs.

baseview A low-level windowing system geared towards making audio plugin UIs. baseview abstracts the platform-specific windowing APIs (winapi, cocoa,

MVC audio plugin framework for rust

__ __ | |--.---.-.-----.-----.-----.| |.--.--.-----. | _ | _ |__ --| -__| _ || || | | _ | |

Owner
Matt Gumbley
Software Engineer, Radio Amateur (M0CUV). Interested in weak-signal low-power communication techniques. Currently working on the transmitter in digimorse.
Matt Gumbley
🎥 Turn any playlist into a Podcast feed

Playcaster Turn any playlist1 into a Podcast feed Installation Playcaster can be installed from Cargo: cargo install playcaster You will additionally

Jessica Stokes 3 Nov 6, 2022
The open source musician's digital music stand

DiNoScore* A digital music stand written with GTK in Rust using WoAB. Includes an editor to import your sheet. Touch-friendly thanks to Libhandy. Ever

null 13 Dec 5, 2022
A modular command line digital signal processor built in rust

Ever wanted to pipe raw audio samples around in the terminal to impress your friends at a party? Well then, you've come to the right place.

Sam Andreae 13 Dec 15, 2022
A small program that converts midi files to RPE (Re: Phigros Edit) Charts

Midi to RPE(Re: Phigros Edit) chart converter $ mid2json --help Usage: mid2json [OPTIONS] <MIDI_PATH> Arguments: <MIDI_PATH> Name of the input fil

液氦 4 Jun 8, 2023
Cross-platform audio I/O library in pure Rust

CPAL - Cross-Platform Audio Library Low-level library for audio input and output in pure Rust. This library currently supports the following: Enumerat

null 1.8k Jan 8, 2023
Rust audio playback library

Audio playback library Rust playback library. Playback is handled by cpal. MP3 decoding is handled by minimp3. WAV decoding is handled by hound. Vorbi

null 1.2k Jan 1, 2023
Rust bindings for the soloud audio engine library

soloud-rs A crossplatform Rust bindings for the soloud audio engine library. Supported formats: wav, mp3, ogg, flac. The library also comes with a spe

Mohammed Alyousef 38 Dec 8, 2022
A collection of filters for real-time audio processing

Audio Filters A collection of filters for real-time audio processing Feature Progress #![no_std] (via libm) f32 & f64 capable (via num-traits) SIMD Do

null 42 Nov 5, 2022
A discord.py experimental extension for audio recording

discord-ext-audiorec This project is currently under development. We do not guarantee it works.

Tomoya Ishii 11 Jan 2, 2023
Implements the free and open audio codec Opus in Rust.

opus-native Overview Implements the free and open audio codec Opus in Rust. Status This crate is under heavy development. Most functionality is not wo

Nils Hasenbanck 9 Nov 28, 2022