Category Archives: Uncategorized

Mooneer’s FreeDV Update – July 2026

This past month was a continuation of work required for the upcoming 3.0 release of FreeDV. During the first part of the month, I worked on user interface improvements, namely consolidating all configuration into one Settings window (similar to most other ham radio applications). The Easy Setup window was also removed and replaced with a Setup Wizard, which asks for much of the same information that Easy Setup did but in a hopefully easier to understand manner (along with being able to be used with more setups; a limitation of Easy Setup in the past was that many audio device configurations were relegated to the “advanced” setup workflow).

Besides user interface improvements and other feature enhancements (for example, adding a setting to automatically start decoding on application startup), much of the work done has been around integrating the new RADEV2 mode into FreeDV. This included discussions about how to verify proper behavior of applications integrating RADEV2 as well as performing the required updates at the code level to make it encode and decode.

For August, RADEV2 integration and testing work will continue. I am also beginning to give talks about FreeDV again after having taken a few months off.

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

David July 2026 – WER curves, V2 C Port tuning, Verification

I started the month by adding Word Error Rate (WER) curves to the draft RADE V2 paper, returning to the use of Automatic Speech Recognition (ASR) to evaluate the performance of RADE V2. Two hundred samples (25 minutes) from the Librispeech dataset were passed through SSB, RADE V1 and V2 at a range of SNRs, then post processed by the Whisper ASR system, and the Word Error Rate (WER) measured (Fig. 6 – lifted from a draft RADE V2 paper). The “MPP” curves simulate a fading HF channel.

These curves support the roughly 3 dB increase in performance of V2 over RADE V1 indicated by previous tests. Quite remarkably, they also suggest a 10 dB improvement of RADE V2 over SSB. This feels a bit too good to be true – it would be nice to devise a controlled experiment to test this over the air.

I completed writing up the Phase C stored file test results in the V2 test report, and drafted the Phase D (OTA PTT) test design.

Returning to the V2 C Port, I added an API, and build on Peter’s fine work to edit and extend the API documentation. We discovered automatic gain control (AGC) was missing from the original agentic AI port, so that was added and tested. I removed the RADE V1 C API from the reference Python repo, as we now have a native C port that has been verified. The wave demonstration utilities were tuned to remove unnecessary code and provide a clean, minimal examples for users of the API. In particular, I provided float to 16 bit integer scaling documentation, to ensure the signals would not be clipped on transmission, and would remain in the middle of the AGC range on receive.

Peter, Mooneer, and I worked on the RADE V2 verification procedure, performing test integrations of two applications with the RADE V2 C library. This experience allowed us to fine tune the verification procedure, and track down some issues in the applications and V2 C Port.

We noticed some RADE V2 signals on air (other projects using code from the partially finished work in our repository), and posted a status notice to indicate RADE V2 is a work in progress on not ready for on air use.

Quite some time was spent migrating the V2 C repo out of personal accounts, and into a project wide freedv account. Finally, I worked on a budget update. As our ARDC grant is drawing to a close, we need to keep careful track of the remaining funds.

David June 2026 – RADE V2 Paper

This month I finished the RADE V2 stored file test campaign, and have collated the results. We have obtained a similar ranking to the simulations, with V2 preferable to V1, and both well ahead of SSB. Thank you once again to the Hams who kindly contributed to this work.

The majority of the work this month was spent writing a paper on RADE V2, to document the new innovations in the mode and the algorithms used (documentation to professional level is one of our ARDC grant aims). As I developed RADE V2 over a period of 18 months I had forgotten some of the finer details. This development was mainly a solo effort, so looking at it again after a year served as a form of self-review. Development of RADE V2 was particularly challenging due to the lack of pilot and unique word syncronisation symbols. The paper is now in rough draft form.

Some of the algorithms were developed working with Claude code. To my surprise we couldn’t find a reference to one of the algorithms (end of over detection) anywhere in the literature. This suggests it was unique algorithm development by Claude! It certainly didn’t come from me, although I understood the principles when Claude suggested it and we worked together to devise suitable tests with good overall results. I will perform a broader literature search to see if I can find anyone else using similar ideas

In July I plan to complete the C port of RADE V2 to beta level and encourage the first
over-the-air real-time tests. This will be a beta version while ML re-training and algorithm tweaks proceed in parallel. This beta release should be considered experimental — re-training may change the waveform at any time, breaking compatibility with earlier beta versions and with the final release. Beta testers should expect incompatible updates at short notice.

The FreeDV project leadership team has agreed on test guidelines that will allow us to collect high quality test feedback, and methodically investigate any issues. The verification guidelines will gate any feedback by making sure application developers have first verified their integration of RADE V2 – so we are not chasing application bugs unrelated to RADE V2.

