Commit Graph

138 Commits

Author SHA1 Message Date
Manolis Surligas de8ba5b768 Automatically generate flowgraphs with GRCC
This commit adds GRCC into the CMake build system and creates the
executables from the .grc files on demand.

Because there is always the case that the gr-satnogs has not
been installed yet in the system, we still ship the auto-generated
from our side executables. In next releases, during the install
target, the GRCC and the executables generation, will be called
after the gr-satnogs is installed.
2019-12-24 00:29:24 +02:00
Manolis Surligas cb981074b9 Fix faulty generated flowgraphs
* Fix faulty generated flowgraphs using old version of gr-soapy
* Disable by default the IQ storage
2019-12-23 17:48:32 +02:00
Manolis Surligas 74055132af Use the new JSON format for the decoded frames 2019-12-21 17:08:36 +02:00
Manolis Surligas bd10831489 Adapt NOAA APT flowgraph to gr-soapy 2019-12-20 13:00:59 +02:00
Manolis Surligas 12d0483515 Adapt Reaktor flowgraph to gr-soapy 2019-12-20 13:00:59 +02:00
Manolis Surligas 2bb2dc29dc Drop Meteor flowgraph as it is WIP 2019-12-20 13:00:59 +02:00
Manolis Surligas 9129ebc14b Adapt AMSAT DUV flowgraph to gr-soapy 2019-12-20 13:00:59 +02:00
Manolis Surligas 86c3c3246a Adapt CW flowgraph to gr-soapy 2019-12-20 13:00:59 +02:00
Manolis Surligas 357e7a87a6 Add a generic IQ receiver
This commit adds a generic IQ receiver supporting
arbitrary output sampling rate. It also allows the
user to disable or enable the Doppler correction applied.

The commit also drops the outdated fm_demod flowgraph.
2019-12-20 13:00:59 +02:00
Manolis Surligas 6b3fd6c406 Adapt example flowgraph to gr-soapy 2019-12-20 13:00:59 +02:00
Manolis Surligas 0ec7b29f93 Adapt AFSK1200 AX.25 flowgraph to gr-soapy 2019-12-20 13:00:59 +02:00
Manolis Surligas 977f732b4d Adapt BPSK AX.25 flowgraph to gr-soapy 2019-12-20 13:00:59 +02:00
Manolis Surligas 5501c237cf Adapt FSK AX.25 flowgraph to gr-soapy
* Adapt FSK AX.25 flowgraph to gr-soapy
* Drop the MSK flowgraph. From now on, for both MSK
and FSK the satnogs_fsk_ax25.py should be used
2019-12-20 13:00:58 +02:00
Manolis Surligas 860395a997 Remove obsolete flowgraphs
Update the obsolete flowgraphs and update the existing with
the new decoding architecture blocks. Client should
not have big problems with the new decoders as we utilizing
the multiformat frame sink that takes care of it. This
is just a work around for testing as we move forward for
fully socket-based communication with the client
2019-09-30 19:32:21 +03:00
Manolis Surligas 9fe6b6f274 Improvements on the overall structure of the project
* Improve performance of the Golay decoder
* Modernize some CMake modules of GNU Radio
* Re-introduce the CPPUnit automated tests
2019-09-30 19:32:21 +03:00
Manolis Surligas 571508b7c0 Fix resampling ratio 2019-09-30 18:47:46 +03:00
Manolis Surligas d160da424a Adapt FSK improvements for the Reaktor flowgraph 2019-09-30 18:47:46 +03:00
Manolis Surligas 33ec1d6b50 Improve FSK/MSK flowgraphs sensitivity 2019-09-30 18:47:46 +03:00
Manolis Surligas 23b819feb9 Add a DC blocker and remove filter gain at AFSK 2019-09-30 18:47:46 +03:00
Manolis Surligas 5015a11697 Manually remove the vector param
Manually remove the vector param from the moving average
block in the affected flowgraphs, for compatibility
with the GNU Radio 3.7.10
2019-09-30 18:47:46 +03:00
Manolis Surligas 907f64fd8b Add VCO-based frequency correction
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.
2019-09-30 18:47:46 +03:00
Manolis Surligas a6dbc22d43 Improve sensitivity of FSK/MSK flowgraphs 2019-09-30 18:47:46 +03:00
Manolis Surligas a8745dd6a4 Increase CW sensitivity
* 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
2019-09-30 18:47:46 +03:00
Manolis Surligas 0d21c5942f Fix BPSK issue on low baudrates 2018-12-21 17:32:11 +02:00
Manolis Surligas c77ca2fe98 Add decoding flowgraph for the Reaktor-Hello-World satellite 2018-12-03 12:18:48 +02:00
Manolis Surligas 1bc575cc25 Complete redesign of the BPSK decoder
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.
2018-11-27 16:55:59 +02:00
Manolis Surligas 5605165cb8 Invert AFSK1200 filter gain 2018-11-25 23:43:42 +02:00
Corey Shields 3b6006c27a remove audio_gain from remaining gr scripts 2018-11-24 22:00:23 -05:00
Manolis Surligas df9395057d Add bpsk_ax25.grc improved BPSK decoder
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.
2018-11-24 23:32:50 +02:00
Manolis Surligas 8fbca87084 Remove left over flowgraphs and files 2018-11-24 02:11:51 +02:00
Patrick Dohmen 255277f773 Add missing parameter "udp_IP"
Added the missing parameter "udp_IP" to get the UDP sink working.

