Deep dive into MRRC system architecture, DSP processing pipeline and advanced feature implementations
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β MRRC System Architecture V4.9.3 β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Client Layer β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ ββββββββββββ β
β β Mobile UI β β Desktop UI β β CW Decode β β FT8 Ctrl β β
β β mobile_modern β β modern.html β β cw_live.html β β ft8_ultronβ β
β ββββββββ¬ββββββββ ββββββββ¬ββββββββ ββββββββ¬ββββββββ ββββββ¬ββββββ β
β β β β β β
β ββββββββββββββββββββ΄ββββββββββββββββββ΄βββββββββββββββββ β
β β β
β HTTPS / WebSocket β
β βΌ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Service Layer β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β MRRC Main (Tornado) β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€ β
β β /WSCTRX - Main control + audio (PTT/frequency/mode) β β
β β /WSATR1000 - Tuner power/SWR real-time display β β
β β /WSCW - CW backend decode (optional) β β
β ββββββββ¬ββββββββββββββββββββββββββββββββββββββββββββββ¬βββββββββββ β
β β β β
β βΌ βΌ β
β βββββββββββββββββββ ββββββββββββββββββββ β
β β rigctld β β ATR-1000 Proxy β β
β β (Hamlib) β β atr1000_proxy β β
β ββββββββββ¬βββββββββ ββββββββββ¬ββββββββββ β
β β β β
β βΌ βΌ β
β βββββββββββββββββββ ββββββββββββββββββββ β
β β Transceiver β β ATR-1000 Tuner β β
β β IC-M710 β β Power/SWR Meter β β
β βββββββββββββββββββ ββββββββββββββββββββ β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β FT8/ULTRON Integration (Optional) β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€ β
β β ULTRON Automation Tool β JTDX/WSJT-X β UDP 2237 β β
β β DXCC Target Tracking, Smart QSO, Auto CQ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Component | File | Function |
|---|---|---|
| Main Program | MRRC |
WebSocket server, handles audio streams and control commands |
| Audio Interface | audio_interface.py |
PyAudio wrapper, supports multiple format decoding |
| DSP Processing | wdsp_wrapper.py |
WDSP library wrapper, NR2/AGC/ANF |
| Transceiver Control | hamlib_wrapper.py |
rigctld communication wrapper |
| Tuner Proxy | atr1000_proxy.py |
ATR-1000 independent proxy process |
| Voice Assistant | voice_assistant_service.py |
Whisper ASR + Qwen3-TTS |
| FT8 Integration | ft8/ultron.py |
ULTRON automation tool, DXCC tracking |
Transceiver Audio (48kHz Float32)
β
βΌ
βββββββββββββββββββ
β DC Removal + β Protect downstream processing
β Soft Clipping β
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Int16 Convert β 48kHz β 16bit
ββββββββββ¬βββββββββ
β
βΌ (Optional)
βββββββββββββββββββ
β WDSP Processing β NR2/NB/ANF/AGC
β - Spectral NR β 15-20dB reduction
β - Noise Blank β
β - Auto Notch β
β - AGC Gain β
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Opus Encode β 16kHz/20kbps
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β WebSocket β Browser transport
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β AudioWorklet β Low latency playback
βββββββββββββββββββ
Microphone Input (48kHz)
β
βΌ
βββββββββββββββββββ
β Anti-Alias β 6kHz lowpass
β Filter β
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Downsample β 48kHz β 16kHz
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β TX Equalizer β 3-band EQ presets
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Opus Decode β 16kHz β 48kHz
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β WebSocket β Send to server
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ
β Transceiver In β CAT PTT control
βββββββββββββββββββ
WDSP (Warren Pratt's Digital Signal Processing) is a high-performance DSP library from the OpenHPSDR project, widely used in professional amateur radio software.
| Module | Function | Effect |
|---|---|---|
| NR2 | Spectral Noise Reduction | 15-20dB noise reduction depth |
| NB | Noise Blanker | Eliminates impulse interference |
| ANF | Automatic Notch Filter | Removes single-tone interference |
| AGC | Automatic Gain Control | 4 selectable modes |
MRRC V4.9 introduces a complete CW real-time decoding system with a Browser-First AI design philosophy.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β CW Decoding Dual-Mode β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β Frontend Mode (Recommended) β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β Audio Stream βββββΊβ ONNX Runtime βββββΊβ CTC Decode β β
β β (16kHz) β β (2MB model) β β β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β β β
β β ββββββββββΌβββββββββ β
β β β QSO State β β
β β β Machine β β
β β β Smart Reply β β
β β ββββββββββββββββββ β
β β β
β Latency: <50ms β
β Dependencies: None (pure browser) β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β Backend Mode (Alternative) β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β WebSocket βββββΊβ morseangel βββββΊβ Text Output β β
β β /WSCW β β (PyTorch) β β β β
β ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β
β β
β Latency: <100ms β
β Dependencies: PyTorch + CUDA β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
| Metric | Frontend Mode | Backend Mode |
|---|---|---|
| Model Size | 2MB (ONNX) | 160MB (PyTorch) |
| Inference Latency | <50ms | <100ms |
| Character Error Rate | <3% | <2% |
| Network Dependency | None | Required |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β ATR-1000 Integration β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β Frontend (mobile_modern.js) β
β β β
β β WebSocket /WSATR1000 β
β βΌ β
β βββββββββββββββββββ β
β β MRRC Main β Message routing + batch broadcast β
β ββββββββββ¬βββββββββ β
β β β
β β Unix Socket β
β βΌ β
β βββββββββββββββββββ WebSocket β
β β atr1000_proxy βββββββββββββββββββββββββββββββββββ β
β β Independent β β β
β β Process β β β
β ββββββββββ¬βββββββββ β β
β β β β
β ββββββββββββββββββββββββ¬βββββββββββββββββββββββ β
β β β
β βΌ β
β ββββββββββββββββββββββββ β
β β ATR-1000 Device β β
β β 192.168.1.63:60001 β β
β β Power/SWR/Relay β β
β ββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
ULTRON Enhanced is MRRC V4.9's new FT8 digital mode automation tool, supporting JTDX, WSJT-X, MSHV software integration.
| Feature | Description |
|---|---|
| Auto CQ | Automatically call CQ when idle |
| Smart Response | Automatically respond to incoming calls |
| DXCC Tracking | Entity whitelist, intelligent selection |
| Band Strategy | Different targets per band |
| Log Analysis | Automatically analyze worked entities |
# Enter FT8 directory
cd ft8
# Run ULTRON (Python version)
python run_ultron.py
# DXCC enhanced mode
python ultron_dxcc.py
# Analyze DXCC status
python dxcc_analyzer.py
| Command | Format | Description |
|---|---|---|
| Set Frequency | setFreq:14074000 |
In Hz |
| Set Mode | setMode:USB |
USB/LSB/CW/FM |
| PTT Control | setPTT:1 |
1=TX, 0=RX |
| Volume | setRXA:50 |
0-100 |
| Filter | setFilter:2400 |
In Hz |
| WDSP Control | setWDSP:NR2:1 |
Module:on/off |
Check the installation guide or join community discussion