Python JavaScript PHP HTML Shell

4HAM Spectrum Analysis

Self-hosted HF/VHF spectrum observatory powered by RTL-SDR. Decodes FT8, FT4, WSPR, CW and APRS, maps propagation in real time and exports academic analytics.

A comprehensive self-hosted observatory for amateur radio HF/VHF activity. It transforms an inexpensive RTL-SDR device plus a Linux PC or Raspberry Pi into a continuously-running propagation and occupancy laboratory.

Key Features

4ham-spectrum-analysis is an end-to-end, self-hosted observatory for amateur radio HF/VHF activity, designed to turn an inexpensive RTL-SDR (or compatible SDR) plus a Linux PC or Raspberry Pi into a continuously-running, scientifically-honest propagation and occupancy laboratory.

The platform combines:

  1. Real-time DSP and waterfall — adaptive power/threshold occupancy detection, in-browser spectrum and waterfall, per-event SNR/Doppler/crest extraction.
  2. Multi-decoder pipeline — FT8/FT4/WSPR via WSJT-X, CW via custom matched-filter detector, SSB via voice activity detection + optional Whisper ASR transcription, APRS via Direwolf KISS (RF) and APRS-IS (TCP), with a unified rf_gated 3-rule classification on map and analytics.
  3. NCDXF/IARU Beacon Analysis — UTC-aligned 10 s slot scheduler monitoring 18 fixed beacons across 20/17/15/12/10 m, native dashboard tab with KPIs, ionospheric context, per-band propagation scoring, recent-activity matrix, and a multi-band beacon overlay rendered directly on the main propagation globe.
  4. Confirmed-decode propagation scoring — only verified callsign+SNR events feed the propagation score; events without a callsign are recorded as band occupancy but excluded from scoring, keeping the metric defensible for academic use.
  5. Automated multi-band scan rotation — configurable dwell, presets, scheduler, live countdown, mode-aware UI.
  6. Academic Analytics dashboard — propagation scoring, band heatmaps, instrumental KPI gauges, historical aggregations (1 h → 30 d), exhaustive XLSX/CSV exports with DXCC/grid/source enrichment.
  7. Public push-mirror to shared PHP+MySQL hosting — read-only replica of the Academic Analytics dashboard published every 5 min via signed JSON snapshots, with no inbound port-forwarding, no WebSocket, and no admin surface on the public side (e.g. https://cs5arc.pt/external_academic_analytics/).
  8. Production-grade ops — systemd packaging, graphical whiptail installer, WAL-mode SQLite with composite indices, structured logs, bcrypt admin auth, HMAC-SHA256-signed mirror replication.
  9. This software serves solely as a radio science guide for an operating amateur radio station or for the analysis of radioelectric data by the scientific community.