Version anglaise en deuxième partie
How AI Helped Me Build My Ham Radio Logbook from Scratch
🇫🇷 Version française
Un logbook né d’une frustration… et d’une idée
Comme beaucoup d’entre vous, j’utilisais des logiciels de journalisation existants. Fonctionnels, certes, mais jamais exactement comme je le voulais. Trop rigides, interface vieillissante, pas d’intégration directe avec mes outils favoris.
Alors j’ai décidé de créer le mien — Station Master V21.0 — avec l’aide de l’intelligence artificielle.
Pas un développeur professionnel, mais un radioamateur motivé
Je tiens à être honnête : je ne suis pas programmeur de métier. Ce projet a été rendu possible grâce à une collaboration intensive avec Claude (Anthropic), un assistant IA qui m’a guidé à chaque étape du développement.
Le résultat ? Une application Python complète, fonctionnelle, et 100% personnalisée pour ma station ON5AM.

Ce que fait Station Master V21.0
L’application couvre l’ensemble des besoins d’une station moderne :
Le défi technique le plus intéressant : l’intégration WSJT-X
L’un des problèmes les plus complexes à résoudre fut la réception automatique des QSOs depuis WSJT-X.
WSJT-X envoie ses données via le protocole UDP en format binaire Qt. Le logbook doit décoder ces paquets en temps réel. Ce qui semblait simple s’est révélé piégeux : WSJT-X envoie deux paquets différents pour chaque QSO logué — un paquet binaire (type 5) et un paquet ADIF texte (type 12) — ce qui causait des doublons dans le journal.
La solution : identifier et ignorer le paquet redondant selon la source configurée. L’interface permet maintenant de choisir la source UDP (WSJT-X direct, GridTracker, ou les deux) avec les ports personnalisables directement dans les paramètres.
Ce que j’ai appris sur le développement assisté par IA
Travailler avec une IA sur un projet de cette envergure m’a appris plusieurs choses :
- La précision du problème est tout. Plus je décrivais précisément le comportement observé (« le contact s’enregistre deux fois, l’un avec Wait/Wait et l’autre avec ADIF/ADIF »), plus la solution était rapide et ciblée.
- Les captures d’écran valent mille mots. Partager une image de l’interface permettait à l’IA de comprendre instantanément le contexte visuel et de proposer des corrections adaptées.
- Le débogage devient collaboratif. Copier-coller les messages d’erreur du terminal directement dans la conversation donnait des corrections précises en quelques secondes.
Télécharger et essayer
Le projet est entièrement open source et disponible sur GitHub :
👉 github.com/albertM-hub/StationMaster
Vous pouvez soit télécharger le .exe Windows prêt à l’emploi depuis la section Releases, soit cloner le code source et le lancer avec Python.
Aucune installation complexe. Placez l’exécutable dans un dossier, lancez-le, configurez votre indicatif et votre locator — et c’est parti.
73 de ON5AM 🎙️
🇬🇧 English version
A Logbook Born from Frustration… and an Idea
Like many of you, I was using existing logging software. Functional, yes, but never exactly what I wanted. Too rigid, aging interfaces, no direct integration with my favorite tools.
So I decided to build my own — Station Master V21.0 — with the help of artificial intelligence.
Not a Professional Developer, But a Motivated Ham
I want to be honest: I’m not a professional programmer. This project was made possible through intensive collaboration with Claude (Anthropic), an AI assistant that guided me through every step of the development.
The result? A complete Python application, fully functional, and 100% customized for my station ON5AM.

What Station Master V21.0 Does
The application covers all the needs of a modern station:
The Most Interesting Technical Challenge: WSJT-X Integration
One of the most complex problems to solve was automatically receiving QSOs from WSJT-X.
WSJT-X sends its data via the UDP protocol in Qt binary format. The logbook must decode these packets in real time. What seemed simple turned out to be tricky: WSJT-X sends two different packets for each logged QSO — a binary packet (type 5) and a text ADIF packet (type 12) — which caused duplicate entries in the log.
The solution: identify and ignore the redundant packet based on the configured source. The interface now lets you choose the UDP source (direct WSJT-X, GridTracker, or both) with customizable ports directly in the settings.
What I Learned About AI-Assisted Development
Working with an AI on a project of this scale taught me several things:
- Problem precision is everything. The more precisely I described the observed behavior (« the contact logs twice, one with Wait/Wait and the other with ADIF/ADIF »), the faster and more targeted the solution.
- Screenshots are worth a thousand words. Sharing an image of the interface allowed the AI to instantly understand the visual context and propose tailored fixes
- Debugging becomes collaborative. Copy-pasting terminal error messages directly into the conversation produced precise fixes within seconds
Download and Try It
The project is entirely open source and available on GitHub:
👉 github.com/albertM-hub/StationMaster
You can either download the ready-to-use Windows .exe from the Releases section, or clone the source code and run it with Python.
No complex installation. Place the executable in a folder, launch it, configure your callsign and locator — and you’re on the air.
73 de ON5AM 🎙️
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.







