Can I build a toy tracking antenna using the conceptional tools of SDR and beam forming but not the expensive chips?
Fox hunting (also called raio orienteering or ARDF) is a sport where players carry directional antennas and radio receivers to find omnidirectional senders hidden outdoors.
Software Defined Radio (SDR) describes radio tools where steps such as mixing and filtering that can be done less flexibly in hardware are performed in software. This allows running a wide range of radio applications on a single piece of hardware, often in coherent multi-channel setups (as are used in phase arrays and for beamforming).
Processing output data from multiple coherent SDR receivers allows separating and, to some extent, locating, different radio emissions.
Fox hunting, especially as easily available through draussenfuchs.de, runs on the 70cm band (433MHz). Thus, an array of omnidirectional antennas with a radius of λ/2 = 35cm should be suitable for direction finding.
Is this cheating in the context of a fox hunt? Maybe.
(IARU rules for competition, appendix A, T1.1, indicates that it is not – but proper fox hunting happens at 3.5MHz and 144MHz, and while an array for 144MHz could still be portable at 1m or use a suboptimal aperture, and frankly I have no clue on how fox hunting even works on 3.5MHz, which looks like DC to anything that is not house sized, although I trust people who report that it works).
But would it be fun to build, and try out? Clearly, yes.
With 3 to 6 coherent receive antennas, a microcontroller for decoding, and a string of colored LEDs to indicate directions (possibly of multiple beacons simultaneously, with color indicating AM pitch), different shapes are possible: a minimal shape is a flat triangle; a cube would be fancy (albeit impractical unless foldable), a disc could have a fold-out spindel to enable vertical directionality, and an umbrella would just be neat. More channels should increase the spacial resolution.
This would be doable by just using a big multi-channel SDR such as the KrakenSDR (5 channels) or a LimeSDR (multiple actually for the receivers). But that’s expensive and not so much fun.
On the other end, this could all be done in analog, by forming a hypothesis on direction, and mixing signals according to that hypothesis. More fun, but not as flexible as I’d like. (And I’m more of a software person).
The setup I envision is to have a complex reference signal (LO, with I/Q components), probably an antenna pre-amplifier for the relevant band per antenna (which is probably a band pass filter on its own), multipliers for each of those two phases and antenna, probably a low-pass filter plus VGA/PGA, and then ADCs that sample the resulting baseband signal.
That baseband signal should then still contain all the information to isolate senders from different directions, and tune in to their signal independently if their bandwidth is below the low-pass and ADC bandwidths – the rest is “just” a bunch of linear algebra to set LED brightness for any direction for which there are LED indicators.
Decoding a modulated signal (audible AM frequency for draussenfuchs style, CW for IARU) can also happen in software, and set LED colors.
We might get away with just one multiplier-amplifier-ADC chain by switching fast through antennas, possibly even between the I and the Q component of the LO. That would reduce the available data rate accordingly, but we expect very low-information signals (800Hz AM tone or 15 WPM CW), and might bring the BoM by a lot. On the other hand, this means that care has to be taken between the switching time and the ADC sampling – and I have no intuition yet on whether the switching times of antenna switches or ADCs are fast enough, nor whether fast (and possibly highly dynamic) switches make a difference on the filters as long as they let the sampling rate pass.
Everything that is ready-made SDR seems to be too expensive, even relatively cheap RTL-SDR (which, as evidenced by Kraken, can even be run coherently).
… and maybe the microcontroller’s built-in ADCs are good enough? (Eg. nRF54 has 2Msps at 10-bit, or 62.5ksps at 14-bit on 8 input pins).
We’ll need way more passives than I’m used to (like, building actual filters *scaredface*), but for an 8x-antenna switching variant, LNA, 2 multipliers and 2 VGAs, we’d wind up at less than 30€ including MCU (with LO still a bit open).
Parked – I don’t find the time to follow up, and need to get some basic practical experience with regular antennas first.
Then, next items for next steps are:
Estimate the sampling frequencies and depth we need.
In theory, direction finding should work from any single snapshot sample, but it’d be great to demodulate data (CW but also AM), and to keep apart sources (effectively needs demodulating and sampling when one is high and the other is zero, or equivalent calculations).
Find actual 90° shifted sine clock source. (Not clear whether it really needs to be sine; square waves probably work as they’re orthogonal just as well, but, I guess, would lose information due to numerics?)
Find which of the fancy parts can just be OpAmps.
Find time to build it.
This page is part of chrysn's public personal idea incubator; go up for its other entries, or read about the idea of having an idea incubator for more information on what this is.