First Attempt at an Arduino Foxhunt Transmitter
I thought it would be a fun project to try to put together my own foxhunt transmitter. While I initially thought of several ideas for low power transmitters, most designs require some knowledge of transmitter circuits to avoid harmonics and things of this nature. I figured it would be easier to start by leveraging a $19 baofeng for the tuning and transmitting and an Arduino to key it up on a regular interval.
I set about designing a basic circuit and program. For audio, some designs on the internet leverage tones for morse code, but I wanted to try a recorded message, so I got a cheap DFPlayer mini and wired it up to an Arduino Uno. The DFPlayer is a really cheap and simple audio player that can play mp3s from a microSD card.
There are some gothcyas, in that for my design it will just play the first file added to the card– and MacOS apparently can create rogue .mp3 files as part of its indexing, so those must be removed if you use a Mac to load the file. I used a PC so no issues there.
Following the schematic for the DFPlayer and using one of the many Arduino libraries for it, I figured out how to play the file and then to also wait until the file was complete before setting a loop delay so that the message would play at regular intervals. I also wired up a basic 5V relay and added in a step to set the relay High to open PTT and Low to close it.
Wiring to the Baofeng required cannibalizing a Baofeng earpiece and finding the correct wires for Speaker -, PTT (Speaker+?), Mic+, and Mic- (I cheated since the mic board in my earpierce included labels). you could also trace the tip, ring and sleeves of the connector using a pinout diagram. One of the things I discovered in this process is that the cable I was using included two PTT buttons for A and B channels, respectively. The circuit I borrowed from with the labels this will only activate the B channel. If you are on A, it will not function. A different connection can be made to utilize the classic single PTT button. If I make another, I’ll likely go that route to avoid confusion.
Had a few issues in testing where I found that it seemed some power supplies didn’t provide enough power to play the file and hold the relay and once I transferred to a cleaner looking layout on a breadboard, there was a lot of noise in the audio.
After testing a few potential wiring issues, it was sounding better, but inconsistently. It seemed like as it started up it would be fine, but then the noise would build. I tried several ways to isolate what might be the cause, and eventually traced it not including a 1K resistor on the RX of the DFPlayer, which appears to be needed due to the 5v arduino output and the 3v Serial of the DFPlayer, though I never found the explanation written out anywhere. With this fixed, testing continued and despite some static still on the audio, seems very successful.
Future development will likely include a look at maximizing power saving, perhaps trying to eliminate the mechanical relay, and perhaps prototyping an Arduino shield for a cleaner, permanent set up. I’d also like to test power draw and how long of a run time could reasonably be expected from a 9v battery or usb battery pack.