Do I Need A Filter?

ab cd

Senior Member
The space around ADS-B antenna contain not only 1090 MHz signals, but also lot of other signals at different frequencies. The closer the frequency of a signal to 1090 MHz, your ADS-B antenna picks it stronger. For example if there are three signals of equal strength, one at 144 MHz, 2nd at 850 MHz and 3rd at 950 MHz, the ADS-B antenna will pick 950 MHz one the strongest, 850 MHz one a bit less stronger, and 144 MHz one much fainter.

As the Cell/Mobile/Pager signals exist in the range 850 MHz to 1200 MHz, these are picked strongly by ADS-B antenna and this mixture is fed to the receiver, overloading its front end tuner. To overcome this situation, a hardware called “Filter” is used. As its name shows, it filters out unwanted signals and passes a narrow band of frequency say 1075 MHz to 1150 MHz, blocking most Cell/Mobile/Pager signals from reaching the receiver.


Mobile / Cell Phone Frequencies Close to 1090 MHz ES and 978 MHz UAT



BAND NAMEREGIONAL DEPLOYMENTCENTER FREQUENCY OF THE BANDUPLINK
(mobile to tower)
DOWNLINK
(tower to mobile)
GSM-850GSM-850 is used in most of North, South and Central America
(ITU-Region 2).
Also in Australia & New Zealand (in addition to GSM-900 / EGSM-900)
850 MHz824 – 849 MHz869 – 894 MHz
GSM-900 / EGSM-900GSM-900 is used in most parts of the world: Africa, Europe, Middle East, Asia (apart from Japan and South Korea where GSM has never been introduced) and Oceania.
(ITU-Regions 1 and 3)
900 MHz880 – 915 MHz925 – 960 MHz


In order to determine if a filter is needed or not, it is necessary to scan frequencies in the range 800 MHz to 1200 MHz. If the scan shows very few and weak interfering signals, adding a filter will not give any appreciable improvement. On the other hand if the scan shows a lot of strong interfering frequencies, adding a filter will give substantial improvement in ADS-B 1090 MHz reception.

Software developers have developed softwares which use (DVB-T+ADS-B Antenna) to perform this scan. There are following two ways it can be done. Please click the options below to see the details.


OPTION-1:
DVB-T is plugged into Raspberry Pi (or is plugged into a Desktop/Laptop running Linux Debian/Ubuntu)

OPTION-2:
DVB-T is plugged into a Windows Computer - Using GUI rtlplan.exe.

OPTION-3:
DVB-T is plugged into a Windows Computer - Using Command Line.

OPTION-4:
DVB-T is plugged into a Windows Computer - Using Software "Spektrum".

This option performs a wide-band scan, and covers the entire bandwidth of DVB-T Dongle (24 MHz to 1800 MHz)
It is also pretty fast, one scan takes about 3 to 10 minutes
(time depends on speed of Windows computer).


.
 
Last edited:

ab cd

Senior Member
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 or python-pil), and get the python script (heatmap.py) to create image scan.png from scanned data stored in file scan.csv
Code:
sudo apt-get install rtl-sdr
sudo wget https://raw.githubusercontent.com/keenerd/rtl-sdr-misc/master/heatmap/heatmap.py
sudo chmod +x heatmap.py

## 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


STEP-2 of 6:
Free the DVB-T Dongle which is in use by a decoder like dump1090, or dump1090-mutability, or dump1090-fa.
Code:
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
Code:
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.

Code:
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.
Code:
sudo reboot


STEP-5 of 6:
Create an image "scan.png" in current folder from data stored in file "scan.csv"
Code:
./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.
scan by rtl_power.png



Three 500 pixel wide cut-outs from above 4000 pixel wide image. These cutouts show details better.

scan by rtl_power-1a.png



scan by rtl_power-1b.png



scan by rtl_power-1c.png
 
Last edited:

ab cd

Senior Member
OPTION-2:
DVB-T plugged into Windows Computer - Using GUI rtlplan.exe.

Important: If you want to plug in your DVB-T Dongle into Windows Computer, you should install its driver Zadig.

