HackerBox Fox Hunt

The HackerBox Fox Hunt Kit is a compact, yet powerful, DIY radio transceiver operable on either VHF (2m) or UHF (70cm) amateur radio bands. The microcontroller "brains" and color graphical display for the HackerBox Fox Hunt Kit are provided by an ESP32 T-Display Module supporting simplified programming through the Arduino Integrated Development Environment (IDE). An SA818 radio transceiver module can be controlled by firmware running on the ESP32 microcontroller. The compact form factor of the HackerBox Fox Hunt Kit is ideal for amateur radio direction finding (aka fox hunting). Flexible, extensible hackability is support by a full set of I/O pins broken out to an expansion header including audio in and out signals.
HackerBoxes is the monthly subscription box service for enthusiasts of electronics and computer technology - hardware hackers - the dreamers of dreams.
Supplies
This Instructable contains information for working with the HackerBox Fox Hunt. Full kit contents are listed on the product page where the HackerBox Fox Hunt is also available for purchase.
A soldering iron, solder, and basic soldering tools are generally needed to work on HackerBoxers. A computer for running software tools is also required. Have a look at the HackerBox Workshops for tools and supplies along with a wide array of introductory activities and experiments.
You will definitely also need a sense of adventure, hacker spirit, patience, and curiosity. Building and experimenting with electronics, while very rewarding, can be tricky, challenging, and even frustrating at times. The goal is progress, not perfection. When you persist and enjoy the adventure, a great deal of satisfaction can be derived from this hobby. Take each step slowly, mind the details, and don't be afraid to ask for help.
ALWAYS WEAR SAFETY GLASSES WHEN SOLDERING, WHEN TRIMMING WIRE LEADS, OR WHEN CUTTING, DRILLING, ETC.
Amateur Radio

ARE HACKERS THE FUTURE OF AMATEUR RADIO?
DUAL BAND OPERATION
The Fox Hunt Radio operates on the 2 meter (aka 144 MHz) and 70 centimeter (aka 440 MHz) amateur radio bands.
The 2m amateur radio band is a portion of the VHF radio spectrum that comprises frequencies ranging from 144 MHz to 148 MHz. Electromagnetic waves in this frequency range are around 2 meters in length.
The 70cm amateur radio band is a portion of the UHF radio spectrum that comprises frequencies between 420 MHz and 450 MHz. Electromagnetic waves in this frequency range are around 70 centimeters in length.
The Fox Hunt Kit was previously supplied in two variants: VHF (2m) and UHF (70cm). It was determined that the UHF radio module supported VHF operation quite well. Accordingly, the kit is now supplied only as a VHF/UHF solution.
HAM RADIO BANDS
The HackerBox Fox Hunt uses an SA818 radio transceiver module. These modules use the same circuitry as the very popular Baofeng Handheld Transceiver. This handheld radio was featured way back in HackerBox 0003: Radio Active. What a long, strange trip it's been. That HackerBox online guide is still quite useful and the Baofeng radio itself has continued to become ever more affordable.
Anyone can use an SA818 transceiver, or any other 2m/70cm radio, to receive, listen to, and decode all the radio signals they wish. However, transmitting on frequencies in theses bands REQUIRES A RADIO LICENSE. If you are not a licensed radio operator or haven't verified the laws in your country, you should definitely not assert the PTT (push-to-talk) control signal on the SA818 module. Please take these laws seriously.
HAM RADIO LICENSES
While there is quite a lot to hear and explore in the 2m/70cm radio bands without transmitting, you may want to consider getting an amateur radio license! What better place than here? What better time than now?
In the US, the initial radio ticket is the Technician Class License. It is obtained by passing a 35 question exam that, while not trivial, is easy enough to prepare for. All of the possible test questions are available free online to study at your leisure and you can find an exam location in your area or even take one online. You do not need to learn morse code.
Additional resources to prepare for the exam:
Ham Radio Crash Course Technician License Prep 2022-2026 Playlist (12 videos)
Free PDF copy of the No-Nonsense Technician Class License Study Guide
ARRL Technician Course 2022-2026 Playlist (37 videos)
HamStudy.org: free online study and practice tests
RADIO CLUBS
Ham Radio Village, K0HRV
Fox Hunting With HackerBoxes

Fox Hunting is an activity wherein participants use radio direction finding techniques to locate one or more radio transmitters hidden within a designated search area. This activity is most popular among amateur radio enthusiasts, and one organized sport variation is known as amateur radio direction finding. (Wikipedia)
ESP32 T-Display Module

