DVB-S/S2/S2X

From Sundtek Wiki
Jump to navigation Jump to search

Diseqc

Those are for 4x1 diseqc
E0 10 38 F0 = 1st Port
E0 10 38 F4 = 2nd Port
E0 10 38 F8 = 3rd Port
E0 10 38 FC = 4th Port

example:
/opt/bin/mediaclient -V V
/opt/bin/mediaclient --diseqc="E0 10 38 F0"

https://sundtek.de/wiki/index.php?title=Mediaclient#DVB-S.2FS2.2FS2X_Tuning

please note that the tuner by default will cut off the LNB voltage after 15 seconds inactivity, this might reset the diseqc port if no voltage is applied. To avoid that you can open a second terminal and just leave /opt/bin/mediaclient --readsignal=0 -d /dev/dvb/adapter0/frontend0 --band universal running.

You can adjust the timeout settings in /etc/sundtek.conf (by default it doesn't exist and default values are loaded from the driver), you can create it and add a parameter standby_timeout=n Where n is the timeout in seconds.


DAB/DAB+

DAB/DAB+ channels can be found on satellite 7.0 east.

Frequency:12572 MHz
Symbolrate: 10215000
Modulation: DVB-S2/QPSK
Polarization: Vertical

Locking on Transponder:

/opt/bin/mediaclient -m DVBS2 -f 12572000 -M QPSK -S 10215000 -V V -E 3/4

FileOutput

capturing and replaying the stream:

/opt/bin/mediaclient --cat /dev/dvb/adapter0/dvr0 | ../eti-tools/fedi2eti 101 239.16.242.17 60017 | ./odr-dabmod -C doc/example.ini > test.iq

hackrf_transfer -t test.iq -f 180064000 -x 47 -a 1 -s 2048000 -b 1750000

example.ini (parts of it):

[output]
; choose output: possible values: uhd, file, zmq, soapysdr
output=file
[fileoutput]
; Two output formats are supported: In the default mode,
; the file output writes I/Q float values (i.e. complex
; float) to the file. The I and Q samples can take values up
; to 810000 in absolute magnitude with gainmode FIX. With
; gainmode VAR and FIX, they should never exceed 50000.
;format=complexf
;
; The complexf_normalised format applies a compensation factor to the complexf
; output to bring the range of the I and Q components to [-1.0 .. 1.0]. The
; digital_gain is still applied on top of that normalisation.
;format=complexf_normalised
;
; When the format is set to s8, the output writes I/Q 8-bit
; signed integers, where the magnitude is multiplied by 128/50000
; effectively mapping the gainmode VAR range of -50000 -- 50000
; to -128 -- 128. For other gainmodes, use the digital_gain setting
; to make sure you don't create clipping.
;
; The format u8 is the same as s8, except that the values are mapped
; between 0 and 255. Use u8 for welle.io, qt-dab or other tools.
;
; Also supported is s16, with system endianness (little endian on x86_64 and ARM)
format=s8

; The output file:
filename=/dev/stdout

show_metadata=0

Soapy Output

/opt/bin/mediaclient --cat /dev/dvb/adapter0/dvr0 | ../eti-tools/fedi2eti 101 239.16.242.17 60017 | ./odr-dabmod -C doc/example.ini


[soapyoutput]
; These options are given to the SoapySDR library:
device=driver=hackrf
;master_clock_rate=32768000
txgain=47
frequency=180064000

Soapy Config

Full Sample configuration:

; Sample configuration file for ODR-DabMod

[remotecontrol]
; The RC feature is described in detail in doc/README-RC.md

; enable the telnet remote control on localhost:2121
telnet=1
telnetport=2121

; Enable zmq remote control.
zmqctrl=1
zmqctrlendpoint=tcp://127.0.0.1:9400
; accepted formats according to man zmq_bind, i.e.
; tcp://<interface>:<port>, e.g. tcp://lo:9400
; and tcp://<ipaddress>:<port>

[log]
; Write to a logfile or to syslog.
; Setting filename to stderr is not necessary, as all messages are
; automatically written to stderr.
syslog=0
filelog=0
filename=odr-dabmod.log

[input]
; A file or fifo input is using transport=file
transport=file
source=/dev/stdin

; When the end of file is reached, it is possible to rewind it
loop=0

; ETI-over-TCP example:
;transport=tcp
;source=localhost:9200

; When recieving data using ZeroMQ, the source is the URI to be used
;transport=zeromq
;source=tcp://localhost:9100
; The option max_frames_queued defines the maximum number of ETI frames
; (frame duration: 24ms) that can be in the input queue
;max_frames_queued=100

; EDI input.
; Listen for EDI data on a given UDP port, unicast or multicast.
;transport=edi
;
; EDI over TCP:
;
; Connect to TCP server on a given host
;source=tcp://localhost:9201
;
; EDI over UDP:
;
; Supported syntax for the source setting:
;  Bind to default interface and receive data from port 12000
;source=udp://:12000
;
;  Bind to interface with IP:192.168.1.22 and receive data from port 12000
;source=udp://192.168.1.22:12000
;
;  Bind to interface with IP:192.168.1.22 and join multicast group:
;  239.100.101.22 and receive data from port 12000
;source=udp://192.168.1.22@239.100.101.22:12000
;
;  Bind to default interface (which routes to multicast) and join multicast
;  group: 239.100.101.22 and receive data from port 12000
;source=udp://@239.100.101.22:12000
;
; Maximum delay in milliseconds that the EDI input is willing to wait
; before it timeouts
;edi_max_delay=240
; This EDI implementation does not support EDI Packet Resend


[modulator]
;   Mode 'fix' uses a fixed factor and is really not recommended. It is more
; useful on an academic perspective for people trying to understand the DAB
; modulation.
;
;   Mode 'max' is the normalization of every OFDM symbol. No overshoot, no
; truncating, but varying output power (around 3dB) which might not be the best
; for some power amplifier. The output samples are limited to a magnitude
; of 32768.
;
;   Mode 'var' uses the method specified in ETSI 300 798 Clause 5.3. This method
; normalizes to 4 times the standard deviation for an approximation of the RMS
; power. So around 6/100000 samples will be truncated and will introduce some
; really minor distortion. But this mode also maximizes the output power. This
; is the gain mode recommended for real world operation as it is based on a DAB
; standard; the only difference is that ODR-DabMod internally calculates this with
; 32-bit floats instead of 8 bits.
gainmode=var
;
;   In mode var, you can choose to normalise the samples to something else than
; 4 times the standard deviation.
;normalise_variance=4

; Transmission mode
; If not defined, use Transmission Mode 1
;mode=1

; The digital gain is a value that is multiplied to each sample. It is used
; to tune the chain to make sure that no non-linearities appear up to the
; USRP daughterboard programmable gain amplifier (PGA).
; If there is clipping, the spectral quality of the signal will quickly deteriorate,
; and wide-band noise will be generated.
;
; Be aware that there is a dependency with resampling.
digital_gain=0.8

; Output sample rate. Values other than 2048000 enable
; resampling.
; Warning! digital_gain settings are different if resampling
; is enabled or not !
rate=2048000

; (DEPRECATED) CIC equaliser for USRP1 and USRP2
; These USRPs have an upsampler in FPGA that does not have a flat frequency
; response. The CIC equaliser compensates this. This setting is specific to
; the USRP1 and USRP2 devices.
; Set to 0 to disable CicEqualiser
;dac_clk_rate=0

; The USRP1 does not have flexible clocking, you will need
;rate=3200000
; and
;dac_clk_rate=128000000

; When nonzero, overlap ofdmwindowing samples from each OFDM symbol
; onto the previous and next symbol, using a raised cosine window function.
; This has the effect of smoothing the transition from one symbol to the next,
; which improves spectrum shape.
; In Transmission Mode I, every data symbol is composed of 2552 samples.
;ofdmwindowing=10

; Settings for crest factor reduction. Statistics for ratio of
; samples that were clipped are available through the RC.
[cfr]
enable=0

; At what amplitude the signal should be clipped
clip=50.0

; How much to clip the error signal used to compensate the effect
; of clipping
error_clip=0.1

[firfilter]
; The FIR Filter can be used to create a better spectral quality.
enabled=1

; The filter taps can be calculated with the python script
; doc/fir-filter/generate-filter.py
; If filtertapsfile is not given, the default taps are used.
;filtertapsfile=simple_taps.txt

[poly]
;Predistortion using memoryless polynom, see dpd/ folder for more info
enabled=0
polycoeffile=polyCoefs

[output]
; choose output: possible values: uhd, file, zmq, soapysdr
output=soapysdr

[fileoutput]
; Two output formats are supported: In the default mode,
; the file output writes I/Q float values (i.e. complex
; float) to the file. The I and Q samples can take values up
; to 810000 in absolute magnitude with gainmode FIX. With
; gainmode VAR and FIX, they should never exceed 50000.
;format=complexf
;
; The complexf_normalised format applies a compensation factor to the complexf
; output to bring the range of the I and Q components to [-1.0 .. 1.0]. The
; digital_gain is still applied on top of that normalisation.
;format=complexf_normalised
;
; When the format is set to s8, the output writes I/Q 8-bit
; signed integers, where the magnitude is multiplied by 128/50000
; effectively mapping the gainmode VAR range of -50000 -- 50000
; to -128 -- 128. For other gainmodes, use the digital_gain setting
; to make sure you don't create clipping.
;
; The format u8 is the same as s8, except that the values are mapped
; between 0 and 255. Use u8 for welle.io, qt-dab or other tools.
;
; Also supported is s16, with system endianness (little endian on x86_64 and ARM)
format=s8

; The output file:
filename=/dev/stdout

show_metadata=0

[uhdoutput]
; The UHD output can be directly used with the Ettus USRP devices
;
; You have to set master_clock_rate to a multiple of the
; sample_rate. Ideally, it should be
;   master_clock_rate = 4 * sample_rate
; or even a higher factor.
;
; Settings for the B200:
device=
master_clock_rate=32768000
type=b200
txgain=40
; The B200 needs larger gains (up to 89dB) but,
; "Gain settings are application specific, but it is recommended that users
; consider using at least half of the available gain to get reasonable dynamic
; range."
;    From the B200 User Manual
;    http://files.ettus.com/uhd_docs/manual/html/usrp_b200.html
;
; More information and measurements available on:
; http://wiki.opendigitalradio.org/index.php/USRP_B200_Measurements

; You can set what TX and RX antennas to use. This will depend on the
; USRP model you are using.
;tx_antenna=
;rx_antenna=RX2


; Settings for a USRP B100:
;device=
; you can put additional UHD device settings here
;master_clock_rate=32768000
;type=b100
;txgain=2.0
; Try first with small gain values
; Also set rate to 2048000


; For the USRP1
;device=
;type=usrp1
; the usrp1 can have two daughterboards, the subdevice parameter allows you
; to choose which one to use
;subdevice=A:0
; The USRP1 doesn't support master_clock_rate, you need to enable resampling


; You must specify either frequency or channel, but not both.
;frequency=234208000
channel=13C

; Override automatic analog frontend bandwidth calculation. Units: Hz
;bandwidth=2000000

; Some USRP boards/frontends support setting an LO offset that has the
; effect of shifting DC out of the signal bandwidth. This should also
; improve IQ imbalance effects, because the mirror will centered on another
; frequency (it should be on frequency + 2*lo_offset)
;
; The value can be negative, and its absolute value must be smaller than
; master_clock_rate/2.
;lo_offset=2048000

; The reference clock to use. The gpsdo is the ODR LEA-M8F board, the
; official Ettus GPSDO is selected with gpsdo-ettus
; possible values : internal, external, MIMO, gpsdo, gpsdo-ettus
refclk_source=internal

; The reference one pulse-per second to use
; possible values : none, external, MIMO, gpsdo
pps_source=none

; Behaviour when external clock reference lock lost
; possible values: ignore, crash
behaviour_refclk_lock_lost=ignore

; The maximum accepted holdover time for the gpsdo once it
; started operating. Initial check interval for GPSDO lock
; at startup is always 180s.
; Valid only if the refclk and pps_source are set to gpsdo.
; Units: seconds
; Set to 0 to disable holdover check
; default value: 0
max_gps_holdover_time=600

; Enable the TCP server to communicate TX and RX feedback for
; digital predistortion.
; Set to 0 to disable
;dpd_port=50055

; section defining ZeroMQ output properties
[zmqoutput]

; on which port to listen for connections
; please see the Transports section in man zmq
; for more information regarding the syntax
listen=tcp://*:54001

; what ZMQ socket type to use. Valid values: PUB, REP
; Please see man zmq_socket for documentation
socket_type=pub

; section defining the SoapySDR output settings.
[soapyoutput]
; These options are given to the SoapySDR library:
device=driver=hackrf
;master_clock_rate=32768000
txgain=61
; 47
frequency=180064000
; channel=5D
; 13C
;lo_offset=2048000

; Override automatic analog frontend bandwidth calculation. Units: Hz
;bandwidth=2000000

; You can set what TX antenna to use. This will depend on the
; SDR device you are using.
;tx_antenna=

; Enable the TCP server to communicate TX and RX feedback for
; digital predistortion.
; Set to 0 to disable
;dpd_port=50055

; Used for running single-frequency networks
[delaymanagement]
; Enable handling of timestamps for SFN
synchronous=0

; Whether to mute the TX when incoming frames have no timestamp
mutenotimestamps=0

; This offset is added to the TIST, and the sum defines the
; TX time of the transmission frame. It can by changed at runtime
; through the remote control.
offset=0.002

; The way the timestamps are interpreted in ODR-DabMod up to v1.1.0 was not
; specified, and you should not assume that two different versions will
; transmit synchronously given the same settings. Always run SFNs with
; identical versions!
; Furthermore, when combining ODR-DabMod with third-party modulators, always
; measure!


[tii]
; If these options are set, TII transmission is enabled.
; DAB modes I and II are supported, and must be set explicitly in
; this file. Reading DAB mode from ETI is not supported.
enable=0
; comb is also known as sub-identifier.
comb=1
; pattern is also known as main-identifier. If you run several transmitters
; in SFN, it is better to use the same pattern for all, and vary the comb.
; Otherwise identification of the transmitters may be more difficult.
pattern=11
; There are two variants of TII being used. The old variant that uses the wrong
; phase on the second carrier in each carrier pairs and is therefore not
; conforming to the specification. Modern analysers can decode both variants,
; while others, like the Philips DAB752 and the VAD v2 monitor are known to
; decode only the old non-conforming variant.
old_variant=0

Further Links