STEP 1 of 7:
Create a new folder of a name of your choice and at a location of your choice. For this guide, I will use new folder name "RF Scan", location inside "Download" Folder.

STEP 2 of 7:
Download RelWithDebInfo.zip from here:
Download Link: http://osmocom.org/attachments/download/2242/RelWithDebInfo.zip

Web Page: https://osmocom.org/projects/sdr/wiki/rtl-sdr
(scroll down to bottom of page to find download link)


STEP 3 of 7:
Un-zip RelWithDebInfo.zip. It will create a folder RelWithDebInfo and inside this folder another folder rtl-sdr-release which contains several files and 2 folders named x32 and x64 . Copy ALL files of folder x32 into newly created folder RF Scan.

STEP 4 of 7:
Download rtlplan.exe from the site given below, and save it inside the folder RF Scan
https://sourceforge.net/projects/guiforrtlpower/

rtl-panorama-1.png



STEP 5 of 7:
Double-click rtplan.exe to start the software.

STEP 6 of 7:
In the rtlplan window, make settings as follows (see screenshot below)
start freq: 800Mhz (800000000)
end freq: 1200Mhz (1200000000)
step: 100kHz
Gain: 49.6

rtl-panorama-2.png



STEP 7 of 7:
Press "START" Button. The scan will start and the scan image will start building gradually. Wait for about 15 to 30 minutes for scan image to build to sufficient height. Click "STOP" button to stop the scan. In addition to scan image, a file scan.csv will be generated inside folder "RF Scan"

rtl-panorama-3.png



 
Last edited:

ab cd

Senior Member

OPTION-3:
DVB-T plugged into Windows Computer - Using Command Line


Important: If you want to plug in your DVB-T Dongle into Windows Computer, you should install its driver Zadig from http://zadig.akeo.ie/


STEP 1 of 7:
Download Python Installation File python-2.7.14.msi from the site given below, and install it on your computer
https://www.python.org/downloads/

STEP 2 of 7:
Download Python Imaging Library Installation File Pillow-4.3.0.win32-py2.7.exe from the site given below, and install it on your computer
https://pypi.python.org/pypi/Pillow/4.3.0

IMPORTANT NOTE: Pillow and PIL are not compatible. If you have already installed PIL, first uninstall it, and then install Pillow

rtl scan win-2.png


STEP 3 of 7:
Create a new folder of a name of your choice and at a location of your choice. For this guide, I will use new folder name "RF Scan", location inside "Download" Folder.

STEP 4 of 7:
Download RelWithDebInfo.zip from here:
Download Link: http://osmocom.org/attachments/download/2242/RelWithDebInfo.zip

Web Page: https://osmocom.org/projects/sdr/wiki/rtl-sdr
(scroll down to bottom of page to find download link)


Un-zip RelWithDebInfo.zip. It will create a folder RelWithDebInfo and inside this folder another folder rtl-sdr-release which contains several files and 2 folders named x32 and x64.

Open folder x32

rtl scan win-2A.png


Copy following 3 files of folder x32 into newly created folder RF Scan.
(1) libusb-1.0.dll
(2) rtl_power.exe
(3) rtlsdr.dll

rtl scan win-1.png



STEP 5 of 7:
Download file heatmap·py by Right-Clicking on the link below, and choosing "Save Link As..."

Move the downloaded file heatmap·py into folder RF Scan.

https://raw.githubusercontent.com/keenerd/rtl-sdr-misc/master/heatmap/heatmap.py



STEP 6 of 7:
Make sure no program is using DVB-T Dongle. Stop any such program to free DVB-T.

Open Command console by typing cmd in search. Once the Command Console is open, do following:

Code:
# First CD to folder RF Scan
#Once in folder RF Scan, give following command
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.

rtl scan win-3.png



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-7 of 7:
Create an image "scan.png" in current folder from data stored in file "scan.csv"
Open Command console by typing cmd in search. Once the Command Console is open, do following:

Code:
# First CD to folder RF Scan
#Once in folder RF Scan, give following command
heatmap.py scan.csv scan.png

