Software & hardware setup#
We will have hands-on exercises with ADAM-PLUTO. This page guides you how to install software and drivers to use it.
Tip
If you run into trouble during the setup, also check the troubleshooting section.
Software setup#
We will install two tools: Gqrx and GNU Radio. Install:
GNU Radio according to the instructions on their wiki.
Windows & MacOS: You will install
radiocondawhich includes many apps including GNU Radio. MacOS will block the installation of radioconda due to unknown developers. You have to confirm that you really want to installradiocondain Security & Privacy settings.Linux: The tool should be available in your repository, e.g.,
gnuradio-companionon ArchLinux.
Gqrx
Windows & MacOS:
radiocondawill automatically installGqrx. You can test by typing Gqrx in your start bar.Linux: Search for
gqrx
Testing Gqrx with a recorded signal#
We will play a wireless communication signal recording on Gqrx. This recording contains a signal that you have to find.
Download the compressed IQ file:
gnuradio/lost-emergency-signal.raw.zip.Unzip the file. You should get
lost-emergency-signal.raw.We will now copy the path of the file for Gqrx, because Gqrx does not have the feature to select a file in a file manager. If you don’t know the path of the file, the following may help:
A. In Windows, you can use a keyboard shortcut to copy the path of a file. Select the
*.rawfile and press CtrlShiftc to copy the path. B. In Windows, you can right click on the file and on the opened menu, selectCopy as path.We will paste this path in the next steps.
Run Gqrx.
Open
Configure I/O devices. If you are running Gqrx for the first time, you should see this window directly.In
Devicedrop-down menu, selectComplex Sampled (IQ) File.In the
Device stringusefile=variable to configure the path to the IQ file. Paste the path that we gathered before to replace the path similar to the following example:file="C:\Users\u\downloaded folder\lost-emergency-signal.raw"We are not finished. Gqrx does not know about Windows folder separator symbol
\(backslash) and interprets them as an escape symbol as in the Linux world. We have to replace\with/:file="C:/Users/u/downloaded folder/lost-emergency-signal.raw"We are still not finished. Now we have to convert the double quotation marks to single quotation marks:
file='C:/Users/u/downloaded folder/lost-emergency-signal.raw'We need the quotation marks, because we have a space character (
), in our path. If the right quotation marks are missing, you get the following error:Parameter 'rate' is missing in arguments. Please select another device.
Finally, we have to set the sample rate. The IQ file was sampled at 2 MHz, so we have to set this accordingly so that our recording is played at the right pace:
file='C:/Users/u/downloaded folder/lost-emergency-signal.raw,rate=2e6'estands for exponent in the E notation. \(2e6 = 2\cdot 10^6\).Configuration variables in the
Device stringother thanrateandpathare not relevant.Make sure that you left other settings as default. Especially
Input rateshould be empty, otherwise it may change the sample rate and the signals that you hear will be skewed.Click
OK. You should see the main window.Click on the ▶️ button located in the top-left corner. You should see a moving texture with blue and black pixels like on the homepage of Gqrx. If you activate a demodulation technique like
WFM (stereo)orAMin theReceiver Options->Modeon the right, you should hear something – most likely noise.
Warning
In case you started playing with options 🤓: When you use a sample file as the Device, the Frequency setting on the main window does not have any effect.
Exercise 105 (Finding the hidden signal)
The recording includes a hidden signal. Could you find it?
Hint: Imagine you are on a road trip in a foreign country and are searching for a radio channel. Additionally Mode and Filter width may help.
What does Mode, Filter width and moving the red line (tuning cursor) change the sound you hear?
Signal processing basics and GNU Radio#
Digital signal processing basics and and intro to GNU Radio will be helpful for solving other problems later in the course. Feel free to skip parts that are familiar to you.
Read through the page What is GNU Radio. Be prepared to explain:
What is GNU Radio and how can it help us to solve our problem?
What is software-defined radio (SDR)?
What is the main data do you get from an SDR?
Exercise 106
The Signal Source is set to 1 kHz (1k). Do you see this frequency on one of the plots?
Installing drivers for ADALM-PLUTO#
You can follow these instructions even you don’t have the hardware right now. We will test the hardware in a later step.
If you get any problems during installation, PlutoSDR Quick Start may be worth a look.
Windows#
Install
Libiio. Go to their releases page. Pick the newest release and browse to theAssets. If you don’t see the installation file for your operating system, e.g.,*.exefor Windows, then click onShow all ... assets. Then you should see all installation files.Install PlutoSDR m2k USB drivers using their releases page. Similar to the previous step.
MacOS#
Install
Libiiosimilar to WindowsAccording to the MacOS driver page on Analog Devices wiki you may have to change the USB Ethernet compatibility mode.
Linux#
Libiiomust be installed and it could already be available in your distribution. For example, on ArchLinux the package is calledlibiio.Soapy driver for PlutoSDR, e.g., on ArchLinux
soapyplutosdr.
Testing the hardware#
Applies only if you have an ADALM-PLUTO.
Testing if your operating system sees ADALM-PLUTO#
When you connect ADALM-PLUTO, a file manager may pop up, because ADALM-PLUTO exposes itself both as a USB storage and Ethernet adapter. If ADALM-PLUTO does not behave like a USB storage, then check if you connected the USB cable to the USB socket in the middle and not the USB power socket on the right corner.
Testing Gqrx with Hardware#
Attach your SDR to your computer.
Run Gqrx.
Open
Configure I/O devices. If you are running Gqrx for the first time, you should see this window directly.In
Devicedrop-down menu, select your hardware. ADALM-PLUTO should be available as:PlutoSDR #0 usb:...
If you don’t see
PlutoSDR, there could be a problem regarding device drivers.Choosing the device in the
Devicedrop-down menu should change theDevice string.Leave other settings in their default and click
OKat the bottom. You should see the main window withReceiver Optionson the right.Click on the ▶️ button located in the top-left corner. You should see a spectrum moving. If you change
ModetoWFM, you should hear something – most likely noise.
Tip
Resetting Gqrx settings If you have problems and would like to reset your Gqrx settings:
Windows: type
gqrxin your start bar, then click ongqrx [reset]. After resetting, Gqrx will start withConfigure I/O devicesagain.Linux:
rm -r ~/.config/gqrx.
Tuning to an FM radio station with Gqrx#
We will try to tune to an FM radio station using the radio hardware. FM broadcast band typically uses 87.5 to 108 MHz band.
Try to tune to 100 MHz by changing the frequency on the black window. You can either
use your mouse wheel to change the individual digits or
enter the frequency using your keyboard.
100 MHz is used for radio broadcasting and if a radio sends at this frequency you should hear something. You will see that 100 MHz will be the center frequency and you will see a range spanning some MHz around the center frequency.
You should see some peaks in the shown frequency range. The highest peak will be on your center frequency, but you may hear noise and nothing meaningful.
If you don’t hear anything or just hear noise:
On
Receiver Optionson the right columnchange
ModetoWFM (stereo).
Modedetermines how you interpret the signal you receive. For exampleAMfocuses on how high the signal level is (amplitude) andWFMfocuses on the frequency of the signal.Move the 🔴 vertical line to a peak. If you are lucky you should hear scratchy and unclear voice or music.
For example, I see a peak on 103.6 MHz, on which Radio Play transmits in Storkøbenhavn.
If you could not hear anything meaningful, check troubleshooting.
Exercise 107 (Playing with filter window)
Tune to a radio station.
Modify
Filter widthby moving the mouse pointer to the spectrum. Press and hold Ctrl + 🖱️ wheel. This changes the filter width which is represented by the transparent grey area around the red line.Modify the offset of the grey area by using the previous mechanism but using Shift instead.
What happens with the signal quality in both cases?
How does filter width change the information we extract from a radio signal?
Try to interpret the FM signal using AM. You probably hear an unclear version of the FM-demodulated signal. Why?
FM encodes information through small frequency changes on the carrier signal. AM encodes information by changing the amplitude only. I believe, the frequency changes on the FM signal result in some amplitude changes which are correlated to the source signal and can be heard.
The only source I could find on this topic is this project which is not conclusive.