-
Notifications
You must be signed in to change notification settings - Fork 138
Manual squelch setting
Squelch in RTLSDR-Airband is the same feature that you have in every analog scanner. When the signal level drops below a certain value, the squelch closes, ie. the signal gets muted.
RTLSDR-Airband uses automatic squelch by default. It constantly estimates the noise floor level in each channel and opens when the signal level exceeds the noise level estimate by about 10 dB. For proper operation it requires each channel to have a period of silence every now and then (and it means radio silence, not microphone silence - if the carrier is being transmitted, it's not a silence, even if nobody is speaking).
This approach works fine for most cases. However there are channels which transmit continuously, like ATIS (automatic airport information) or AWOS (weather information). If these are your channels of interest, you might find it necessary to set squelch manually. This can be done in two ways:
-
squelch_threshold
(integer, <= 0) - specifies the minimum signal level (in dBFS) that should cause the squelch to open. -
squelch_snr_threshold
(integer or float, >= 0) - specifies the minimum signal-to-noise ratio (in dB) that should cause the squelch to open
These options are configurable per channel. Do not use them both simultaneously. Only one of them should be specified for the given channel.
channels: (
{
freq = 123.00;
squelch_threshold = -30; # in dB relative to the full scale
outputs: ( ... );
},
{
freq = 124.00;
squelch_snr_threshold = 20.5; # in dB relative to the noise floor
outputs: ( ... );
},
...
);
There are two channels in the above example:
- The first channel is configured such that the squelch opens whenever the signal level exceeds -30 dBFS (decibels related to the full scale of the analog-to-digital converter, where 0 dBFS is maximum value possible and everything below it is negative). In order to keep the squelch open all the time, just set this value sufficiently low, so that it is always below the noise floor level (-80 dBFS for example).
- The second channel is configured such that the squelch opens whenever the
signal level is 20.5 dB higher than the noise floor (which is computed
dynamically). As the default value for this option is 9.54 dB, setting it to
20.5 dB causes the squelch to be less sensitive than normal (ie. it will open
only on strong transmissions). Setting
squelch_snr_threshold
causes the squelch to be open all the time.
channels: (
{
freqs = ( 126.3, 121.5, 128.225, 131.375 );
squelch_threshold = -30;
# or...
squelch_threshold = ( -30, -25, 0, -35.5 );
outputs: ( ... );
},
...
);
In scan mode, squelch can be configured in four ways:
-
squelch_threshold = -30;
- this sets the squelch threshold to -30 dBFS for all scanned frequencies. -
squelch_threshold = ( -30, -25, 0, -35.5 );
- this sets the squelch threshold separately for each scanned frequency. The order of threshold values is the same as the order of frequencies on thefreqs
list (of course the length of squelch list shall be no less than the length of freqs). A value of 0 means that auto squelch shall be used for this frequency. -
squelch_snr_threshold = 20.5;
- sets the squelch SNR threshold to 20.5 dB for all scanned frequencies. -
squelch_snr_threshold = ( 30, 5, 0, -1.0 );
- this sets the squelch SNR threshold separately for each scanned frequency. A value of zero sets the squelch to be open all the time. A value of -1.0 (the only negative value allowed) skips the squelch SNR threshold configuration for a particular channel (ie. keeps the SNR threshold at the default value).
When working in multichannel mode, first set the squelch_threshold
to some
low value, for example -80. This should cause the squelch to be always open.
Run the program in the foreground
and observe signal level in the textual waterfall of that channel. Then guess
the value which will work for your case (of course it should be lower than the
typical signal level in the channel) and put it in the config file.
In scan mode you can't set the squelch very low, as it will block the scanner, so use trial and error to find out a value which is high enough and then finetune it. Try using the simpler config variant first (ie. common threshold value for all frequencies). Use the advanced variant only if the first one does not perform well.
- Overview
- Installation
-
Configuration essentials
- Grammar basics
- General configuration file structure
- Configuring devices
- Configuring channels
- Configuring outputs
-
Configuring optional features
- Disabling configuration sections
- Changing PID file location
- Manual squelch setting
- CTCSS
- NFM deemphasis
- Audio filters in MP3 outputs
- Notch filter
- Limiting channel bandwidth
- Icecast metadata updates in scan mode
- Logging activity of scanned frequencies
- Channel usage statistics
- Tweaking sampling rate and FFT size
- Mixers
- Multithreaded operation
- Running
- Troubleshooting
- Configuring auxiliary software to work with RTLSDR-Airband