DXview

/P - Radios

Handheld radios currently in use.

Radio Photo Bands Analog DMR C4FM
Yaesu FTX-4 Yaesu FTX-4 2m/70cm ✓ − −
Yaesu FT-5D Yaesu FT-5D 2m/70cm ✓ − ✓
Quansheng K5 Quansheng K5 2m/70cm ✓ − −
Baofeng UV-5R Mini Baofeng UV-5R Mini 2m/70cm ✓ − −
Baofeng DM-32 Baofeng DM-32 2m/70cm ✓ ✓ −
Anytone D890 Anytone D890 2m/70cm ✓ ✓ −

Development Roadmap

Two software projects, staged in this order.

Stage 1 · deployed as ubersdr-multi-dev

UberSDR multi-band

Extend UberSDR from a single-instance HF deployment to one deployment serving all bands through a single web interface, backed by all three radiod instances.

  • The coverage map is always derived at runtime from the available radiod instances β€” never hardcoded.
  • One linear frequency-to-pixel mapping across the whole range, with uncovered regions rendered explicitly as labelled dead zones.
  • A tuning action that creates a new stream must stop the original stream.
  • The existing max-sessions cap applies to the total across all instances, not per instance.
  • Runs as an isolated parallel deployment during development. Production UberSDR is untouched.
Stage 2 · planned

SoapySDR bridge β€” libSoapyKa9q

Expose the whole front-end pool to external SDR applications as one virtual radio over SoapyRemote. UberSDR is not in this path.

  • One virtual device; frequency routing between instances is internal.
  • Zero configuration β€” instances found via mDNS, coverage learned from status beacons.
  • Sample rate is client-owned; no resampling to fake width.
  • A cross-instance retune that can't sustain the current rate tears the stream down and rebuilds it rather than clamping silently.
  • Tuner gain stages are visible but not settable β€” shared front-end properties.
  • Channel ownership tagging, compatible with ubersdr-multi.

Known gaps

1Mast heights and positions; lightning protection and grounding arrangement
2MX-S3 insertion loss, isolation and power handling β€” from datasheet or measurement
3Y-splitter loss into the two V/UHF receivers β€” measure, or accept the nominal ~3.5 dB
4HF PA β€” model and rating, once chosen

/QTH - Hotspots

Hotspot Type Frequency Platform Notes
RF.Guru Analog SVX Hotspot Analog (SVXLink) 439.675 simplex RF.Guru transceiver, 500 mW Primary analog hotspot
WPSD Digital Hotspot Digital (WPSD) TX 439.775 Β· RX 433.775 Raspberry Pi 3 Primary digital hotspot

/M - Hotspot Box

This boxed dual hotspot is a portable setup meant for use in the car. It provides SVXlink analog access to the Belgian SVXlink network (portal.be.svx.link), and an MMDVM digital hotspot running WPSD hotspot software.

Both hotspots try Wi‑Fi in this order: the QTH network, the car’s Wi‑Fi hotspot, then the iPhone personal hotspot. A small companion server on one of the hotspots exposes a simplified status page for both, so you can glance at state from a phone while driving.

Hotspot status dashboard: SVX in TX, WPSD IDLE, Configure and LIVE in header
Field Detail
Enclosure Mini waterproof suitcase
Power 12 V β†’ 5 V microUSB buck converter
Network Wi-Fi, tried in order: QTH network, car hotspot, iPhone personal hotspot
Monitoring Companion server on one hotspot serves a simplified combined status page, readable at a glance from a phone

ON8ST/P - Antennas/Cables

Content coming soon...

ON8ST/P - Radios

Content coming soon...

ON8ST/P - RF switching and filtering

Content coming soon...

SDR receive module

This module β€” RX-888 with dual MX-S3 TX protection β€” is no longer a separate portable build. It’s permanently installed at the fixed station.

See for the as-built detail, or to use the live receivers.

ON8ST/P - Mast

Content coming soon...

ON8ST/P - Console

Content coming soon...

ON8ST/P - HTs

Content coming soon...

/M - Mobile Radios

Equipment Type Bands Photo
Yaesu FTM-500 Mobile Transceiver 2m / 70cm Yaesu FTM-500

/M - Mobile Antennas

Equipment Type Bands Photo
Diamond MR77 Mobile Antenna 2m / 70cm Diamond MR77
Diamond NR-770H Mobile Antenna 2m / 70cm Diamond NR-770H

SDR Station Overview

Station architecture and the SDR chain, as built.

