Commit Graph

200 Commits

Author SHA1 Message Date
Sebastian 5605c4ef3c Fixed slating issues caused by NaN samples 2018-07-18 12:25:53 +03:00
Alexander Jenke 07eb575437 Fix 1/0 correlation between sync_a pattern and sample history in noaa_apt_sink_impl.cc 2018-07-18 12:22:15 +03:00
Manolis Surligas a797d9bb7b Use AX.25 address field to reduce false alarms 2018-03-24 23:59:56 +02:00
Manolis Surligas 71caec1edc Fix 8b10b decoding process 2018-03-24 21:43:19 +02:00
Manolis Surligas 5aae0a1b49 Add block for parsing the FOX slow speed telemetry frames 2018-03-24 21:43:19 +02:00
Manolis Surligas 392b93306f Fix 8b10b word count issue 2018-03-24 21:43:18 +02:00
Manolis Surligas f33f46edb9 Add libfec as external project
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.
2018-03-24 21:43:18 +02:00
Manolis Surligas 02801c9a3f Improve 8b10b decoder performance and add the CCSDS RS decoder 2018-03-24 21:43:18 +02:00
Thanos Gkiolias 699acdf53e Complete 8b10b decoder
*Export data bytes and erasures in message port
2018-03-24 21:43:18 +02:00
Thanos Gkiolias 9eedf70d5f Add sync and decoding states
Match both control symbols at the beginning
2018-03-24 21:43:18 +02:00
Nikos Karamolegkos c2d20fbead Introduce 8b10b Decoder 2018-03-24 21:43:18 +02:00
Manolis Surligas c1677c8104 Change the quadrature demod filter to sync block
Seems that there is a probleb with general blocks and the history, so
the filter cannot act as valve. However, it produces zeros, in the
presence of noise.
2018-03-24 21:43:18 +02:00
Manolis Surligas 0d5b295969 Add a quadrature demod filter
This is an attempt to cut the signal free period after the quadrature
demodulation block. The idea seems that works, but there still an issue
with the samples not passing correctly from the valve.
2018-03-24 21:43:18 +02:00
Manolis Surligas 0074fe7c10 Make consistent the format of the message sink 2018-03-20 20:44:36 +02:00
Manolis Surligas c1dc11fe4e Fix timestamp not showing on every message at STDOUT 2018-03-20 20:40:13 +02:00
Manolis Surligas 2fb1bfadfc Fix AX.25 encoder/decoder
* Force the left over scrambled bits into the LFSR to be transmitted
* Refactor the decoding process
2018-03-20 20:40:13 +02:00
DL4PD d7f8d7dbad Change hex representation fmt to "0x00, 0x02, 0xff" 2018-03-19 21:41:54 +01:00
Manolis Surligas 0287bc6657 Remove obsolete match filtering block 2018-02-02 22:39:49 +02:00
Nikos Karamolegkos 909ae9da78 Fix bug with the frame sink blocks
* Change clear text format to binary
* Add binary and hex annotated
2018-02-02 22:16:20 +02:00
George Vardakis d8352c1884 Reinstate stop function 2018-02-02 18:44:32 +02:00
George Vardakis eabd2c89f2 Remove split option and increase height size in APT sink block 2018-02-02 18:07:21 +02:00
Nikos Karamolegkos 12a2aa0090 Add minimum frame length on the morse decoder 2018-02-01 21:59:45 +02:00
Manolis Surligas de05c3f1c4 Several minor improvements
* Improve CI testing
* Fix compilation warnings
* Bump up version
2018-01-21 22:23:22 +02:00
Manolis Surligas fd75575828 Merge branch 'LongHairedHacker/gr-satnogs-noaa-apt-sink' 2018-01-05 16:49:38 +02:00
Sebastian abc385ae5a Fixed code style issues 2018-01-05 13:37:55 +01:00
Sebastian 7304a0843c Fixed file naming scheme 2018-01-04 18:34:10 +00:00
Sebastian 5e8958703f Final cleanup and some more comments 2018-01-04 18:34:10 +00:00
Sebastian a844248164 Moved sync patterns into the class
Added constants for magic numbers
2018-01-04 18:34:09 +00:00
Sebastian 6cbe19ba60 Readjust dynamic range after first sync 2018-01-04 18:34:09 +00:00
Sebastian 0e5aeb849f Using stop instead of destructor for teardown 2018-01-04 18:34:08 +00:00
Sebastian 932369429a Added minimal documentation 2018-01-04 18:34:08 +00:00
Sebastian dc2cb5ca29 Syncing works 2018-01-04 18:34:07 +00:00
Sebastian d15bf778e3 Writing images, split and flip work 2018-01-04 18:34:07 +00:00
Sebastian 234a6cd676 Added libpng++ to dependencies 2018-01-04 18:34:06 +00:00
Manolis Surligas 8dedb9b179 Change to debug level wrong CRC AX.25 frames 2018-01-02 18:14:07 +02:00
Manolis Surligas 73d68a7131 Merge branch 'old-gcc-fix' into 'master'
Remove put_time() in favor of strftime() to support older gcc versions

