One way radio link as modem ?


I have some nice idea, but with my level of knowledge and experience really better is ask more advanced users.

I have FPV (first person view) flying platform, in few words - its rc controlled aircraft with camera and radio transmitter. At ground in so called "base" im having radio receiver connected to small screen, this set allows me to control aircraft as like sitting inside it.

Radio link is only one way - from aircraft to base, transmitter have two standard inputs to send audio and video signals received in base by receiver. Im using only video channel so audio is free to use what gave me idea about sending thru it some additional data. For example i could send to base actual GPS position, engine temp and rc link strenght (so called RSSI), generally not too many data. Of course such data can be sent to base in video channel by OSD device but i prefer first check what i can do by myself ;)

What im planning: Small Arduino in aircraft reading GPS position, RSSI and engine temp, and sending it by audio channel to base. There second arduino is decoding signal and showing received values at small text LCD display or - more advanced version, at LCD with camera picture in form of "base OSD".

First and most difficult for me thing is "invent" how i can send data thru audio channel, at start one value would be enougt, just to try.

Do anyone have experience in similiar tasks and could give me some advices ?


It would be helpful to say what hardware the transmitter is so that folks can understad it's capabilities. Ideally, you wouldn't go to audio for broadcast, receive it, decode the audio and extract the data.

But, there is a well developed scheme that does do that, it is based Radio Amateurs Packet Radio system, folks use USB sound cards and software to encode and decode the data.

Try googling for something like radio amateur digital data over audio.


A couple of other ideas:

1) Morse code 2) DMTF encoding/decoding (touch-tones)

As an advanced method, you might also look into inserting the data into the VBI (vertical blanking interval) of the video feed; done right, you can stuff a lot of data in there - kinda like Videotex:

You could also just use the audio channel as a one-way modem link; check this link (it goes to google books, so I had to use a tiny URL):

That link is to Steve Ciarcia's Circuit Cellar Volume 3, "A Computer Controlled Tank", pages 80-94, in which he presents how to build a simple one-way wireless 300 bps modem using -very common- components and a walkie-talkie (to control a Big Trak remotely using a computer - in 1981). Definitely worth a look (and could probably be simplified with today tech; though it is already simple enough); your audio link should be good enough for such a modem, if a cheapo 1980's walkie-talkie was!

Good luck.


when I was in high school a buddy and I used a morse code tone generator and a couple cb radios to "network" our computers across the neighborhood

handshaking was done via a phone call (hey man fire up your stuff) and only went one way, it was SLOW and sometimes had errors but functioned for a summer

we thought about using 2 different tones for bidirectional but never panned out


Thank you guys for your help, im going to start dig in adviced materials. As for now, as for rookie, simplest way will be probably morse code, or even raw bits sending in form of 0s (low state) and 1s (high state), but it would be not wise to not check more advanced and effective solutions.

Radio hardware what im using: Transmitter: (this thing is tiny, but with good patch receiver antena its enought for 3-4 kilometers of range)


Best regards Greg

hi, did you manage to build your audio modem? want to do EXACTLY the same for my FPV system :slight_smile:

have you seen the ardupilot ?

you should be able to learn a few bits and pieces by just reading about that thing.

another site I know : also probably has some useful data (and a forum too).

good luck with your project !