Connecting Android to my Ham Radio

This entry was posted by on Tuesday, 27 December, 2011 at

I finally conjured up an electronics project which scratched an itch of mine — while simultaneously allowing my buddy and I to design a custom hardware/software solution.

The Problem: ham folks use morse code ‘keyer’ devices to aid them. It’s basically a tiny computer that plays a morse code message in a loop. You program messages into a few memories on the device, then tell the device to play “CQ CQ CQ DE NN9S” in a loop while waiting for someone to hear your hail. Or maybe you program the device to give standard canned responses when you’re participating in a radio contest. Either way, I had this realization that the smartphone in my pocket was essentially a supercomputer; why on earth was I bothering to assemble little IC devices with 5 or 10 flash memories to do this job? My phone was infinitely more powerful.

So really, the question boils down to this: assuming we can write a phone app that plays any morse code we want, how do we convert a ‘beep’ sound into a signal that my radio thinks is equivalent to “pressing the straight key”?

The radio’s connector is quite simple: it sends a small current out of a jack. If the current comes back to it, it thinks you’re pressing down on the straight key (closing the circuit). The straight key is just a physical switch.

So Jack AI4SV (my mentor/elmer) designed a circuit below which uses a common NPN bipolar transistor as the switch; we simply need to tickle the transistor’s base with a bit of current from the phone’s audio, and poof, the transistor closes the radio’s circuit and the radio sends a ‘beep’ out the antenna.

As you can see in the circuit, we take the ~.5V signal from the phone’s audio output jack and transform it into about ~5V. From there, we use a full-wave rectifier to convert the AC into DC, then eventually send that current into the transistor. The capacitor is there to smooth things out.

The other half of the project, of course, was writing an Android app to act as a versatile memory keyer. The open source code is available on Google Code, and the application is freely downloadable from Android Market.

In the video below, you can see a live demo of the prototype hardware & software in action:

I then built a ‘permanent’ version of the hardware using a perma-proto board from adafruit.com, which you can see here sitting inside an old dice box:

AKA keyer project

And here’s a screenshot of the final Android app. I can confirm that the hardware/software combo successfully drives my Yaesu 817-ND portable radio!

5 Comments to Connecting Android to my Ham Radio

  1. Bob Denny says:

    December 27th, 2011 at 12:52 am

  2. KA8VIT says:

    December 27th, 2011 at 7:29 am

    Years ago we used to use cassette tape recorders to do this…

    See http://ka8vit.com/download/tape_memory_keyer.pdf and http://ka8vit.com/download/infinite_memory_keyer.pdf for schematics.

    73 – Bill KA8VIT

  3. Android Phone as a Keyer « Ham Radio – Ham Events – Ham Reviews – Ham Links – Ham News says:

    December 27th, 2011 at 8:54 am

    [...] Android Phone as a Keyer Share this:TwitterFacebookEmailLike this:LikeBe the first to like this post. [...]

  4. Connecting Android to a Ham Radio « adafruit industries blog says:

    February 15th, 2012 at 12:50 pm

    [...] Connecting Android to my Ham Radio @ iBanjo. I finally conjured up an electronics project which scratched an itch of mine — while simultaneously allowing my buddy and I to design a custom hardware/software solution. [...]

  5. jdoe says:

    February 15th, 2012 at 5:52 pm

    couldnt you just play a audio stream into the mic line and bypass the morse key alltogether?