See merge request librespacefoundation/satnogs/gr-satnogs!122
2017-12-03 21:26:10 +00:00
Manolis Surligas 1c20782d6a Remove put_time() in favor of strftime() to support older gcc versions 2017-12-03 23:24:17 +02:00
Manolis Surligas 53e0db48d6 Add AFSK1200 decoder
* AFSK1200 decoder with AX.25 frame support
* Fix issue with the AX.25 decoder when the frame has only one AX.25
SYNC flag
* Fix clear text debug output to print each one of the characters and
not the string, so that the payload can be partially be printed even if
it contains non-printable characters
* Add AFSK1200 decoder example that can decode frames from an .ogg file
retrieved by the satnogs-network
2017-11-26 22:09:45 +02:00
Manolis Surligas 2de1d91fae Improve the CW decoder flowgraph 2017-11-01 22:04:56 +02:00
Manolis Surligas 5d7af423a8 Window number to dot duration should be sufficient enough 2017-11-01 22:04:56 +02:00
Manolis Surligas f560f16af3 Improve CW decoding process
Our approach exploits the autocorrelation properties of the CW signal.
Thus low, high or band pass filtering greatly affects the performance of
the algorithm, because they introduce autocorrelation.
2017-11-01 22:04:56 +02:00
Manolis Surligas 52efa4c8bd Finish the CW encoder
The CW encoder is a debug block that can be used to check the
performance of the CW decoder of gr-satnogs module under different RF
conditions. It can also serve as a perfect debug tool for sattelite
missions.
2017-11-01 22:04:56 +02:00
Manolis Surligas 8d34e937ee Continue with the CW encoder 2017-11-01 22:04:56 +02:00
Manolis Surligas 9b9f8c92ad Simpify CW decoder 2017-11-01 22:04:56 +02:00
Manolis Surligas 94eef1463c Improve CW decoding performance and complexity 2017-11-01 22:04:56 +02:00
Manolis Surligas 5d9fc19e3b Simplify CW decoding 2017-11-01 22:04:56 +02:00
Manolis Surligas ea5a5632f5 Add CW decoder
* Filtering and decimation stages tested for USRP
* TODO: Test filtering for the rest of the SDR devices
2017-11-01 22:04:56 +02:00
Manolis Surligas ca1b8b1242 Output messages in text files
* Add support for saving the messages on a text file
* Add timestamp support for each message in ISO 8601 format
2017-11-01 22:04:56 +02:00
Manolis Surligas e114eb0cd0 Remove CW matched filter block
CW decoding using match filtering is pretty much useless in LEO.
The information about the tone frequency is very rare and carrier
oscillations during the satellite pass reduce significantly the
performance.

The new next CW decoder is based on the autocorrelation of the received
signal.
2017-11-01 22:04:56 +02:00
Manolis Surligas 7b8ef57d37 Add FSK9600 AX.25 decoder 2017-09-20 17:54:02 +03:00
Manolis Surligas 62cdbf7e51 NOAA sink fix
* Remove completely the .png extension. satnogs-client will handle the
rest.
* Fix enumeration on the NOAA sink xml
2017-09-20 17:18:59 +03:00
Manolis Surligas 2bac7e1f32 Change NOAA output naming scheme
NOAA APT decoder will create a file without a timestamp. The
satnogs-client will be resposible to append the proper timestamp.
This change was necessary to avoid the time offset between the start of
the observation timestamp that the APT decoder appends to the filename
and the end of the observation that the client takes into account.
2017-09-19 14:11:45 +03:00
George Vardakis 36e3aa66a6 Change filename on noaa to match new satnogs-client naming 2017-08-09 20:02:19 +03:00
Kostis Triantayllakis cce9f3d981 Introduce IQ sink block 2017-08-08 17:00:12 +03:00
Manolis Surligas 071e16b08d Merge pull request #101 from GVardakis/noaa_sync_fix
Fix NOAA APT Sink synchronization issue
2017-08-04 19:11:45 +03:00
George Vardakis 53e1b326d8 Fix NOAA APT Sink synchronization issue 2017-08-04 16:29:53 +03:00
Nikos Karamolegkos 813d6b9f74 Fix bug with the name of file 2017-08-03 12:39:38 +03:00
Nikos Karamolegkos fe1b612010 Fix bug with gcc<5 and minor changes to filenames 2017-08-02 18:06:21 +03:00
Nikos Karamolegkos bca58383b7 Add sink block for saving the frame to file
Supported file types txt, bin, hex
2017-07-30 13:25:55 +03:00
Manolis Surligas deb0c57c91 Fix memory leak 2017-07-21 20:49:44 +03:00
George Vardakis 162b435d74 Fix synchronization bug 2017-07-19 20:34:58 +03:00
Alexandru Csete bb40020207 Fix gr-digital dependency 2017-05-23 22:58:33 +02:00
George Vardakis 69408578e2 Fix NOAA png filename issue 2017-05-15 17:56:14 +03:00
Manolis Surligas f1ff356193 Support fixed packet length frames on the FSK decoder 2017-04-15 02:41:47 +03:00
Manolis Surligas a8d0eae736 Add support for arbitraty descrambling polynomials on the FSK receiver 2017-04-15 01:23:47 +03:00
George Vardakis be9f1212be Fix possible bug in FSK decoder 2017-04-11 11:43:35 +03:00
George Vardakis bb2401356a Add option for rotating image 2017-04-10 18:03:00 +03:00
George Vardakis d4fbd62c03 Remove output of byte file 2017-04-10 15:23:19 +03:00
George Vardakis 401e8f5248 Add documentation and synchronization option 2017-04-10 00:19:57 +03:00
George Vardakis 3b30b6b78e Add split image functionality 2017-04-09 17:20:02 +03:00
George Vardakis d76264adeb Implement NOAA sink block 2017-04-08 21:56:44 +03:00
Manolis Surligas 165423d64c Ogg source (#70)
* Start Ogg source block

* Add OGG audio source block

The number of output streams for this block should match the number of
audio streams contained inside the ogg file. If there is a mismatch an
appropriate exception is thrown.
2017-04-01 16:21:15 +03:00
Manolis Surligas c83e53f9b5 Dev (#67)
* Fix UPSat QT parameters

* Fix missing library versioning on CMake

* Fix segfault on the rigctl message source block destruction
2017-03-23 03:22:08 +02:00
Manolis Surligas d95b903097 Fix missing break statement 2017-02-03 19:25:53 +02:00
Manolis Surligas 11063b61f2 Fix OGG encoder issues 2017-02-03 01:24:10 +02:00
George Vardakis 639c372a22 Implement ogg encoder block 2017-02-02 21:05:02 +02:00
Manolis Surligas 50098ee879 Dev (#53)
* UDP Message source can handle multiple data types

* Add a waterfall sink block

* Fix dependency issues with VOLK

* Add mean and max hold mode to the waterfall sink

* Add mean and max hold mode to the waterfall sink

* Install satnogs_waterfall.gp gnuplot script at
<install_prefix>/share/satnogs/scripts

* Automatically retrieve x and y axis ranges at the satnogs_waterfall.gp
2017-01-22 19:33:36 +02:00
Manolis Surligas 32b853134a Fix Doppler shift direction (#43) 2016-11-22 11:49:42 +02:00
Manolis Surligas f320d841ab Add supoort to the rigctl message source to work as client
Start also the LEO channelizer. It is not yet functional.
2016-10-22 19:34:09 +03:00
Manolis Surligas 33a27566c8 Improve build system and installation documentation (#33)
The build systen now allows to enable/disable the blocks of the OOT
module that are used for development and debugging purposes.
2016-10-12 02:45:21 +03:00
Manolis Surligas 63863b5ac1 Rpi (#32)
* Fix compilation on Raspbian

* Add rtl-sdr dongle to the RX HW database
2016-10-11 19:39:37 +03:00
Manolis Surligas 6e3d8f9c10 Remove unnecessary block 2016-08-26 19:50:20 +03:00
Manolis Surligas 5056189d5e Improve the performance of AX.25 decoder
* Decrease false frame detection alarms that can reduce the number of
succesfully decoded frames
* Fix and improve the AX.25 bit stuffing mechanism
2016-08-07 02:11:59 +03:00
Manolis Surligas a92eb283ff Add the QB50 deframer block
The block is able to separate WOD AX.25 frames from normal ones.
2016-07-27 17:38:49 +03:00
Manolis Surligas 6d4d51b825 Fix bug at AX.25 bit stuffing on the decoder 2016-07-07 17:57:06 +03:00
Manolis Surligas ee26a102bd Small improvements 2016-07-02 23:01:17 +03:00
Manolis Surligas 1c30dfe145 Add AX.25 decoder with legacy support for the hardware radios 2016-07-02 00:18:44 +03:00
Manolis Surligas ddb6ce050f Merge branch 'next' of https://github.com/satnogs/gr-satnogs into next
# Conflicts:
#	lib/upsat_fsk_frame_encoder_impl.cc
2016-06-30 23:44:05 +03:00
Manolis Surligas 92843c43c9 Add AX.25 encoder that supports the legacy hardware radios
The new encoder now supports NRZI and G3RUH scrambling that makes it
compatible with most of the FSK9600 modems.

Remove also some unneeded blocks.
2016-06-30 23:39:16 +03:00
Manolis Surligas a22d37e961 Improve and make more generic the whitening mechanism
* The AX.25 framing now supports whitening.
* Change again the AFSK flowgraph.
2016-06-22 15:37:27 +03:00
Manolis Surligas 6ed86dbae5 Add new debug message source that can accept raw bytes 2016-06-02 17:06:40 +03:00
Manolis Surligas f8cc294e6f Add UPSat communication flowgraphs 2016-05-30 04:43:49 +03:00
Manolis Surligas ed96930438 Small bug fix
The new[] deamon appeared again!
2016-05-17 20:18:20 +03:00
Manolis Surligas 7009f9cdb9 Fix small issues 2016-05-15 00:07:23 +03:00
George Vardakis fb9f887587 Small change to hex print 2016-05-14 19:48:21 +03:00
George Vardakis 855ac47c26 Added the "0x" prefix to hex representation 2016-05-13 16:19:47 +03:00
George Vardakis 455e19e466 Added hex and binary output sink 2016-05-13 15:57:33 +03:00
Manolis Surligas c28c82c873 Add coarse doppler shift correction block 2016-05-11 21:17:58 +03:00
Manolis Surligas 8a81ebc4ff Fix frame length bug at UPSAT FSK transmitter
The frame length field was set in number of bits instead of number of
bytes, only when the transmitter was configured in AX.25 mode.
2016-05-11 14:25:16 +03:00
Manolis Surligas df8cffbe1a Remove blocking timeout parameter for compatibility 2016-05-09 22:07:39 +03:00