The above command will generate following output.

rtl scan win-4.png


This will produce a very wide image (4000 pixels!) that shows spectrum power from 800MHz - 1.2GHz.


Example of Scan of Existing RF Signals by rtl-power
scan by rtl_power.png

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.

scan by rtl_power-1a.png



scan by rtl_power-1b.png



scan by rtl_power-1c.png

 
Last edited:

AnirbanSen

Member
UPDATED:

Results:
scan.png

Scan without amplifier

satfilter.png

[SCAN with 20dB "satellite" amplifier]

scan.png

This is the result of scan with new filter+amplifier (38dB) (https://www.aliexpress.com/item/32847949227.html)

rtlsdr.png

Scan result dated 29th September, 2019 with the rtl-sdr blog's FAULTY filter showing actually 1080MHz

new-rtlsdr.png

Scan result dated 8th November, 2019 with the replaced rtl-sdr blog's filter showing 1090MHz
 
Last edited:

AnirbanSen

Member
Code:
sudo apt-get install rtl-sdr
sudo apt-get install python-imaging
sudo wget https://raw.githubusercontent.com/keenerd/rtl-sdr-misc/master/heatmap/heatmap.py
sudo chmod +x heatmap.py

For Buster, "python-imaging" has to be replaced with "python-pil"
 

ab cd

Senior Member
OPTION-4:
DVB-T plugged into Windows Computer - Using software "Spektrum"

This is a wide-band scan, and covers the entire bandwidth of DVB-T Dongle (24 MHz to 1800 MHz)
It is also pretty fast, one scan takes about 3 to 10 minutes
(time depends on speed of Windows computer).

IMPORTANT: If you want to plug in your DVB-T Dongle into Windows Computer, you should install its driver Zadig from:
http://zadig.akeo.ie/

(1) Download Spektrum for Windows

Direct Download Link for Current Latest release for Windows:
spektrum-win64.zip

Check Download page for Latest Release:
https://github.com/pavels/spektrum/releases

(2) Unzip the file, and inside you will find a file named spectrum.exe.

1609003139142.png


(3) Plug the dongle in your Windows Computer. If you have a dongle without integral filter, it will show all the signal existing in your area.

(4) Connet the antenna directly to yor dongle (No Filter)

(5) Double click the file spektrum.exe and the program will start

(6) When the program starts, it will detect and list the dongle as shown below. Click on the dongle name, and wait few seconds for scan to start.

1609003262604.png


(7) Click on the “Measure” button. On “Measure” window, “Gain” will be by default 50 (it is actually 5 dB). Adjust gain by bringing mouse pointer above 50 and turning mouse’s scroll wheel. Alternatively hold mouse down on blue circle around gain value, and drag it. Set it to maximum 496 (it is actually 49.6 dB).

1609003436876.png


(8) Leave Spektrum to run for 5 minutes so that it repeats scan several times.

(9) Repeat scan with a filter inserted between Antenna and Dongle.

Here are 2 scans I have done recently:

NOTE:
The scans below were done in an urban area with strong Cell/Mobile, TV, FM, Fire, Ambulance, Taxi, and other communication signals at VHF, UHF and Microwave frequencies. Other locations may not have such severe RF interference.


Scan 1 of 2 - FA Antenna + ProStick Plus (Only Internal filter of ProStick Plus. No External filter)
1609063180589.png


CLICK ON IMAGE TO SEE LARGER SIZE
1609003671931.png




Scan 2 of 2 - FA Antenna + ProStick Plus (with internal filter) + External Filter (FA Light Blue)
1609063234830.png


CLICK ON IMAGE TO SEE LARGER SIZE
1609004048721.png
 
Last edited:
This is what I have been looking for for a long time - a fast panorama scanner. :)
(in Option-4)

Although the RTLSDR scanner developed in the Python environment can solve the task with sophisticated display options, but by increasing the scanned frequency range, we can also “force” ourselves to a very long wait.
"Spectrum" can be a salvation if someone has to spend little time on too many things - like me. Thanks!

I really respect your efforts for the community. Well done!
 
Top