Pi Pico Rx - A crystal radio for the digital age?¶
Pi Pico Rx is a minimal SDR receiver based around the Raspberry Pi Pico. The design uses a "Tayloe" Quadrature Sampling Detector (QSD) popularised by Dan Tayloe. And used in many HF SDR radio designs. This simple, design allows a high-quality mixer to be implemented using an inexpensive analogue switch.
A quadrature oscillator is generated using the PIO feature of the RP2040. This eliminates the need to use an external programmable oscillator. Without overclocking the device this supports frequencies up to about 30MHz, conveniently covering the LW, MW and SW bands.
The IQ output from the QSD is amplified using a high-speed, low-noise op-amp. The I and Q channels are sampled by the built-in ADC which provides 250kHz of bandwidth. The dual-core ARM Cortex M0 processor implements the Digital Signal Processing algorithms, demodulating AM, FM, SSB and CW to produce an audio output.
Audio output is provided using a PWM followed by a low-pass filter. At first, I used an LM386 audio amplifier, but later found that with a suitable current limiting resistor the IO pin could easily drive a pair of headphones or even a small speaker directly.
Armed with just a Raspberry Pi Pico, an analogue switch, and an op-amp, we now have the power to construct a capable SDR receiver covering the LW, MW, and SW bands. With the ability to receive signals from halfway around the globe.
Testing with a simple youloop antenna.