Monthly Archives: February 2026

FD Linker: A Bridge Between FreeDV 2.2.0 and Turbo Hamlog in Japan

This is a guest post by JH0PCF HIROYUKI Kanda, from Japan.

FreeDV Logging in Japan and the Need for a Bridge Tool

I am HIROYUKI Kanda (JH0PCF), an amateur radio operator in Japan. When FreeDV version 2.2.0 introduced UDP output for received QSO logs, several overseas logging applications—such as KLog—were able to read these packets directly.

However, the situation in Japan was different. Most Japanese amateur radio operators use Turbo Hamlog, developed by JG1MOU (Mr. Hamada). Turbo Hamlog is extremely popular and widely used, but it could not directly receive or import the UDP log packets generated by FreeDV.

FreeDV operators in Japan approached me and said: “We have the binary UDP log data from FreeDV. Could you create a bridge tool that transfers this into Turbo Hamlog?” This request became the starting point for the development of FD Linker.

Human × AI Collaboration in Development

I had no prior programming experience. To make this project possible, I designed the specifications and performed all operational testing myself, while relying on cloud-based AI systems for the coding work.

  • Gemini generated the program code
  • Copilot reviewed and verified the code
  • I handled the design, debugging, and validation

This collaborative workflow allowed rapid development, even during late-night sessions, and resulted in a stable and practical tool for Japanese FreeDV operators. There are two Editions of FD Linker.

FD Linker Times Edition

This edition is designed for operators who want to accurately record the start time of a QSO:

  • Press the Ctrl key when the QSO begins
  • FD Linker stores the PC’s internal time
  • When FreeDV outputs its UDP log packet, FD Linker parses the callsign,
    frequency, and grid locator
  • These fields are automatically entered into Turbo Hamlog
  • After confirmation, FD Linker sends the stored start time to complete
    the log
FD Linker Times Edition capturing start time

FD Linker Listen Edition


This edition continuously waits for FreeDV’s UDP “Log QSO” packets:

  • FD Linker monitors the UDP port
  • When FreeDV outputs a log packet, FD Linker immediately parses it
  • Callsign, frequency, and grid locator are automatically transferred
    into Turbo Hamlog
  • The operator only needs to confirm the entry
FD Linker Listen Edition parsing FreeDV log

Technical Notes:

  • Both editions use the public Turbo Hamlog API
  • The software is lightweight and single‑purpose
  • Development focused on transparency and reproducibility
Turbo Hamlog receiving the transferred QSO data

Acknowledgements

I would like to express my sincere thanks to:

  • Experienced FreeDV operators in Japan who provided early feedback
  • JG1MOU (Mr. Hamada), developer of Turbo Hamlog
  • Gemini & Copilot AI for assisting with code generation and review
  • The FreeDV development team for implementing the UDP log output in version 2.2.0
  • I am also grateful for the advice I received during the icon design process.

Conclusion

FD Linker was created to help Japanese operators enjoy FreeDV more easily by connecting it to the logging software they use every day. I hope this tool will support the growth of FreeDV activity in Japan and contribute to the global digital voice community.

Best regards,
HIROYUKI Kanda (JH0PCF)
PS: I also manage a Japanese FreeDV information site, including the “FreeDV Operation Guide”: https://freedv.info

FreeDV at HamCation 2026

We just returned from another successful HamCation 2026. Our booth was located in the North Hall, across from the hamfest’s prize booth:

oplus_3145728
oplus_3145728
oplus_3145728

During the hamfest weekend, FreeDV team members Mooneer Salem (K6AQ), Mel Whitten (K0PFX) and Walter Holmes (K5WH) answered questions from current and prospective FreeDV users and demonstrated the audio quality of FreeDV’s RADE mode and integration with radios manufactured by FlexRadio. In particular, Mooneer and Walter connected to their home stations (Mooneer using an iPad and Walter using a laptop) and demonstrated how the FlexRadio AppImage running on a Raspberry Pi can create a FreeDV “mode” inside the SmartSDR software and effectively make FreeDV operation the same as operating analog sideband.

Additionally, Mooneer gave a talk about how to set up FreeDV, which was graciously recorded by WG7D:

Hope to see you next year!

EDIT: Added missed image of Walter, Mel and Mooneer in the booth.

FreeDV 2.2.1 released

FreeDV 2.2.1 has been released, containing bugfixes for issues discovered since the release of 2.2.0 along with a change to ensure continued operation of the FlexRadio integration. It can be downloaded using the following links:

More information about this release can be found on GitHub release page.

Mooneer’s FreeDV Update – January 2026

During the month of January, a lot of work was done on the FlexRadio integration. This consisted of adding some features to the AppImage that were desired by the users testing it, such as:

  • Enabling the SO_REUSEADDR socket flag on the discovery socket so that the waveform doesn’t interfere with other applications running on the user’s Raspberry Pi (such as NodeRed)
  • Allowing Ctrl-C to be used to exit the waveform
  • Additional command line arguments to provide a reporting message to FreeDV Reporter, adjust audio volume, and perform other configuration

For the main FreeDV application, additional functionality was also implemented around the FreeDV Reporter window, such as being able to right-click on callsigns and perform lookups and having a more visible indication that the idle filter is enabled. Once these features were added, an additional several weeks were taken to fix bugs discovered during testing before version 2.2.0 was finally released near the end of the month.

During this coming month (February), I’ll be preparing for travel to Orlando HamCation, where I will again be giving a talk about FreeDV as well as manning the FreeDV booth. Hope to see you there!

More information can be found in the commit history below:

(Note that all commit logs above were generated with the following command line:)

git log --author="member@email" --after "Month 1, 2026" --before "Month 31, 2026 23:59:59" --all