QRNix, HF DSP noise reduction

Technical specifications

The current QRNix hardware and DSP path.

These facts describe firmware 0.3.5 and the v0.2.0 board design.

Audio and operation

At a glance.

ApplicationStandalone DSP noise reduction between a radio audio source and a speaker or amplifier.
ModesBypass, Spectral with manual one-second noise capture, and Adaptive with a continuously updated per-bin estimate.
Input behaviorTwo audio input channels are monitored. QRNix selects the stronger sustained channel and processes the selected signal as mono.
Output behaviorThe selected, processed mono signal feeds both audio outputs.
Source recommendationLine output preferred. Controlled headphone output supported. Speaker-level output requires external attenuation before the current line input.
ControlsReduction 0 to 30 dB, Smoothing 0 to 100%, Whitening 0 to 100%, and Aggression 0.00 to 2.00; three-position mode switch; one button.
Extra featuresTone-kill in all modes, Post-filter in Spectral and Adaptive, CLIP input-overload indication, and automatic input selection.
DisplayOptional 0.96 inch SSD1306 OLED, 128 by 64 pixels, I²C address 0x3C. Audio processing continues without it.
PowerUSB.

DSP engine

One audio path, two noise estimators.

Signal path

SGTL5000 ADC → STFT → selected noise-reduction core → inverse STFT → SGTL5000 DAC.

Transform

25 ms frames, rounded to a 2048-point CMSIS-DSP FFT in both noise-reduction modes.

Memory invariant

Spectral and Adaptive processors are never allocated together. A mode change frees the old processor before creating the next one.

Board

Current v0.2.0 PCB design.

ProcessorTeensy 4.0, NXP i.MX RT1062 ARM Cortex-M7 at 600 MHz, 1 MB RAM, 2 MB flash.
Audio hardwareTeensy Audio Shield Rev D or D2 with SGTL5000 codec.
Board size51.3 by 66.8 mm.
StackTwo layers, 1.6 mm nominal thickness.
Front panel hardwareFour 10 kΩ trim pots, three-position mode switch, button, and OLED provision.
Audio jacksLine In and Line Out.
Firmware0.3.5, LGPL 2.1-or-later.

Current input limit

Keep speaker-level output out of the line input.