Fixes issue #131
2018-11-24 00:26:26 +02:00
Manolis Surligas 61501694d7 Support arbitrary sampling rates on CW and AFSK1200 2018-11-24 00:26:26 +02:00
Manolis Surligas 58d6a32ad0 Improve DUV decoder
* Support arbtrary sampling rate
* Add UDP sink for the decoded frames
2018-11-24 00:25:32 +02:00
Manolis Surligas d824b95369 Fix LO offset correction 2018-11-24 00:25:32 +02:00
Manolis Surligas a93b0081e7 Fix doppler correction
* Fix doppler correction
* Add new METEOR decoder producing telemetry frames
2018-11-24 00:25:32 +02:00
Manolis Surligas c8b4bc88c9 Fix waterfall signal source 2018-11-24 00:25:32 +02:00
Manolis Surligas 8562a3b0af Fix missing variable 2018-11-24 00:25:32 +02:00
Manolis Surligas f7e67d0ae3 Add parametric FSK and MSK AX.25 decoders 2018-11-24 00:25:32 +02:00
Manolis Surligas 16854f6495 Improve DUV decoder sensitivity
Due to a large gain in a LPF, large values negatively affected the
quadrature demod filter.
2018-07-30 14:05:23 +03:00
Patrick Dohmen 0064bc835d Connect waterfall sink in front of filter
Connecting the waterfall sink behind the FFT Filter causes the
waterfall to show only the filtered APT signal. Fixing this needs
an additional resampler.
2018-07-18 12:24:16 +03:00
Patrick Dohmen e831d81502 Fix NOAA APT waterfall bandwidth
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
2018-07-18 12:24:16 +03:00
Manolis Surligas 6b1e3d38e2 Tune CW parameters
* 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
2018-07-18 12:17:29 +03:00
Manolis Surligas 85219e5d6b Fix CW decoder
* Fix CW decoder
* Link with boost chrono to avoid a linking error in boost 1.67
2018-07-18 12:17:29 +03:00
Patrick Dohmen dbfb6e6562 Improve sensitivity 2018-07-18 12:17:29 +03:00
DL4PD 9d41d8986c Add a BPSK decoder Script
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.
2018-07-18 12:11:23 +03:00
Manolis Surligas 75edc6de0e Add example flowgraph and documentation 2018-04-27 11:32:07 +03:00
Manolis Surligas 3d1c9fd395 Set all decoders output to binary format
* 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
2018-03-25 17:49:10 +03:00
Manolis Surligas b2105b1218 Use both scrambled and non-scrambled AX.25 decoders in AFSK1200 mode
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.
2018-03-25 16:45:47 +03:00
Manolis Surligas b0bac6987d Remove obsolete CW flowgrapgs 2018-03-25 16:08:28 +03:00
Manolis Surligas 5aae0a1b49 Add block for parsing the FOX slow speed telemetry frames 2018-03-24 21:43:19 +02:00