FreeDV

For the last 2 months I have been working with Dave Witten KD0EAG, coding a GUI application called FreeDV. It combines Codec 2 and the FDMDV modem into single, user friendly application that runs on Linux and Windows. It enables anyone with a SSB radio start using digital voice.

It works really well. FreeDV uses just 1100 Hz of bandwidth, much less that the 2400 Hz required for an analog SSB signal. Compared to SSB it provides a “noise free” audio experience, and continues to work during fades and multipath at quite low SNRs. Mel Whitten has experimented with many Digital Voice systems over the years. This practical experience has led to the current design – a fast sync, no FEC, low latency system that gives a “SSB” type feel for operators.

Here is a video showing FreeDV in action, with analog SSB for comparison:

It’s been a long time since I did any GUI programming and I found it a nice change from the command line signal processing work that I usually do. The programing problems I had to solve didn’t involve maths or complex signal processing algorithms. However bringing FreeDV to life has it’s own special problems, for example spending hours messing with wxWidgets “sizers” to get a check box positioned just right! It was also much larger than the usual program I work on, so there was a certain complexity navigating large files and keeping several balls in the air at once.

I have also really enjoyed working with a nice team of guys, including Dave Witten, Mel Whitten and Bruce Perens. Also involved were a wonderful group of alpha testers and kind people helping us document, support, and improve FreeDV. One example is this fantastic FreeDV Getting Started video produced by Tony, K2MO.

I also feel a sense of importance in our work – FreeDV is the only open source digital voice system for Amateur Radio. It’s an opportunity to prevent Ham Radio (and digital voice over radio in general) being “locked down” to proprietary codecs.

Over the next few months we will gradually improve FreeDV. In particular I would like work on improvements to the low SNR performance. In the medium term I am interested in other applications for narrowband digital voice over radio, such as telephony in the developing world. Ham Radio is an ideal test bed for refining the algorithms and experimenting with integration of the various buildlng blocks.

20 comments to FreeDV

  • john

    Hi,

    NEAT. Videos GREAT. Downloaded OK.

    I couldn’t get it to compile under knoppix. Tries to find mingw32-g++.exe.

    Demos are AMAZING!

    Maybe I am the first user outside the inner circle?

    John

  • Edgar

    Hi,

    John: For compiling under Linux, you have to cd into source. Then “make -f Makefile.linux”

    David: Great work! But how do I set sound configuration when using pulseaudio? In “Tools – Audio Config” I only see one pulse device, but I need to choose between the 2 sound cards for headset and radio.

    Regards,
    Edgar, OE6DUG

    • david

      I haven’t tried pulseaudio myself, just OSS and Alsa.

      - David

      • Edgar

        I tried FreeDV now under Lubuntu 12.10, which uses plain ALSA. First self-tests (recording FreeDV output tx signal with H4n, playing back and receiving again) look very promising!

        Now I have to buy and solder connection cables for txcvr. Unfortunately I have no HF rig here at the moment. Only VHF/UHF. Maybe we can test via Echolink?

        Regards,
        Edgar

  • Congrats on your DV QSO! The EQ like you have it does help bright up the voice and it can be used to cut off an amplifier’s “loud fans” also. :-)

    Mel

  • Edgar

    Today I compiled version 1139 and it works nicely with Intel sound card and USB Soundblaster. I will try to listen to some real world freedv signals via websdr.org. When and on which frequency can I expect some activity?

    I wonder if contacts via Echolink will be feasible in spite of the lossy compression they use there. Anyhow, recording freedv audio as ogg file and decoding afterwards works.

    Congratulations to your terrific project – finally an open source alternative to D-Star!

    Regards,
    Edgar

    • david

      Nice to see it worked for you Edgar. 14.236 MHz seems popular, also see the digital vocie google group (details on http://freedv.org), people often post when they are working FreeDV.

      Echolink would be a good experiment, I think it uses ADPCM waveform coding so it might pass the modem tones OK.

      - David

  • Steve

    I’ve been away from DV for many years, but you’ve peaked my interest again. One thing I should say, after looking at your repository and the various modules, is it is refreshing to see something readable! Congratulations to all on quite a big task in a relatively short amount of time.

    Also, I think those who tame the sound interface on linux should get a medal!

    Regards,
    Steve

  • Hi,

    Great news on the new mode. I see the WIA was going to try an experiment with it this morning, so figured I’d dig out my interface cable and see if I could get it going.

    However, I note that this morning, freedv.org seems to report error 404 messages; the whole site appears to have disappeared.

    Are there further plans for FreeDV? I’ve had an idea kicking around to make my own protocol stack for digital communications for some time now but never got around to doing anything.

    The system is called Wongi and basically it was dormant waiting for a suitable codec, as Speex proved inadequate for voice tasks on HF. I never got much past designing the modem though and coming up with a frame format as I was pretty much resigned to the fact that for voice I’d need 6kbps+ data rates.

    I heard Codec2 in action down at Ballarat and was very impressed. There is also some interest in my radio club in Codec2. Maybe I should pull my finger out and get involved a little bit more. :-)

    Regards,
    Stuart Longland

  • John Titmuss

    Hi Stuart,
    I also used to do a lot of DV stuff a few years back windrm etc, on 30m.
    Have just dusted off my interface and have freedv up and running. Let me know if you would like to have a sched on 40 or 30 …..
    Cheers john due vk4jwt

  • Petr, OK2ZAR

    Great work! I’m going to test it on a band. It will be absolutely fantastic if once in the future we can use this project in one small IC and then be able do digital QSO without computer… :-) Cross fingers

  • John Rabson F5VLF

    How resistant is FreeDV to in-band impulsive interference from LORAN? I am involved in cave radio communications in Europe, and one of our problems is that our commonly used channel (87 kHz USB) suffers severely in some areas from the lower sideband of the 100 kHz LORAN transmissions.

    Unlike many amateur bands, cave radio frequencies do not normally suffer from congestion problems, so a bandwidth of up to 2.2 kHz would be usable without needing internal modifications to existing equipment.

  • John Rabson F5VLF

    David,

    Thank you for the prompt reply. I will see what I can do on the bench, plus a feed from an outside antenna to provide some genuine LORAN.

    For medical reasons I gave up caving some years ago and am limited to what I can do in the shack. Having disposed of my cave radio gear, I shall have to build one or two bits of equipment, but should nevertheless have something for you in the spring. Meanwhile I will write a short note for the Cave Radio & Electronics Group Journal, whose editor put me on to FreeDV.

  • John Rabson F5VLF

    “Spring” – northern hemisphere I hope!

  • What kind on processor power is necessary for stable operation?
    I would run Linux for sure.

    Tnx,
    Rich
    K8NDS

  • Jason Fox KB3LMS

    Wow, sounds like a neat application. I read about it in QST this month. Been trying to build from source on Ubuntu 12.10 with no luck. (Can’t read symbols from libasound.so ????) Is there a PPA or deb available anywhere?

  • Neil, K9CTB

    System is running on my little winbox :) – I am looking forward to my first live contact. You guys who have pioneered this software are amazing – just amazing!! It just doesn’t seem like mashing the “donate” button is quite thanks enough! Gonna post again when I make the magic first contact.

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>