Friday, April 24, 2026

FreeDV client for iPhone?

Was chatting with FreeDV regular Joe, VK3SRC, who's been pushing for an appliance like implementation of FreeDV RADE V1 for Raspberry Pi, mainly for portable operation. It occurred to me that a better way would be to have a client app for the phone - we all carry phones and they are powerful enough these days.

The project noted recently an effort by talented developer Lee, BX4ACP, who has started work, open source, on both iOS and Android clients.  

I forked the iOS code and started looking around. Lee commented that there would be problems with the iPhone audio system but his app looked quite polished so I tried to get it going.

It turns out that while you can attach other audio devices to an iPhone including bluetooth or USB audio devices, the phone basically takes the device as an input and output pair. My use case is to have the phone connected to both a transceiver and probably a headset or some sort.

Audio must come from the transceiver, be decoded and play into the headset. For transmit we'd sample audio from the headset's mic and send encoded audio to the transciever.

I fought the OS for a few days and finally gave up. It seems that Apple doesn't want developers changing audio devices programmatically. They want the user to be in control. 

Talking with Mooneer this morning, he raised the idea of special USB audio hardware, rather like what was done in the EzDV box which even uses the separate channels of a stereo pair.

I dialled back what I was trying to do and now have a RADE V1 decoder that takes audio from the input of a USB sound dongle and sends decoded audio out to the same device.


This works well. The phone easily handles the load. It's a pity 3.5mm patch cords are needed but I think a portable decoder like this might have some applications.

Another problem on the iPhone is that Apple don't let you talk to USB serial devices unless they've been specifically approved by them. A friend suggested that a bluetooth to serial adapter would be a work-around.

In the end though, I think an Android app might be the solution for portable RADE operation - until we get it built in to a radio.

No comments: