Skip to content

fvdijke/HAMIOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

122 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📡 HF Propagation & Atmosphere Monitor

Real-time HF propagation and DX monitor for amateur radio operators — Windows 10/11

v5.0 · May 2026 · PA3FVD / Frank van Dijke · Developed with Claude AI (Anthropic)

Release Platform Python


HF Propagation   Atmosphere Monitor ## Overview

HF Propagation & Atmosphere Monitor gives amateur radio operators real-time insight into HF propagation conditions, solar weather, DX cluster activity, shortwave schedules, satellite tracking, lightning detection, and direct radio control — all in a modern, fully customisable dark-theme GUI built with PySide6/Qt6.


✨ Features

Category Description
Solar / Ionosphere SFI, SSN, Kp, A-index, Bz, solar wind, X-ray class — colour-coded with full parameter names
📶 HF Band Reliability Signal quality bars for 11 HF bands (160m–6m), MUF/LUF, click to tune via CAT
📻 Band Conditions Day/night conditions per band, 24h opening schedule heatmap
🌩 Storm Forecast NOAA 3-day geomagnetic storm probability (G1–G4+) with HAM radio impact tooltips
📈 Band / Solar History 90-day CSV archive, interactive 24h/7d/30d/1y range selector, K-index overlay
📡 Live DX Spots Real-time DX cluster from DXWatch.com, band/continent filter, heatmap
💡 Propagation Advice AI-style analysis cards per band
🌍 World Map 4096×2048 map with toggleable overlays — auto-downloaded at first start
🛰 Satellite Tracking TLE from CelesTrak, real-time position, orbit paths, footprint, QTH zone ping
Lightning Detection Live Blitzortung.org feed, animated ripple rings, QRN advice, proximity alert
🔔 Alerts Aggregated solar / propagation / weather / satellite alerts
📻 EIBI Shortwave Searchable schedule, auto AM-mode CAT tuning
📡 FT8 / Digital Reference table for FT8/FT4/WSPR/JS8Call and more
🕵 SpyStations Numbers stations database with CAT tuning
📟 CAT Interface Yaesu, Kenwood/Elecraft, Icom CI-V — live frequency display in header

🗺️ Map Overlays

Toggleable via the 🗺 Overlays button in the header:

  • Day/night terminator with grayline band
  • Aurora oval (IGRF-2025 geomagnetic dipole model, K-index based)
  • Sun and Moon position with live phase icon and QTH horizon indicator (▲/▼)
  • Maidenhead locator grid (configurable font size)
  • Graticule (configurable 10° / 20° / 30° step)
  • Live DX spots with callsign labels
  • Satellite positions, orbit paths, footprints
  • Lightning strikes with animated ripple rings
  • Alert radius circles (warning + beep threshold)

🚀 Installation

Ready-to-use EXE (Windows, no Python needed)

  1. Download HAMIOS5.exe from the latest release
  2. Place in an empty folder
  3. Run — the world map is automatically downloaded on first start (~1–4 MB)

From source

git clone https://github.com/fvdijke/HAMIOS.git
cd HAMIOS
pip install PySide6
pip install pyserial websocket-client   # optional
python HAMIOS5.py

Dependencies

Package Required Purpose
PySide6 ✅ Yes GUI framework (Qt6)
pyserial Optional CAT radio interface
websocket-client Optional Live lightning detection

⚙️ Configuration

All settings are stored in hamios_config.json (auto-created on first run) and applied live without restart:

  • Station — callsign, QTH (lat/lon or Maidenhead), mode, power, antenna
  • Map — graticule step, Maidenhead / overlay font sizes, sun/moon icon sizes
  • Lightning — fade duration, alert radii, animation scale, beep settings
  • Alerts — K-index threshold, X-flare alert, satellite zone ping
  • CAT — serial port, radio type presets (FT-950, FT-817, TS-590, K3…)
  • Layout — save/load named profiles, snap-grid

📟 CAT Radio Interface

Configure via ⚙ Settings → CAT. Supports:

  • Yaesu FT-950 / 2000 / DX series — 8-digit FA command, default 38400 baud
  • Yaesu FT-817 / 857 / 897 — FA command
  • Kenwood / Elecraft — 11-digit FA command
  • Icom CI-V — binary BCD protocol

Live frequency displayed in the header bar. Click any frequency in the DX, EIBI, FT8, or SpyStations panel to tune directly.


🛰️ Satellite Tracking

  • TLE data from CelesTrak (Amateur, ISS, Weather, CubeSat)
  • Real-time position, configurable past/future orbit paths
  • Footprint: yellow (QTH outside range) / green (QTH in range)
  • Selection filter — show only your selected satellites
  • Zone ping — ascending tone when a satellite enters your QTH zone, descending tone on exit

⚡ Lightning / QRN

  • Live WebSocket feed from Blitzortung.org
  • Animated ripple rings: central flash + 2 expanding rings (white → yellow → orange)
  • QRN level based on strikes within 2000 km of QTH
  • Configurable animation scale in Settings → Lightning
  • Header alert + acoustic tick when storms are within threshold distance

📁 File Structure

HAMIOS/
├── HAMIOS5.py              ← Entry point
├── HAMIOS5.spec            ← PyInstaller build spec
├── hamios.ico
│
└── hamios5/                ← Python package
    ├── mainwindow.py       ← Main window + panel layout
    ├── mapview.py          ← Hardware-accelerated map (4096×2048)
    ├── layers.py           ← Lightning / Satellite / DX overlay layers
    ├── panels5.py          ← All floating panel widgets
    ├── charts.py           ← NOAA data manager + chart widgets
    ├── config.py           ← AppConfig dataclass (JSON persistence)
    ├── cat_interface.py    ← CAT serial protocol implementation
    ├── cat_monitor.py      ← CAT terminal window
    ├── settings_dialog.py  ← Settings dialog
    ├── sat_dialog.py       ← Satellite tracking dialog
    ├── spy_dialog.py       ← SpyStations dialog
    ├── eibi_dialog.py      ← EIBI shortwave browser
    ├── ft8_dialog.py       ← FT8/digital frequency reference
    ├── help_dialog.py      ← Searchable help
    └── theme.py            ← Dark theme constants

Auto-created runtime files (not in repository):

File Description
hamios_config.json All settings, panel positions, CAT config
worldmap_eq.jpg Standard resolution world map (auto-downloaded)
worldmap_eq_hires.jpg 4K world map (auto-downloaded)
hamios_tle.json Satellite TLE data (refreshed from CelesTrak)
HAMIOS_history.csv 90-day band reliability history

🙏 Data Sources

Source Data
NOAA SWPC Solar data, K-index, Bz, X-ray, storm forecast
DXWatch.com Live DX cluster
Blitzortung.org Worldwide lightning detection (WebSocket)
eibispace.de EIBI shortwave schedules (Eike Bierwirth)
CelesTrak Satellite TLE data (Dr. T.S. Kelso)
Wikimedia Commons NASA Blue Marble world map

All connections use standard HTTPS/WebSocket. No personal data is transmitted.


🤝 Contributing

Issues and pull requests are welcome. See CONTRIBUTING.md.


© 2026 Frank van Dijke (PA3FVD) · Open-source amateur radio software Developed with Claude AI (Anthropic) · PySide6 · Python 3.10+

About

HF Propagation & Atmosphere Monitor

Resources

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages