Started adding notes to strf operation.
parent
694f1ddf6a
commit
415521ac68
39
README.md
39
README.md
|
@ -15,16 +15,41 @@ Install
|
|||
* libjpeg-dev
|
||||
* libexif-dev
|
||||
* Build & install required libraries
|
||||
* pgplot-5.2.2: http://www.astro.caltech.edu/~tjp/pgplot/
|
||||
* gsl-2.4: ftp://ftp.gnu.org/gnu/gsl/gsl-2.4.tar.gz
|
||||
* pgplot plotting library: http://www.astro.caltech.edu/~tjp/pgplot/
|
||||
* gnu scientific library: ftp://ftp.gnu.org/gnu/gsl/
|
||||
* fftw: http://www.fftw.org/download.html
|
||||
* Run `make` on the **strf** folder
|
||||
|
||||
Run notes
|
||||
---------
|
||||
* You will need to set the following environment variables to run **strf**.
|
||||
`ST_COSPAR` COSPAR number
|
||||
`ST_DATADIR` path to **strf** directory
|
||||
`ST_TLEDIR` path to TLE directory
|
||||
`ST_OBSDIR` path to observations directory
|
||||
* `ST_COSPAR` COSPAR number
|
||||
* `ST_DATADIR` path to **strf** directory
|
||||
* `ST_TLEDIR` path to TLE directory
|
||||
* You should install NTP support on the system and configure time/date to automatically
|
||||
sinchronize to time servers.
|
||||
synchronize to time servers.
|
||||
|
||||
Operation
|
||||
---------
|
||||
The main use of **strf** is to acquire IQ data from SDRs and produce time stamped spectrograms with the `rffft` application. `rffft` will perform Fast Fourier Transforms on the input data to a user defined number of spectral channels (via the `-c` command line option), and integrate/average these to a user defined integration length (via the `-t` command line option). The output will be a `*.bin` file which contains a 256 byte human readable header (which can be inspected with `head -c256`), followed by a binary array of floating point numbers representing the power in the spectral channels. This is an example of the 256 byte header:
|
||||
|
||||
HEADER
|
||||
UTC_START 2018-01-12T15:59:13.524
|
||||
FREQ 2244000000.000000 Hz
|
||||
BW 4000000.000000 Hz
|
||||
LENGTH 0.998922 s
|
||||
NCHAN 40000
|
||||
NSUB 60
|
||||
END
|
||||
|
||||
The header keywords are mostly self explanatory, though the `NSUB` keyword specifies that this single `bin` file contains 60 spectra.
|
||||
|
||||
`rffft` can read from a previously recorded IQ recording, but is usually operated in realtime mode by reading IQ data from a so-called named pipe or fifo (first in, first out). Here, the SDR writes IQ data to a fifo (instead of a file), and `rffft` reads the samples from the fifo. Using an **airspy** as an example, it could be configured as follows:
|
||||
|
||||
mkfifo fifo
|
||||
rffft -i fifo -f 101e6 -s 2.5e6 &
|
||||
airspy_rx -a 1 -f 101 -t 2 -r fifo
|
||||
|
||||
Here, we first make the fifo `mkfifo fifo`, then start `rffft` to read from the fifo (`-i` option), with a 101MHz center frequency (`-f` option) and a 2.5MHz sample rate (`-s` option). The `&` puts this command in the background. Finally, we start obtaining IQ data from the **airspy** with `airspy_rx` in the 2.5MHz sampling mode (`-a 1`) at the same frequency (`-f 101`, in MHz), with the 2.5MHz sample rate (`-t 2`) and writing the samples to the fifo (`-r fifo`). Similar scripts can be made with other SDRs, and otherwise with **gnuradio** flow graphs where the output file sink is a fifo.
|
||||
|
||||
The output spectrograms can be viewed and analysed using `rfplot`.
|
||||
|
|
Loading…
Reference in New Issue