Sdrtst
Zur Navigation springen
Zur Suche springen
!!! Wiki Artikel ist noch in Arbeit !!!
Beschreibung von sdrtst
sdrtst ist ein AM/FM/SSB Empfänger für rtl_tcp. Es können beliebig viele parallele Empfangskanäle generiert werden, welche sich innerhalb des Frequenzbereiches (Samplerate) des SDR-Empfängers befinden. Frequenzen, Modulationsarten und weitere Parameter werden in einer Konfigurationsdatei sdrcfg.txt abgelegt, welche jederzeit, also auch im laufenden Betrieb, geändert werden kann.
Übersicht der Parameter
sdrtst -h
AM/FM/SSB Multirx from rtl_tcp (8 bit IQ via tcpip or file) to audio channel(s) 8/16 bit PCM by oe5dxl
-A <soundfilename> or <ip:port> ALAW (G.711) n-channel sound stream/pipe/UDP
-a <number> maximum active rx to limit cpu load, if number is reached,
no more inactive rx will listen to become active
-B <samples> sound samples sent at once. With UDP take care: double number of bytes with 16bit PCM
-c <configfilename> read channels config from file (sdrcfg.txt)
-c <ip:port> read channels config from UDP, if ip=0.0.0.0 accept any ip
-d <Hz> downsample output to Hz
-e enable sending SDR Data hidden in audio channels (tune/afc/rssi..)
-h help
-i <Hz> input sampelrate Hz 1024000 or 2048000..2500000 (2048000)
if >2048000, AM/FM-IF-width will increase proportional
-k keep connection, reconnect lost connection to rtl_tcp server
-L <x.x.x.x:destport> send Level table in UDP to Waterfall Viewers (may be repeatet)
-m <audiochannels> mix up/down all rx channels to 1 or 2 audiochannels (mono/stereo)
for 2 channels the rx audios will be arranged from left to right
-N <x.x.x.x:destport> send Noise (Squelch) table in UDP to Scanner Scripts (may be repeatet)
-O <Hz> moves center freq. away from used band to avoid ADC-DC-offset noise (10000)
-o <mhz> offset for entered frequencies if Converters are used
-p <cmd> <value> send rtl_tcp parameter, ppm, tunergain ...
-r <Hz> output sampelrate Hz for all channels 8000..192000 (16000)
for FM min. 25% more than rx IF-width
-s <soundfilename> or <ip:port> 16bit signed n-channel sound stream/pipe/UDP
-S <soundfilename> or <ip:port> 8bit unsigned n-channel sound stream/pipe/UDP
-T <mhz> Tune manual to center of iq-band (for iq-data from file) (0)
-t <url:port> connect rtl_tcp server (127.0.0.1:1234)
-t <filename:0> read iq-data from file
-v show rssi (dB) and afc (khz)
-w <ms> max stay awake (use CPU) time after squelch close (2000)
-z <ms> sleep time (no cpu) for inactive rx if squelch closed (-z 100)
-Z <ms> same but fast open with no audio quieting for sending
to decoders and not human ears
example: ./sdrtst -k -s /dev/stdout -t 127.0.0.1:1234 -c up.txt -i 2048000 -r 16000 -m 2 -v | sox -t raw -r 16000 -c 2 -b 16 -s - -t alsa
will mix up/down any channels to stereo and play on alsa
./sdrtst -k -s /dev/stdout -t 127.0.0.1:1234 -c up.txt -i 2048000 -r 16000 -v | ./afskmodem -o /dev/stdin -s 16000 -c 2 -M 0 -c 0 -M 1 -c 1
with 2 frequencies in up.txt will listen to PR/APRS on 2 channels
config file: (re-read every some seconds and may be modified any time)
# comment
p <cmd> <value> rtl_tcp parameter like 'p 5 50' ppm, 'p 8 1' autogain on
f <mhz> <AFC-range> <squelch%> <lowpass%> <IF-width> FM Demodulator
a <mhz> 0 <squelch%> <lowpass%> <IF-width> AM Demodulator
u <mhz> <IF-shift> 0 <agc speed> <IF-width> USB Demodulator
l same for LSB
AFC-range in +-kHz, Squelch 0 off, 100 open, 70 may do
audio lowpass in % Nyquist frequ. of output sampelrate, 0 is off
IF-width 3000 6000 12000 24000 48000 96000 192000Hz for low CPU usage
(192000 only with >=2048khz iq-rate), (4th order IIR)
(SSB 8th order IF-IIR), OTHER values with MORE CPU-load (12000 default)
example:
p 5 50
p 8 1
f 438.825 5 75 70 (afc, quelch, audio lowpass, 12khz IF)
f 439.275 0 0 80 20000 (20khz IF, uses more CPU)
u 439.5001 -700 0 0 600 (USB with 600Hz CW-Filter at 800Hz
will generate 3 channel 16bit PCM stream (up to 64 channels with -z or -Z)
use max. 95% of -i span. rtl-stick will be tuned to center of the span
rx in center of band will be +-10khz relocated to avoid ADC-DC offset pseudo
carriers, SSB-only will be relocated 10..210khz to avoid inexact tuning steps
f 100.1 0 0 15 96000 (WFM with "-r 192000 -d 44100" for 1 channnel 44100hz
| Parameter | Beschreibung |
|---|---|
| A <soundfilename> or <ip:port> | ALAW (G.711) n-channel sound stream/pipe/UDP |
| a <number> | maximum active rx to limit cpu load, if number is reached, no more inactive rx will listen to become active |
| B <samples> | sound samples sent at once. With UDP take care: double number of bytes with 16bit PCM |
| c <configfilename> | read channels config from file (sdrcfg.txt) |
| c <ip:port> | read channels config from UDP, if ip=0.0.0.0 accept any ip |
| d <Hz> | downsample output to Hz |
| e | enable sending SDR Data hidden in audio channels (tune/afc/rssi..) |
| h | Hilfetext |
| i <Hz> | input sampelrate Hz 1024000 or 2048000..2500000 (2048000) if >2048000, AM/FM-IF-width will increase proportional |
| k | keep connection, reconnect lost connection to rtl_tcp server |
| L <x.x.x.x:destport> | send Level table in UDP to Waterfall Viewers (may be repeatet) |
| m <audiochannels> | mix up/down all rx channels to 1 or 2 audiochannels (mono/stereo) for 2 channels the rx audios will be arranged from left to right |
| N <x.x.x.x:destport> | send Noise (Squelch) table in UDP to Scanner Scripts (may be repeatet) |
| O <Hz> | moves center freq. away from used band to avoid ADC-DC-offset noise (10000) |
| o <mhz> | offset for entered frequencies if Converters are used |
| p <cmd> <value> | send rtl_tcp parameter, ppm, tunergain ... |
| r <Hz> | output sampelrate Hz for all channels 8000..192000 (16000) for FM min. 25% more than rx IF-width |
| s <soundfilename> or <ip:port> | 16bit signed n-channel sound stream/pipe/UDP |
| S <soundfilename> or <ip:port> | 8bit unsigned n-channel sound stream/pipe/UDP |
| T <mhz> | Tune manual to center of iq-band (for iq-data from file) (0) |
| t <url:port> | connect rtl_tcp server (127.0.0.1:1234) |
| t <filename:0> | read iq-data from file |
| v | show rssi (dB) and afc (khz) |
| w <ms> | max stay awake (use CPU) time after squelch close (2000) |
| z <ms> | sleep time (no cpu) for inactive rx if squelch closed (-z 100) |
| Z <ms> | same but fast open with no audio quieting for sending to decoders and not human ears |