To build confidence, configure the required tools, and reduce troubleshooting variables, we will initially be working with the T-Display Module WITHOUT SOLDERING the pins (or anything else) to the module.
The microcontroller (brains) and graphical display for the HackerBox Fox Hunt Kit is provided by the LilyGO TTGO ESP32 T-Display Module, which we will refer to as the T-Display. It's a very compact ESP32 development board with a built-in 1.14 inch IPS 240x135 Full-Color Display. The T-Display module also provides Wi-Fi, Bluetooth, a battery charging interface, two onboard GPIO buttons, and a USB-C connector. The IPS Color Display is controlled by an ST7789V Driver Chip that is prewired to the ESP32 pins shown in the diagram above.
Let's roll...
- Power up the T-Display using a USB-C cable
- The factory programmed firmware will display a graphics demo
- Install the Arduino IDE (if you don't already have it)
- In the IDE, use the Boards Manager to search for ESP32 (by Espressif Systems)
- Select that board package and hit install
- Under the Tools menu, select:
- Board: ESP32 Dev Module
- Upload Speed: 921600
- CPU Frequency: 240Mhz (WiFi/BT)
- Flash Frequency: 80Mhz
- Flash Mode: QIO
- Flash Size: 4MB (32Mb)
- Partition Scheme: Default 4MB with spiffs (1.2MB APP/1.5 SPIFFS)
- Core Debug Level: None
- PSRAM: Disabled
- Port: COM port that appears and disappears when T-Display is connected/disconnected
- Upload Speed: 115200 (setting this lower speed can help with programming the MCU)
- From Tools > Library Manager, search for and install the "Adafruit ST7735 and ST7789" Library
- When asked to include all dependencies, elect to do so
- Grab the attached graphicstest_T_Display.ino sketch
- It's a slightly modified example file from the Adafruit ST77xx Library
- Compile and Upload the sketch to the ESP32 of the T-Display module
Additional Resources:
TTGO-T-Display GitHub Repository
Downloads
SA818 Radio Transceiver Module

The SA818 is available in two frequency band variants: VHF (134-174 MHz) and UHF (400-480 MHz). Both are shielded modules with integrated high performance microcontrollers, narrow band RF transceiver ICs, and RF power amplifiers. The SA818 provides a standard UART interface for easily configuring transceiver parameters and controlling radio transmit and receive functions.
Detailed specifications are provided in the attached SA818 Product Spec file. The attached SA818 Programming Manual details the five AT commands that can be sent to the SA818 over its serial interface:
1: Connection Handshake
AT+DMOCONNECT
2: Set Group Parameters
AT+DMOSETGROUP
3: Scan Frequencies
S+ReceiveFrequency
4: Set Volume
AT+DMOSETVOLUME
5: Set Audio Filter
AT+SETFILTER
Use of AT commands are reminiscent of the old Hayes telephone modems or, more recently, the original 8266 firmware interface.
Assembling the HackerBox Fox Hunt Kit

Start on the back of the PCB (with the skull graphic)...
Ceramic Filter Low-Pass Filter
A low pass filter can be used to reject RF harmonics.
The cutoff frequency for the filter is matched to the frequency range of the transceiver selected:
For VHF: LFCN-180+ Low Pass Ceramic Filter DC - 180 MHz (digikey)
For UHF: LFCN-490+ Low Pass Ceramic Filter DC - 490 MHz (digikey)
The filter component may look small, but it's not any harder than soldering a large surface mount resistor. Just as with a resistor, solder the two shorter sides first. Then at the middle of each of the longer sides, solder the middle terminals to the ground pads on the PCB next to the filter component.
The filter component is designed to operate in both directions, but it is convention to place the red marking closest to the transceiver side (away from the antenna side) as shown in the image above.
Zero Ohm Resistor Option
If the filter component is not desired, or not available, the antenna trace can be closed using a zero ohm resistor (in an SMD 1210 package) as shown in the image above. The resistor is soldered in just like the filter, however the two side (ground) pads are not used.
SA818 Transceiver Module
Carefully position the module to match its castellations over the corresponding pads on the PCB. Solder the small castellations on three sides of the module. The two large pads on the fourth side can be left unsoldered. Have a look at SparkFun's guide on How to Solder Castellated Mounting Holes.
Three Momentary Tactile Buttons
Align the buttons over the corresponding PCB landings. Each can be oriented in either direction.
Audio Line Out - 3.5 mm Tip Ring Sleeve (TRS) Jack
Positing the audio jack into place according to its alignment pegs. Solder the three tabs into place.
SMA Antenna Connector
Place the Male SMA Edge Connector over the edge of the PCB as shown on the image above. Line up all five of the terminals on the connector with the pads on the PCB. Solder them into place. What's the difference between SMA and RP-SMA?
ESP32 T-Display Module
Two rows of header pins provided in the plastic box with the T-Display are used to solder the T-Display to the Fox Hunt PCB. Here are a few pointers:
Trim a tiny bit of the plastic insulation from the header on 5V pin just next to the reset button so that it clears the neighboring surface mount component on the bottom of the T-Display board.
Orient the T-Display such that the USB-C port extends over the edge of the Fox Hunt PCB.
Mount the T-Display on the same side of the PCB with the three buttons. In other words, DO NOT cover the skull graphic.
Indicate the VHF/UHF Frequency Marking
Use a fat black Sharpie on the bottom of the PCB to mask out the "incorrect" band, or use a thinner permanent marker to place a checkmark in the box for the "correct" band.
Consider Enclosures
The reduced size of the Fox Hunt PCB allows the entire radio, including its battery, to be enclosed within a short section of PVC pipe or inside a small 3D printed, molded, or extruded housing.
Example Code - NOAA Radio

Grab the attached example sketch NOAA_Receiver.ino and program it onto the assembled HackerBox Fox Hunt hardware.
The sketch code has two arrays for configuring radio channels. One array for the frequency of each channel and another array to assign a text nickname for each channel. Eight channels come predefined in the code, but you can easily edit the number of channels, their frequencies, and their nicknames.
The eight predefined channels include one channel in the 2m amateur band and the seven frequencies used by the National Oceanic and Atmospheric Administration (NOAA) for its Weather Radio station broadcasts. All NOAA Weather Radio stations broadcast on one of seven frequencies in the VHF Public Service band: 162.400 MHz, 162.425 MHz, 162.450 MHz, 162.475 MHz, 162.500 MHz, 162.525 MHz, and 162.550 MHz. (National Weather Service FAQ)
Button A cycles through channels. Plug earbuds or amplified speakers into the LINE OUT port to hear the weather information received on one or more of those channels.
Button C controls the Push to Talk (transmit) signal into the SA818 module. Do not use this feature if you do not hold the proper license and without making the required call sign identifications. Regardless of license held, never transmit on the NOAA frequencies.
Downloads
Fox Hunt Firmware

- Have an amateur radio operator license and callsign
- While(!licensed) {repeat step 1}
- Download the attached Fox_Hunt_TX.into sketch file
- Open the sketch in the Arduino IDE
- Find the string N0CALL and replace it with your callsign
- Compile, upload, and HIDE THE FOX!
Downloads
Extensibility

In the true hacker spirt, you may wish need to modify and/or extend this radio kit...
Expansion Header
The number markings on the expansion header indicate the corresponding GPIO pins of the ESP32 MCU. The table below lists the function for each of the I/O pins. Note that I/O 36 remains unused for your enjoyment.
15 Button A
17 SQ
25 Mic In
22 TXD
38 Line Out
21 RXD
13 PTT
27 PD
26 Button B
33 H/L
32 Button C
36 Unassigned
AUDIO LINE OUT
Audio signals received by the SA818 radio module are output from the SA818 on pin 3 (AF_OUT). AF_OUT means audio frequency output. This signal goes to three destinations:
- line out jack (3.5mm TRS socket)
- analog to digital (ADC) input to ESP32 (I/O pin 38)
- pin "38" of the Expansion Header
Note that the 3.5mm line out jack has the received audio connected to both the left and right channels, so ear buds can be used to listen to the received signals. Amplified speakers can also be fed from the line out socket. The line out signal can also be fed into a PC (or other gizmo) to process digital mode signals received by the SA818 radio module.
AUDIO LINE IN
Audio signals fed to the SA818 radio module for transmissions are fed into the SA818 on pin 18 (MIC_IN). MIC_IN means microphone input. This signal can be fed from two sources:
- digital to analog (DAC) output from ESP32 (I/O pin 25)
- pin "25" of the Expansion Header
While the signal can be fed from both of these sources, it should only be fed by one source at a time. For example, while outputting audio from pin 25 of the ESP32, pin "25" of the Expansion Header should be left unused. Similarly, when feeding an audio signal into pin "25" of the Expansion Header, I/O pin 25 of the ESP32 should set to INPUT mode so that it is not also driving the same signal line.
Hack the Planet

As hackers and amateur radio operators alike are driven to build their skills and knowledge, we welcome you to subscribe to HackerBoxes, the monthly subscription box for electronic hobbyists. Join us every month for new discoveries in electronics, computation, communications, and information security. Visit HackerBoxes.com to sign up for your monthly HackerBox subscription. In the meantime, please share your successes and questions in the comments below. Email support@hackerboxes.com anytime you have a question or need some assistance.