Other activities this month included progress on an article for QST, and help collating answers for a new campaign promoting RADE.

Digital voice breaking language barriers

Enthusiastic FreeDV RADE V1 operator José Donnari – LU5DKI, has developed a system he uses to have high quality radio contacts between him speaking Spanish and other amateurs who speak only English or Japanese.

José explains how he operates.

I would like to share a system that I developed to make international communication easier using FreeDV, the digital voice system for amateur radio.

The operator simply speaks in Spanish. An older Samsung Android smartphone running Google Translate in Conversation Mode automatically translates the speech and generates a natural synthesized voice in the selected target language.

The key innovation is that only the translated audio is taken from the phone’s headphone output. Using a modified audio cable and a simple USB audio interface, this signal is fed directly into the microphone input of the FreeDV software.

As a result, only the translated speech is transmitted, without phone notifications or any unwanted system sounds.

Main Features

✅ Near real-time voice translation.

✅ Approximately 2 seconds of latency.

✅ No programming required.

✅ No complicated setup.

✅ Works with an older Android smartphone.

✅ Uses inexpensive, readily available hardware.

✅ Direct integration with FreeDV.

✅ Makes international QSOs in different languages feel natural.

✅ Uses widely available Google Translate rather than advanced AI translation services.

In my own tests, this system proved to be simpler to set up, lower in latency, and virtually cost-free compared with the real-time translation solutions I evaluated using Gemini AI Studio for this specific amateur radio application.

This project demonstrates that, with creativity and technical knowledge, it is possible to build a practical, low-cost, and efficient solution that helps overcome language barriers in amateur radio communications.

Configuration

FreeDV RADE Software

TOOLS

AUDIO CONFIGURATION

TRANSMIT – Input From Microphone To Computer: select “PC microphone input where the audio cable is connected”

Apply

OK

Google Translate Conversation Mode Workflow

START


Open Google Translate


Select input language
(e.g., Spanish)


Select output language
(e.g., Japanese)


Enter “Conversation” mode


Enable the option:
“Listen only on headphones”


Press the microphone button


Speak normally
(voice does not play through the speaker)


Google translates the message


Only the translated voice plays
through the headphones or Bluetooth speaker


END

Summary

Open Google Translate, select the input and output languages, enter Conversation mode, enable the “Listen only on headphones” option, press the microphone, and speak. This way, my voice does not play through the speaker and only the translation is heard, preventing feedback and echoes.

Conclusion

I hope this idea inspires other amateur radio operators to experiment and further improve real-time multilingual communication over the air.

73 and good DX!

José Donnari – LU5DKI

Mooneer’s FreeDV Update – June 2026

During the month of June, I was focused mainly on fixing bugs and integrating previously approved feature requests:

One major bug that was resolved (or at least improved) was related to how users’ callsigns are transmitted. For RADE, there’s a packet that’s sent before transitioning from TX to RX; I had noticed during testing locally that this seemed to be cut off, preventing proper decode of the packet on the receive side. We had tried to avoid this in the past by calculating a delay based on CAT control responses, but this was apparently not sufficient. After experimentation, I changed this to a static delay and was able to consistently transmit this packet with my setup.

Additionally, there were bugs in the backend side that contributed to being unable to reliably decode callsigns. For example, there was a floating-point precision bug that interfered with LDPC decode at higher SNRs; fixing this dramatically improved decode performance in testing by others. We also removed the r8brain audio resampler and returned to using libsamplerate (which is what FreeDV was using prior to 2.3.0) due to varying RADE loss figures (more info here if interested).

On the FlexRadio integration, there were fixes to improve the behavior of the audio limiter (for microphone input). This allows users to use microphone audio levels such that peaks are closer to 0 dB; prior to this change, users had to set their microphone levels approximately 10 to 15 dB lower than they would have to otherwise for acceptable audio quality at the receive station.

During the last part of the month, I also began preparations for RADEV2 in the freedv-gui repository. I created a new branch called v3.0-dev to track FreeDV 3.0 development and merged several pull requests to remove the legacy FreeDV modes (700D/E and 1600) and switch our official convention over to being USB-only. I also began looking into further improvements to callsign decode, mainly using a lower rate LDPC code to allow decoding the callsign at a few dB lower signal level (currently, FreeDV needs around 2 dB SNR in order to reliably decode callsigns). This work will continue during July as well as other bugfixes and improvements.

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

David May 2026, V2 C Port, V2 Stored file test campaign

This month I spent some time planning, investigating, and moving project wide files from individually owned accounts to project wide resources. This is part of the process of ensuring the FreeDV project is not tied to any one individual. We’ve done a lot of work since the ARDC grant started 3 years ago so there are quite a few digital artifacts (as well as the code).

Work started on a C port of RADE V2 using Claude code. The technique of using AI to assist C ports is getting commonplace now! This only took about a days effort, in particular as the classical DSP C code required for of RADE V2 is much simpler than V1. I put some thought into suitable automated tests to validate the port and have good results when testing against the reference Python code. There is still some work to do to ensure the V2 algorithms are well tested before we distribute a C library version. I will complete the C port after the stored file test campaign is successfully completed.

Most of the work this month was around planning and coordinating the RADE V2 stored file test campaign. The goals of this campaign are to gather stored file OTA samples to support the initial test results, but from a wider range of speakers, HF channels, and radio hardware. I set up a web based processing system so the test team can encode and decode their own RADE V2 samples, and worked with the test team to coordinate and guide the tests. So far the OTA results are consistent with the simulation results which is a fine result.

Thank you very much to Rick W7YC, Kanda JH0PCF, Yuichi JH0VEQ and Take JS1MAV for your samples. Take has also been contributing PAPR measurements.

Finally, I have started work on a RADE V2 paper. There are a lot of novel concepts in RADE V2, which need documenting at the professional and Ham level.

Mooneer’s FreeDV Update – May 2026

This month two releases of FreeDV went out–2.3.0 followed by 2.3.1 a few weeks later. 2.3.1 had some audio quality and other fixes for issues discovered after 2.3.0’s release. In particular, the FreeDV integration on Flex had different audio than the FreeDV application for the same signals, not to mention some issues with Windows audio not reaching FreeDV on some user’s machines.

More importantly, however, is that the code shared between the Flex/KA9Q integrations and freedv-gui has been split out into its own repository, allowing those who want to integrate FreeDV into their own hardware or applications an easier path for doing so. In addition, the Flex and KA9Q integrations were branched off into their own repository, both so that those who want to include FreeDV have a simpler example to follow as well as to allow the integrations to follow a different release cadence from freedv-gui. This should hopefully allow more people to integrate FreeDV more quickly.

Besides bugfixes and the work to split the code into separate repos, a few other features managed to merge post-2.3.1 release:

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

FreeDV 2.3.1 released

FreeDV 2.3.1 has been released, including improved audio quality for those running the Flex waveform and other bug fixes. It can be downloaded using the following links:

* Windows (most PCs)
* Windows on ARM
* Linux AppImage (for Intel and AMD PCs)
* Linux AppImage (for ARM systems, e.g. Raspberry Pi 5+)
* Linux AppImage for FlexRadio support (needs Raspberry Pi 4 or newer)
* FlexRadio Docker container (Flex 8000/Aurora series)
* macOS

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

Our experience at Hamvention 2026

This year, Mel Whitten (K0PFX) and Walter Holmes (K5WH) manned the FreeDV booth at its normal location in Building 1. Booth traffic was heavy throughout the weekend, keeping both busy answering questions about FreeDV and demonstrating RADE live over the air via remote connections to their respective radios.

Additionally, Flex users flocked to the booth wanting to know more about the Flex Waveform-Docker implementation. With the Waveform running on Walter’s remote Flex, “seeing is believing” so it made a good demonstration. On top of that, additional radio software developers came by and mentioned they had already added RADE into their application, or it was being added right away.

As Mooneer (K6AQ) was unable to attend this year, we had a new presenter, JJ, KG4VCF in the Digital Modes forum. JJ’s presentation was an in depth guide on how to set up and use FreeDV’s RADE to achieve “Great Audio and Smooth Digital Voice.” And it did just that describing what RADE digital voice does and why it sounds better. His use of professional level graphics and accompanied voice sound bytes garnered attention from the attendees. A larger meeting room was granted this year for the forum filling it to near capacity indicating RADE is gaining a foothold in HF communications.

Demonstrating RADE continues to show that for the user to have significant interest in using the mode, the top three priorities are: 1 – Perceived good voice quality, 2 – “Wow” factor of robustness over SSB and 3 – Ease of set up and use. FreeDV is quickly proving to the wider amateur radio community that RADE excels in all three priorities, with further improvements in all three as work continues.

RADE V2 Testing and Verification

We’ll soon be kicking off a RADE V2 crowd sourced test campaign, where Hams from outside the FreeDV development team can test RADE V2 and submit samples. To get started, the RADE README has draft instructions on what tests would be most useful to help RADE development. If you are interested in integrated RADE into you application or radio, here is a draft verification procedure. We are happy to work with you improve these procedures, so please feel free to ask any question below or in a GitHub issue on the RADE repo.