Sdrtst

Aus DXL-Wiki
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 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


Detaillierte Erläuterung der Parameter

Beispiele