Design intent

The station targets a stable, always-ready operating environment: HF and V/UHF rigs work independently on their own antennas with no manual reconfiguration, and a permanent SDR receive path stays up for both domains so spectrum visibility is continuous regardless of which radio is active. No cable swaps, no RF repatching β€” the shack stays usable after long breaks.

The switching and control layer makes antenna and mode changes quick and low-risk, and blocks classic failure modes such as keying into the wrong path. The goal is a structured, foolproof station that supports experimentation without infrastructure busywork.

MODULE 1 Β· ANTENNAS MODULE 2 Β· SWITCHING & PROTECTION MODULE 3 Β· RADIO MODULE 6 Β· HOTSPOTS MODULE 5 Β· SDR NETWORK & PUBLISHING MODULE 4 Β· POWER HF FARM β€” dipole Β· EFHW V/UHF β€” Diamond X50 HF PA planned Β· module 3 microHAM TRIO routing Β· band decode Β· TX inhibit MX-S3 #1 β€” HF PTT-switched RX tap MX-S3 #2 β€” V/UHF PTT-switched RX tap FT-710 HF TX/RX FTX-1 multiband Β· V/UHF TX/RX RF.Guru SVX analog Β· SVXLink WPSD digital Β· duplex RX taps β€” Y-splitter feeds both V/UHF receivers RX-888 HF RTL-SDR 2 m Airspy R2 70 cm RYZEN 7 Β· LINUX Β· DOCKER radiod HF radiod VHF radiod UHF IP MULTICAST BUS CONSUMERS β€” same host UberSDR ubersdr.on8st.be omnisdr omnisdr.on8st.be ka9q-web sdr-hf Β· HF ka9q-web sdr-vhf Β· 2 m ka9q-web sdr-uhf Β· 70 cm ubersdr-multi-dev experimental Β· non-contiguous HF + 2 m + 70 cm every container on one shared Docker bridge radiod, front ends and all consumers on this host RF β€” solid, coloured by band control β€” grey dashed power β€” green dashed planned β€” dashed outline module boundary β€” grey dashed frame STATION LAN MAC MINI Β· LINUX β€” EDGE Caddy Β· TLS Β· dyn DNS Β· all *.on8st.be names INTERNET mains supply Β· battery box in cold standby, manual fallback
Fig. 1 β€” Full station schematic, grouped by module. Dashed frames mark module boundaries. Read it top to bottom: antennas, routing, protection, then the split into transmitters on the left and receivers on the right. Every piece of software β€” radiod, UberSDR, omnisdr and the two planned projects β€” sits inside the Ryzen frame, because it all runs on that one host. The two MX-S3 units are the crossing point β€” everything below them on the receive side stays connected permanently, which is only safe because those units disconnect it on PTT. Note that power is mains-fed: the battery box is a manual fallback in cold standby, not an automatic changeover.

SDR Module

The most fully specified part of the station. One bare-metal server hosts three independent front ends, each with its own receiver daemon, feeding several network-distributed consumers.

Host

HardwareRyzen 7 mini server
OSLinux, bare metal β€” no hypervisor
ContainerisationDocker, all components on one shared bridge network
Reverse proxyCaddy, on the Mac mini edge server
Config managementGit, for rollback

RX-888 MkII

ADCLTC2208, 16-bit at 130 MSPS
Host interfaceUSB 3.0, ~3 Gbps
Spectrum at once~64 MHz
Nominal coverage~10 kHz to 1.8 GHz, depending on band and tuner path
HF attenuatorTunable, 0 to βˆ’31.5 dB
TunerR828D (detected, not driven β€” see note below)

In this station the RX-888 is HF-only, by design. The R828D VHF/UHF tuner is detected but not driven by the open firmware, and ka9q-radio does not support that path. Run here at 64 Ms/s, the Nyquist limit is 32 MHz β€” the whole HF allocation in one capture, with 6 m outside the window.

