Comment est né ce projet ?
Comme beaucoup d’entre vous, j’avais l’habitude de jongler entre mon logiciel de log, une fenêtre de navigateur pour surveiller les spots DX, et une autre pour les conditions de propagation. Trop de clics, trop de bascules entre fenêtres, trop de distractions au moment précis où une station rare apparaît sur une bande.
L’idée était simple : une seule fenêtre, toujours visible sur le bureau, qui regroupe tout ce dont j’ai besoin en un coup d’œil.
C’est ainsi qu’est né DX Watch, développé avec l’aide de l’IA Claude (Anthropic), en partant de zéro et en ajoutant des fonctionnalités au fil des sessions de travail.
💡 Le projet est entièrement open source et disponible sur GitHub — que vous soyez OM chevronné ou simple curieux de Python, tout le monde peut l’installer, le modifier et l’améliorer.
Ce que fait DX Watch
DX Watch est une application Python/tkinter qui s’affiche en overlay sur votre bureau Windows, toujours au premier plan, et qui agrège en temps réel :
- Les spots DX Cluster via connexion Telnet (3 clusters simultanément)
- Les spots DXHeat.com
- Les rapports PSK Reporter reçus par votre station
- Les conditions de propagation HF (SFI, SSN, K-index, A-index, MUF, Aurora)
Les fonctionnalités en détail
📡 Multi-cluster européen
L’application se connecte simultanément à trois clusters en parallèle avec reconnexion automatique. Par défaut, deux clusters belges sont configurés :
| Cluster | Adresse | Pays |
|---|---|---|
| ON4KHG | on0dxk.dyndns.org:8000 | 🇧🇪 Belgique |
| ON0LG | on0lg.dyndns.org:8000 | 🇧🇪 Belgique |
| DL9GTB | cluster.dl9gtb.de:8000 | 🇩🇪 Allemagne |
Si un cluster tombe, il se reconnecte automatiquement après 30 secondes — sans aucune intervention de votre part.
🎨 Couleurs par bande
Chaque bande HF a sa propre couleur dans le tableau, ce qui permet d’identifier instantanément l’activité :
160m 🔴 · 80m 🟠 · 40m 🟡 · 30m 🟢 · 20m 🔵 · 17m 🟣 · 15m 💜 · 10m ❤️ · 6m 🟨
🕐 Âge des spots en couleur
Chaque spot affiche son âge calculé en temps réel :
- Vert → moins de 5 minutes (spot frais)
- Jaune → 5 à 15 minutes
- Gris → plus de 15 minutes (spot à vérifier)
🧭 Azimut et distance calculés depuis votre QTH
Pour chaque spot, l’application calcule automatiquement :
- Azimut Short-Path (SP) — la direction directe
- Azimut Long-Path (LP) — la direction opposée (SP + 180°)
- Distance en km vers l’entité DX
Tous les calculs sont basés sur votre locator Maidenhead configuré dans config.ini.
📻 Détection automatique du mode
DX Watch analyse le commentaire de chaque spot et identifie automatiquement le mode de transmission : FT8, FT4, CW, SSB, RTTY, JS8, PSK, DIGI.
⚡ Alertes pour stations rares
Configurez une watchlist avec les préfixes qui vous intéressent (3B9, FT5, VK9, ZL9, VP6…). Dès qu’une station correspondante est spottée :
- Une popup orange apparaît en haut à droite de l’écran
- Un double bip sonore retentit
- Le titre de la fenêtre clignote dans la barre des tâches Windows — même si DX Watch est minimisé
💬 Tooltip au survol
Passez simplement la souris sur n’importe quel spot pour voir apparaître une info-bulle complète : pays, continent, azimut SP et LP, distance, mode détecté, âge du spot.
🖱️ Double-clic → QRZ.com
Un double-clic sur n’importe quel spot ouvre automatiquement la fiche QRZ.com de la station DX dans votre navigateur.
📊 Statistiques de session
En bas du panneau de propagation, une barre de statistiques affiche en continu :
Session: 2h34 | Spots: 847 | DX uniques: 203 | Pays: 67 | Continents: 6/6 | Bande+: 20m (312)
📊 Graphique d’activité par bande
Un mini-graphique à barres montre en temps réel quelle bande est la plus active depuis le début de la session.
💾 Export CSV
Tous les spots sont sauvegardés automatiquement dans un fichier dx_spots.csv, incluant : UTC, DX, pays, continent, fréquence, bande, mode, azimut SP, azimut LP, distance, spotter, commentaire, source.
⚙️ Fenêtre de configuration graphique
Pas besoin d’éditer config.ini à la main. Un bouton ⚙ Config ouvre une fenêtre de configuration complète avec 5 onglets :
- Station — Indicatif, locator, coordonnées GPS
- Clusters — Liste des serveurs (un par ligne)
- Filtres — Bandes, max spots, watchlist alertes
- Affichage — Taille, opacité, sons, always-on-top
- Sources — Activer/désactiver DXHeat, PSK Reporter, CSV auto
Installation pour débutants en Python
Option 1 — L’exe tout-en-un (recommandé)
C’est la méthode la plus simple. Aucune installation de Python requise.
- Rendez-vous sur la page GitHub : github.com/albertM-hub/DXWatch
- Cliquez sur Releases → téléchargez DXWatch.exe et config.ini
- Placez les deux fichiers dans le même dossier sur votre PC
- Lancez
DXWatch.exe - Cliquez sur ⚙ Config pour entrer votre indicatif et votre locator
- Voilà ! Les spots commencent à arriver 📡
Option 2 — Depuis le code source Python
Pour ceux qui veulent modifier ou explorer le code :
Prérequis : Python 3.10 ou plus récent (python.org)
# 1. Télécharger le code
# Soit via git :
git clone https://github.com/albertM-hub/DXWatch.git
cd DXWatch
# Soit en téléchargeant le ZIP depuis GitHub (bouton "Code" → "Download ZIP")
# 2. Installer la seule dépendance externe
pip install requests
# 3. Lancer
python dxwatch.py
Tkinter, xml.etree et winsound sont inclus dans Python — pas d’installation supplémentaire.
Option 3 — Compiler soi-même l’exe
pip install pyinstaller requests
python -m PyInstaller --onefile --noconsole --name "DXWatch" dxwatch.py
# L'exe se trouve dans le dossier dist/
# Copier config.ini à côté de l'exe
Configuration de base
Ouvrez config.ini (ou utilisez ⚙ Config dans l’application) et adaptez à votre station :
[STATION]
callsign = ON5AM ← Votre indicatif
locator = JO20IX ← Votre locator Maidenhead
latitude = 50.85 ← Coordonnées pour le calcul d'azimut
longitude = 4.35
[CLUSTERS]
servers = on0dxk.dyndns.org:8000, on0lg.dyndns.org:8000, cluster.dl9gtb.de:8000
[ALERTS]
watchlist = 3B9, FT5, VK9, ZL9, VP6, KH1, E5, BS7
💡 Pour trouver votre locator Maidenhead : qthlocator.free.fr ou Google Maps → clic droit sur votre QTH → coordonnées → convertir.
Ajouter d’autres clusters
DX Watch accepte n’importe quel serveur DX Cluster compatible Telnet. Voici quelques alternatives européennes à essayer dans ⚙ Config → onglet Clusters :
pa3awk.ampr.org:7300 ← PA3AWK, Pays-Bas
dx.om3kr.sk:7373 ← OM3KR, Slovaquie
dxc.ve7cc.net:23 ← VE7CC, Canada (international)
Prérequis système
- Windows 10 ou 11
- Connexion internet (pour les clusters, DXHeat, PSK Reporter et propagation)
- Python 3.10+ (uniquement pour l’option source)
Liens
- 📥 Téléchargement : github.com/albertM-hub/DXWatch/releases
- 💻 Code source : github.com/albertM-hub/DXWatch
Pour contribuer ou signaler un bug
Le projet est ouvert à toute contribution. Si vous rencontrez un problème ou souhaitez proposer une amélioration, ouvrez une issue sur GitHub.
Les idées pour les prochaines versions :
- Support Linux/macOS
- Carte du monde avec les spots
- Intégration avec les logiciels de log (WSJT-X, Log4OM…)
- Alerte sunrise/sunset pour les bandes grises
73 de ON5AM 🇧🇪 — Bonne propagation et bons DX à tous !
Développé avec l’aide de Claude (Anthropic) — disponible gratuitement pour la communauté radioamateur.
Cet article est reproduit sur HamAnalyst avec l’autorisation de son auteur, Albert Müller, qui en conserve la pleine propriété intellectuelle. Retrouvez les travaux originaux sur : ON5AM.
Licencié Harec depuis 1990, après une pause de quelques années, j'ai renouvelé mon intérêt pour la radio, je suis particulièrement actif en HF, appréciant le FT8, les contest et la chasse au Dx. Passionné d'informatique, je suis convaincu que le monde des radioamateurs doit évoluer avec les avancées technologiques, notamment avec l'émergence de l'IA dans nos shack.






