OPTION-1:
DVB-T plugged into Raspberry Pi.
This method uses software tool rtl_power which is part of software package rtl-sdr.
Credits:
Kyle Keen (keenerd): For rtl_power and heatmap.py
Oliver Jowett (obj): For guide how to use rtl_power and heatmap.py
STEP-1 of 6:
Install required packages (rtl-sdr and python-imaging), and get the python script (heatmap.py) to create image scan.png from scanned data stored in file scan.csv
sudo apt-get install rtl-sdr
## For Raspbian Jessie & Stretch use following command:
sudo apt-get install python-imaging
## For Raspbian Buster use following command:
sudo apt-get install python-pil
sudo wget https://raw.githubusercontent.com/keenerd/rtl-sdr-misc/master/heatmap/heatmap.py
sudo chmod +x heatmap.py
STEP-2 of 6:
Free the DVB-T Dongle which is in use by a decoder like dump1090, or dump1090-mutability, or dump1090-fa.
sudo systemctl stop dump1090
sudo systemctl stop dump1090-mutability
sudo systemctl stop dump1090-fa
STEP-3 of 6:
Once DVB-T Dongle has been made free, run following test
sudo rtl_power -f 800M:1200M:100k -i 30 -c 50% -e 30m -g 30 -F 9 >scan.csv
The above command will generate following output.
Number of frequency hops: 286
Dongle bandwidth: 2797202Hz
Downsampling by: 1x
Cropping by: 50.00%
Total FFT bins: 9152
Logged FFT bins: 4576
FFT bin size: 87412.56Hz
Buffer size: 16384 bytes (2.93ms)
Reporting every 30 seconds
Found 1 device(s):
0: Realtek, RTL2832U, SN: 00001003
Using device 0: Generic RTL2832U
Detached kernel driver
Found Rafael Micro R820T tuner
Tuner gain set to 29.70 dB.
Exact sample rate is: 2797202.148434 Hz
[R82XX] PLL not locked!
Wait for 30 minutes for scan to finish.
When scan is finished, it will say “Exiting… Canceled by user”.
Scan will create a file “scan.csv” in current folder and save scan data in it.
This will produce a very wide image (4000 pixels!) that shows spectrum power from 800MHz - 1.2GHz.
If you want a narrower image, increase “100k” above to something larger, it controls the bandwidth that corresponds to one pixel on the x axis.
-i controls the integration interval (time for one pixel on the y axis)
-e is the total runtime, longer gives you a taller image.
STEP-4 of 6:
Don’t forget to Reboot Pi so that system is restored to normal, and data feeding is restored.
sudo reboot
STEP-5 of 6:
Create an image “scan.png” in current folder from data stored in file “scan.csv”
./heatmap.py scan.csv scan.png
This will produce a very wide image (4000 pixels!) that shows spectrum power from 800MHz - 1.2GHz.
STEP-6 of 6:
Copy the image “scan.png” from Pi to your Win/Mac Computer. To copy a file from Pi, you will need to install on your Win/Mac computer an SCP software. Some popular free of cost software are FileZilla (win and mac) or WinSCP (win) or CyberDuck (win and mac).
Example of Scan of Existing RF Signals by rtl-power
This image is very wide (4000 pixel), but displayed smaller. As a result details are not clear.
Click over it to see bigger size.
Three 500 pixel wide cut-outs from above 4000 pixel wide image. These cutouts show details better.