RYZEN 7 MINI SERVER Β· BARE METAL LINUX Β· NO HYPERVISOR FRONT ENDRECEIVER DAEMON TRANSPORTCONSUMERS USB 3.0 RX-888 direct sampling 16-bit Β· 32 MHz radiod β€” HF 239.185.143.241:5006 RTL-SDR R820T2 Β· 8-bit ~2 MHz radiod β€” VHF 239.198.167.245:5006 AIRSPY R2 low-IF Β· 12-bit ~9 MHz radiod β€” UHF 239.165.43.204:5006 MULTICAST BUS UberSDR web Β· HF only today omnisdr panadapter ka9q-web Γ— 3 one per band β€” HF Β· 2 m Β· 70 cm ubersdr-multi-dev experimental Β· Β§9.1 SUPPORTING INFRASTRUCTURE Docker β€” single shared bridge Caddy β€” Mac mini edge Config in git β€” rollback mDNS / Avahi discovery Β· periodic status beacons Β· dynamic channels created on demand
Fig. 5 β€” SDR module internals. Solid boxes are running today; dashed boxes are the two staged projects in Β§9. Every consumer reaches every front end through the same multicast bus, which is why adding a fourth receiver is a configuration change rather than a redesign.

Receiver daemons

InstanceFront endCoverage
HFRX-888 mk20–32 MHz
VHFRTL-SDR Blog V42 m
UHFAirspy R270 cm

Coverage totals about 43 MHz across a 450 MHz span β€” under a tenth of it. Instances advertise via mDNS/Avahi and publish periodic status beacons; channels are created and destroyed dynamically, so consumers tune without configuration changes.

Software

Multiple web front ends run against the same three radiod instances, and they are not redundant β€” they answer different questions.

UberSDR β€” public web receiver

Addressubersdr.on8st.be
RolePublic web SDR β€” the published face of the station
Front end todayRX-888 / HF only
Context shownQTH map, local & UTC time, weather, solar indices

omnisdr β€” multi-band panadapter

Addressomnisdr.on8st.be
RoleWhole-spectrum panadapter and band-activity monitor
LayoutOne panel per band, each with its own scale; spectrum plus waterfall
Cross-receiverReads across all three radiod instances

ka9q-web β€” one instance per band

Three further instances run alongside the two above, all on the same host: a lightweight UI bound to each radiod instance directly β€” a conventional waterfall-and-audio receiver with nothing in between.

AddressFront endBand
sdr-hf.on8st.beRX-8880–32 MHz
sdr-vhf.on8st.beRTL-SDR144–146 MHz
sdr-uhf.on8st.beAirspy R2~431–440 MHz

ubersdr-multi-dev β€” experimental

An experimental UberSDR build, running on the same host, extending it to non-contiguous spectrum β€” HF plus the 2 m and 70 cm bands behind a single interface. It runs alongside production and is under active development. Its target is the seam the three ka9q-web instances expose: one URL, all bands, gaps rendered honestly rather than papered over.

Server

Uptime: β€” Β· Refreshes every 10s

Load Average (1m, 5m, 15m) [β€”]

1m 5m 15m

Network bandwidth (Mbps, per 10s) [β€”]

Local Public

Memory % [β€”]

Disk % [β€”]

Page views (HTTP)/h [β€”]

Local Public

API calls/h [β€”]

Local Public

Latest KPI entries

Load 1m
β€”
Load 5m
β€”
Load 15m
β€”
Memory %
β€”
Disk %
β€”
Page views (last 5h)
β€”
API calls (last 5h)
β€”
Bandwidth (last 5)
β€”

Active external API clients (last 24h) [β€”]

Active now (last API call < 60s)
Active Inactive
IP address GeoIP location Active since Last API call
β€”

Database Management

Import Log
Waiting for import to start...

Manage

Resource Country Last Import # Imported Records Actions

View

Callsign ↕ Frequency ↕ Location ↕ Mode ↕ Country ↕ Resource ↕ Latitude ↕ Longitude ↕
Source Count Coords % Update
SDR Book (receiverbook.de)
- -
WebSDR.org
- -
No operations running
0%
Waiting for operations...

Database Summary

Total Records
-
Repeaters
-
Hotspots
-
With Activity
-
Last Update: -

Background Polling Status

Checking...

Update Log

Waiting for updates...

Actions

Logs

Tracks which pages are opened by each user. Multiple views of the same page in one session are counted.

IP / Location User Page Delta t

Users and Roles Management

Active Users

Users who have been active on this server (most recent first).

Username Name Location Last Active Total Views
Loading…

Roles

Name Description Permissions Actions

Users

Username Email Role Created Actions
Welcome

Add Role

Add Resource

Used for RepeaterBook imports; saved as default.

Enter the URL to the Excel file or data source (not required for RepeaterBook)

Import from RepeaterBook

Select countries to import repeater data from RepeaterBook.com

Import Status:

Login

Add User

Leave empty to keep current password when editing

ON8ST Β© 2026
β€’ 2026-01-01