Skip to content

ceotjoe/yaesumanpy

Repository files navigation

Yaesu SD Card Manager (Python)

DISCLAIMER: This is still in development. Use at your own risk. Never use it on not backed up data.

This repository contains a multi-platform AI supported rewrite of the original Win32 Yaesu SD card manager (https://github.com/msraya/yaesuman). It is supposed to store own pictures and messages on the SD card of Yaesu FT-5d (probably also other Yaesu radios like FT-3d).

It mirrors the legacy functionality:

  • load every DAT file set inside the QSOLOG folder and keep the message/picture lists in memory
  • edit message subjects and text, insert new blank messages, delete or deduplicate entries
  • insert resized pictures (160×120 for LOW, 320×240 for MID) and write them into the radio’s PHOTO folder with the expected naming pattern
  • edit each new picture in a small overlay editor that lets you place the configured callsign as a text overlay (with draggable position, color, and size) plus an optional QR code generated from the configured URL before saving
  • inspect pictures, edit their subjects, delete or deduplicate them
  • open the stored GPS coordinates in a browser via Google Maps or update your default GPS string via the configuration dialog’s “Pick location…” geocoding helper
  • persist changes back to QSOMNG.DAT, QSOMSG*.DAT, and QSOPCT*.DAT when saving
  • keep call sign / GPS / quality settings in a config dialog (now stored under ~/.yaesuman/config.json instead of the Windows registry)

Requirements

  • Python 3.9+
  • Tkinter (ships with the standard CPython builds)
  • Pillow (pip install -r requirements.txt)
  • qrcode (pip install -r requirements.txt)
  • geopy (pip install -r requirements.txt, required for the GPS location picker)

Running

python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python app.py

On startup the program asks for any .DAT file inside the SD card’s QSOLOG directory. After editing, click Save and Exit or use File → Save to write the updated binary files back to the card. The picture insert action prompts for a JPEG, takes you through the overlay editor (configure text color/size/position and optionally a QR code generated from the URL configured in the Configuration dialog), and finally stores the merged JPEG into the SD card’s PHOTO directory.

Use Configuration to set your callsign, the fixed GPS string, quality preference, and overlay URL. The GPS picker lets you search for any city/address (OpenStreetMap/Nominatim) and automatically formats the coordinates into Yaesu’s 20-character representation.

Notes

  • The Windows-only registry settings have been replaced with a JSON config file inside the user’s home directory to keep the application platform-independent. This dialog now also stores the optional overlay URL that powers the QR code in the picture editor.
  • The built-in image viewer uses Pillow; no extra OS-specific codecs are required.
  • The rewrite was completly done with only using codex (https://openai.com/de-DE/codex/) of OpenAI. It converted the original C++ Windows program to Python within only about 15 minutes, which is quite amazing.
  • Reason for this port was to have a multi platform solution instead of a Windows only program.

Thanks

Thanks to @msraya for working on the Windows app and doing significant work on reengineering the way Yaesu stores data on SD cards.

DO1HOZ (https://www.qrz.com/db/DO1HOZ)

About

A Python script to upload photos to Yaesu FT-5d (may also other Yaesu radios) SD-Card

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors