Mooneer’s FreeDV Update – March 2024

This month, freedv-gui got the following bug fixes and feature enhancements:

  • Fixed minor memory leak involving FreeDV Reporter window.
  • Fixed issue causing delayed updates when modifying FreeDV Reporter filters.
  • Added support for unlimited length reporting messages in FreeDV Reporter.
  • Added additional error reporting in the event of PortAudio failures.

ezDV also got the following changes:

  • FreeDV Reporter:
    • Fixed issue preventing auto-reconnection to FreeDV Reporter when connection is lost.
    • Fixed issue causing crash if FreeDV Reporter connection exists and Wi-Fi goes down.
    • Added reporting message functionality to FreeDV Reporter implementation.
    • Lowered priority of FreeDV Reporter task.
  • FlexRadio support:
    • Fixed bug when user audio mixes with radio audio during TX.
    • Optimized sample rate conversion to use fixed-point math and ESP32S3 SIMD instructions to reduce CPU usage.
    • Updated audio packet sending logic to reduce audio dropouts during TX and RX.
    • Updated audio scaling logic so that 100% in SmartSDR equals 100 watts of power
    • output.
  • Upgraded project to ESP-IDF 5.2.1.
  • Fixed typos preventing failure popup from disappearing in web UI.
  • Made changes to avoid unnecessary commits to NVS flash when settings haven’t changed.
  • Created user manual and added infrastructure to automatically build it and firmware when releasing new versions.
  • Changed default FreeDV mode to 700D on initial startup.
  • Updated HTTP serving logic to reduce likelihood of failed transfers.
  • Added logic to preload voice keyer data during transmit to reduce latency.
  • Fixed bug causing sync LED to remain lit when switching to analog mode.
  • Refactored DVTask and DVTimer to enable more easily readable stack traces in case of crashes.
  • Added 250ms hard timeout when stopping TX to prevent the radio from being stuck in transmit.

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, 2024" --before "Month 31, 2024" --all > commit.log