Fox Hunt Mode for the AIOC

AIOC

If you’re not familiar with the All in one Cable (AIOC), it’s a great project that uses a microcontroller, a Kenwood type connector, and a USB-C port to interface with an HT. The device presents itself on the USB bus as separate audio, serial, and HID devices. This means that with this one cable, you can:

  • program the radio (CHIRP, etc.)

  • send/receive audio from the radio

  • control the PTT

  • store and retrieve AIOC settings and debug information

That’s a whole lot for a very little device!

AIOC

Inspiration

K2MFF

Recently my K2MFF co-advisor and I met with an NJIT alumni who has a keen interest in the radio club. The alumnus mentioned that in his experience students really seem to enjoy fox hunts and that they enjoy learning about Morse code. This got me thinking that the AIOC could be programmed to periodically ID in Morse code and then an AIOC combined with a USB-C battery and a cheap HT could make a neat little fox hunt transmitter.

Fox Hunt Mode

Here’s my PR for the new mode.

The audio is synthesized using stored uint16 samples of a 750 Hz sine wave.[1] I realize that this would be a great application for DMA on the STM32F3xx, but currently I hook into the TIM6 interrupt handler in usb_audio.c and push the waveform out sample-by-sample. I’m striving to be consistent with how the AIOC currently does things, but it’s worth noting there is a PR to start using DMA with some excellent discussion in it.

The fox mode is configured using the HID interface that Simon Küppers came up with. There is one uint32 register to adjust how many seconds the device waits in-between IDing.[2] There are four uint32 registers to store your ID, which gives us 16 characters to work with. You will have to store the settings and restart the device for them to fully take effect

Putting it All Together

Armed with a \$20 Baofeng, a \$20 AIOC, \$15 extended battery, and a \$5 DC-DC buck regulator you get this for \$60. You’ll need to sacrifice a USB-C cable to wire up the power, but the payoff is a runtime of about 5 hours at a 50% duty cycle.

Fox Hunt Transmitter

Here’s a video of the whole thing in action. I start with an older version of the transmitter powered by a USB-C battery. I actually recorded the second half of the video with my "helper" Katie several weeks later (with the same transmitter but a built-in battery). You’ll notice that Katie didn’t want to hold the Yagi for me, but very much wanted to stand directly in front of it whenever possible.


1. I believe the DAC is actually 12 bits, but the AIOC seems to use 16.
2. Yes I realize being able to adjust the timeout up to 136 years is insane and if I ever need to store more bits for something else, like WPM, I’ll probably steal bits from this register.