Meet the QuadRF Kit
As many of you know, the full MoonRF Array utilizes 240 antennas to reach the moon. But that scalable array is built from a single key building block: the QuadRF.
While the QuadRFs are designed to interconnect to form massive arrays, a single unit is an incredibly powerful tool on its own. These kits are a perfect platform for education, spatial RF experimentation, and exploring the frontiers of AI + RF (and best of all, as a low-power MIMO transmitter, it requires no ham radio license to operate!)
It's very easy to use out of the box. You can connect to a laptop/tablet/phone via USB, Gigabit Ethernet, or WiFi; then open a web browser and go to http://quadrf/ and explore. Or you can plug in a keyboard, mouse and monitor directly. The built-in Raspberry Pi 5 can handle substantial signal processing utilizing its quad-core ARMs. But for decoding the highest bandwidth WiFi/LTE the QuadRF streams IQ samples using SoapySDR or ZeroMQ to process on your laptop.
You've seen the time and frequency-domain... but what about a... space-domain! ✨
With four antennas, precise direction-of-arrival information about every signal is measured. This can be rendered in real-time to literally see your RF environment.
This works through walls or at very long range and you can select between different polarizations (LHCP/RHCP). The built-in Pi 5 processing is fast enough to render 1 GHz of spectrum for the surrounding environment at 30 fps update rate.
Besides the obvious ability to track drones in flight and their operators on the ground, we include an open-source program to actually intercept and decode drone video transmissions. By default, the QuadRF performs automatic beamforming to continuously track what it is receiving to obtain maximum SNR over long range.
We couldn't find any good existing open source SDR implementations of wireless camera video decoders, and certainly not any with color and synch recovery at long range / low SNR. Nor was there initially hope of running real-time with milliseconds of latency... But we ended up getting all of that with a simple standalone C application running on the Pi 5!
The secret was another feature that's included with the QuadRF...
⚙️ Agentic Transceiver
The QuadRF comes with a pre-trained AI agent system that allows you to prompt it with an idea or RF intent, and within minutes it writes the code, compiles the program, and runs it live with the RF hardware. The system is pre-loaded with context information about the QuadRF capabilities, controls, and API, so the agentic AI knows how to write the custom SDR software correctly. If there are bugs, the agent will look at the program output, debug the problem and iterate towards a solution automatically. You can interrupt it at any time or give it hints, but normally you can just hit enter and let it go ahead!
In general, there's no need to know programming or signal processing, but it's good to have enough RF experience to ask the right questions. For the NTSC/PAL video decoder, grayscale was working in about 5 minutes after prompting the AI agent. Color took a few more tries. And after a little prodding to make it more efficient, it optimized the inner loops with NEON instructions for the ARM A76 cores —giving butter-smooth video.
🌕 What about the Moon?
While the QuadRF may feel like a bit of a detour, it's actually directly in line with perfecting MoonRF. The exact same software, interfaces, and API are used on the MoonRF as the QuadRF. So it's important to get that all well developed and tested. It also helps to scale PCB production so that making thousands of MoonRF units is an easier task.
The QuadRF is the exact same hardware as in the MoonRF (just with a different Lattice ECP5 FPGA firmware update, something the Pi 5 does on every boot). When you're ready to build a MoonRF, it's a simple matter of taking out the RF board from the QuadRF case and screwing it into the MoonRF Array to join its 59 siblings. The full MoonRF Array can still use a single Raspberry-Pi 5 because the beamforming computation is distributed across the QuadRF FPGAs, making a Pi 5 still quite sufficient. Of course it will now have much tighter beams with a heck of a lot more power!
While the RF hardware is finalized, there is still work to be done designing the large (~1 meter diameter) enclosure for the MoonRF--which is fairly non-trivial, but I think we have a good plan! The high-speed interconnect, synchronization, and calibration methods are all mostly tested/proven but with some low risk finalization to be done. The QuadRF software is a great platform already, but there is a bit more software development needed for the full array. This includes building excellent GUI features for the user to get beamforming feedback and control.
👶 Personal Update
Meanwhile I got the flu, then a week later our entire family acquired norovirus. Everyone recovered well (me as of yesterday). We also have a baby due any day now (our first!) so there may be a little interruption to get this on Crowd Supply in March 😂. But I'm trying to at least have a good update by the end of April.
I'm still doing most all the development in my garage, and nothing has been released to the public yet. But a huge amount of open-source software will drop on GitHub soon. I'm planning to have anything that runs on the Pi 5 to be GPLv2 licensed (that's my answer to the dozen people who asked! :)
🛠️ Getting involved
Very soon we are looking for beta testers to help interface the QuadRF with existing SDR tools. Most SDR tools "just work" if they support SoapySDR or ZeroMQ, but many others need native support. If you are a developer or creator of an SDR tool, especially if you can get them running on a Raspberry Pi 5, please reply to any emails you get. Will invite you to a private GitHub repository and Discord channels to get you set up as an early contributor.
📶 Mass-producing the QuadRF
Scaling all the various component orders and figuring out aspects of the supply chain has been going pretty well. The tarrifs, wars, and various shortages of RAM and components has been a bit annoying, but no show-stoppers. A benefit is most of the designs in the RF, analog baseband, and ADC/DACs, use very generic components (like only differential transistors and passives!) so finding other sources has been relatively easy (the benefits of "vertically integrated engineering"!). The Lattice ECP5 FPGA prices have gone up, but it's still a very small cost contributor.