PlutoSDR for AM Modulation on GNU Radio


Fig.1 PlutoSDR for AM Modulation

In a previous post I looked at using the PlutoSDR as a WSPR beacon (Ref.1). The PlutoSDR can be used to demonstrate standard AM Modulation as shown in Figure 1. Transmission is via a shielded sma cable plus 40dB pad to 3 test receivers: A Signal Hound spectrum analyzer, RTL-SDR and PlutoSDR receiver (Ref.2). The frequency used is 433.92MHz which is in the PlutoSDR range and is also an ISM band. Remember transmission without the cable requires an appropriate license depending on your country.

AM Modulation Basics

Fig.2 Basic AM Modulator Fi=1KHz, Fc=10KHz
Fig.3 AM Modulation m=50% Fc=10KHz, USB=11KHz, LSB=9KHz
Fig.4 AM Modulation m=100% Fc=10KHz, USB=11KHz, LSB=9KHz

Figure 2 shows a basic AM modulator as previously covered (Ref.3). You can clearly see the 1KHz information wave superimposed on the 10KHz carrier wave. Two sidebands are generated at Fc +/- 1KHz = 11KHz and 9KHz. For a modulation index of 50% sidebands are 12dB down from the carrier and at 100% they are 6dB down.

PlutoSDR Tx – SpecAnalyzer Rx

Fig.5 PlutoSDR AM Tx with 40dB pad
Fig.6 SigHound Spectrum m=50% 40dB pad
Fig.7 SigHound Spectrum m=100% 40dB pad

Figure 5 shows the GNU Radio schematic for the PlutoSDR AM Tx. Note that it is the same as in Figure 2 except that the second signal source and multiplier are replaced by the Soapy Pluto Sink (Fi=10KHz). The varying amplitude must be complex to feed this block, so a float/complex converter is added and the complex component set to zero. I used the Spectrum analyzer to zero the PlutoSDR on the correct frequency by adding a f_shift of 6KHz in my case (depends on your unit, temperature drift etc). Figure 6 shows sidebands at 12dB down for m=50% and Figure 7 shows sidebands at 6dB down for m=100%.

PlutoSDR Tx – RTL-SDR Rx

Fig.8 PlutoSDR AM Tx – RTL-SDR Rx 40dB pad

Figure 8 shows reception using the RTL-SDR. Both transmitter and receiver gains were backed off to avoid intermod/overload. Note the carrier at Fc and USB/LSB 100KHz away at -12db for m=50% (Fi=100KHz).

PlutoSDR Tx – PlutoSDR Rx

Fig.9 PlutoSDR AM Tx – Rx Loopback with 40dB pad
Fig.10 PlutoSDR AM Tx-Rx Loopback with 40dB pad m=50%

Figure 9 shows the GNU Radio schematic for PlutoSDR AM loopback operation. This is tricky even with the pad because the Tx gain & Rx gain settings may cause intermod and distortion. The receiver frequency is set at 433.720MHz 200KHz away from the transmitter so that zero frequency distortion I/Q imbalance is avoided. Figure 10 shows the transmit and receive spectrum for m=50%.

Fig.11 PlutoSDR AM Modulation on GNU Radio

GNURadio Companion Basics Course:

Please send your comments, questions and suggestions to:

YouTube Channel
YouTube Channel


#1. – “PlutoSDR for WSPR Beacon on GNURadio”

#2. – “PlutoSDR Specifications”

#3. – “AM Modulation on GNU Radio”

By Jeremy Clark

Jeremy Clark is a Senior Telecommunications Engineer and Advanced Amateur Radio Operator VE3PKC. He is the author of E-Books on Telecommunications, Navigation & Electronics.