This commit includes a blind frequency correction mechanism for FM
signals. It uses the information of the angle difference between two
concecutive samples and a VCO to continuously compenstate any frequency
offset. To avoid intermodulations, a low pass filter is used trying to
pass only the DC component that is needed.
* Switch from amplitude based approach to auto-correlation
* Limit the bandwidth of the PLL using a low pass filter
* Reject noise of the PLL using a very steep low pass after it
This commit implements a new approach for the BPSK AX.25 decoding. It
seems that the GNU Radio equalizers (both CMA and LMS) are not ideal for
bursty transmissions. After they loose 'lock', they tend to converge
quite slow again.
The equalizing problem is again solved using an AGC2 block. However, the
placement of this block is quite critical. In older versions the AGC was
placed several steps after resampling and filtering. This resulted to
poor equalization and noise increase. Now the AGC is placed as early as
possible when the signal has a large span.
The new BPSK decoder uses a blind equalizer in par with an LMS based
equalizer. Both of them adapt more quickly in the channel response than
the AGC.
The decoder supports baudrates up to 19200.
Note that the bpsk_ax25.grc deprecates the bpsk_decoder.grc and
bpsk_demod.grc and they will be removed on the next release.
Connecting the waterfall sink behind the FFT Filter causes the
waterfall to show only the filtered APT signal. Fixing this needs
an additional resampler.
The flowgraph for decoding NOAA APT images generates a waterfall with a
bandwidth depending on the default samplerate of the SDR hardware.
USRPB200 defaults to 500 ksps, which produces an output of 125 ksps
after the "first_stage_decimation" which is fixed to a value of 4.
Changing the hardware to an "rtlsdr" also changes the default
samplerate to 1 Msps which results in a waterfall bandwidth of 250 kHz
(+- 125 kHz). Connecting the waterfall sink behind the FFT Filter,
which has a decimation set to match an output samplerate of 125 kHz,
seems to be correct! This produces waterfalls with a bandwidth of
125 kHz (+- 62,5 kHz).
Fixes issue #128
* Set the loop bandwith of the PLL to a lower value, to get rid off the
DC leakage and improve SNR
* Set the AGC update rate to a higher value
* Decrease the CW decoding threshold
Add a BPSK decoder script for frames transmitted in AX.25, using G3RUH
scrambling and without. Baudrate is set via parameter "baudrate", all
filters, taps, offsets, etc are calculated using this parameter. Decoder
tested with 1k2 bps and 9k6 bps.
* Set all decoders output to binary format
* Introduce the quadrature demodulation filter in all affected
flowgraphs, in order to reduce false alarms and increase performance
There are cases where in AFSK1200 mode, the transmit source uses the
G3RUH scrambling. Now the flowgraph implements both scrambled and
unscrambled decoders, so there is no need to descriminate between
scrambled and unscrambled satellites.
The CMake build system will first try to locate libfec in the system. if
it is not available, it will start building the libfec that is part of
the gr-satnogs source code. During the installation libfec is installed
in the system, thus future builds will make use of it and will not
rebuild from source.
* Set the METEOR flowgraph in non-X mode
* Reduce the stored bandwidth by a factor of 2. Captures have shown that
twice the bandwidth of the METEOR is enough for RRC and clock recovery
This commit adds a inital METEOR flowgraph that can be used for
capturing raw IQ. The capturing is performed in a sampling rate of
320KSPS which is more than enough for actual decoding for both METEOR
modes (72K and 80K). Due to icnreased bandwidth no audio file is
generated.
* Decoded frames are stored only in hex files
* Output only the CRC valid frames. For now, in order to get the CRC
failed manual edit of the flowgraph is needed. In the near future, a
command line arguemnt will enable/disable
* Fix clock recovery issue on AFSK 1200 decoder
* Improve performance of AFSK 1200
* Make AFSK 1200 decoder to produce waterfall and audio file with the
same characteristics as the generic FM demodulator flowgraph for a
unified output experience in the SatNOGS network