This page describes the device driver and the device window for V4L (video for linux) based DVB-S2 receiver cards. The driver has been tested with a TurboSight TBS6981 dual receiver card, it may work also with other cards based on V4L but this cannot be guaranteed.
The sat-nms software operates this card as a receive quality measurement device only. No demuxer, or video/audio decoder is included with the software used for this card.
ATTENTION
TurboSight TBS6981 cards require a 64bit Linux system and a special kernel module to be installed. The cards will not work on a "standard" VLC/M&C system.
Device window pages
The following table shows which device window pages are available with this individual device type. Tool-bar functions not mentioned here are described at the general description of device windows .
--- Contains the receive settings like frequency and symbol rate.
--- Shows the actual demodulator state including the figures of receive level and quality.
--- The faults page.
--- The device info page.
--- The maintenance page. The configuration parameters described below are set at this page.Configuration parameters
At the maintenance page of the device window there are a couple of configuration parameters which must be set to make the software talk to this device.
| parameter | description |
|---|---|
| address | Leave this field empty, the protocol address is not used by the device driver. Each individual demodulator unit is addressed by the interface address specified in the device configuration screen (See 'installation' at the end of this page). |
| 22kHz | Makes the device apply a 22 kHz tone to the LNB power when set to ON. |
| 22kHzAuto | If set to ON, the driver switches the 22 kHz tone depending on the receive frequency. Frequencies above the 'bandEdge' value cause the 22kHz tone to be switched on, lower frequencies switch the tone off. The 22kHzAuto mode overwrites the the '22kHz' setting described above. |
| lnbPower | Selects if the device shall apply LNB power to the input. |
| lnbVoltage | Selects the LNB power supply voltage (13V/18V). This switches the polarization (13V=Vertical) with some LNBs. |
| lnbPolSwitch | If you set this parameter to ON, the 'lnbVoltage' parameter above becomes read-only and the LNB voltage is controlled though the 'polarization' parameter of the device driver (only makes sense with lnbPower=ON). |
| loFreqHigh | The LO frequency for the high frequency band. The software sets the appropriate LO frequency every time before it changes the receive frequency. |
| loFreqLow | The LO frequency for the low frequency band. The software sets the appropriate LO frequency every time before it changes the receive frequency. |
| bandEdge | The frequency where the software switches the LO frequencies. |
| deviceComment | An optional text entered here appears as an addition to the tooltip which is shown while the mouse is placed over a device icon in the GUI. The "\n" character sequence is translated into a newline character, splitting the text into multiple lines. |
Installation
The TBS6981 is a dual DVB-S2 receiver, hence there are two instances of the driver to be configured for each card.
When configuring a V4L-DVBS2-Demod device in the device configuration screen, you have to specify the card's adapter/frontend number in the linux /dev/dvb directory tree instead of the device's interface name. The address consists of 2 digits "x.y" , where:
Example: "1.0" specifies the first frontend on the second card in the computer.
A TBS6981 card appears as two adapters with one frontend each, thus giving the addresses "0.0" , "1.0" for the first card and "2.0" , "3.0" for the second card in the system.
Variables defined by this device driver
| name | type | flags | range |
|---|---|---|---|
| info.driver | TEXT | R/O | StringRange R/O |
| lowLevel.cmd | TEXT | StringRange | |
| lowLevel.reply | TEXT | R/O | StringRange R/O |
| faults.99 | ALARM | R/O | AlarmFlagRange R/O (Communication) |
| faults.commstat | TEXT | R/O | StringRange R/O |
| info.type | TEXT | R/O | StringRange R/O |
| info.port | TEXT | R/O | StringRange R/O |
| info.frame | TEXT | R/O | StringRange R/O |
| info.serialno | TEXT | R/O | StringRange R/O |
| info.cardid | TEXT | R/O | StringRange R/O |
| info.version | TEXT | R/O | StringRange R/O |
| config.22kHz | CHOICE | SAVE SETUP | EnumRange (OFF ON) |
| config.22kHzAuto | CHOICE | SAVE SETUP | EnumRange (OFF ON) |
| config.lnbPower | CHOICE | SAVE SETUP | EnumRange (OFF ON) |
| config.lnbVoltage | CHOICE | SAVE SETUP | EnumRange (13V 18V) |
| config.lnbPolSwitch | CHOICE | SAVE SETUP | EnumRange (OFF ON) |
| config.loFreqHigh | INTEGER | SAVE SETUP | IntegerRange (0 .. 0) |
| config.loFreqLow | INTEGER | SAVE SETUP | IntegerRange (0 .. 0) |
| config.bandEdge | INTEGER | SAVE SETUP | IntegerRange (0 .. 0) |
| config.deviceComment | TEXT | SAVE SETUP | StringRange |
| dvbmode | CHOICE | SAVE | EnumRange (DVBS DVBS2) |
| frequency | FLOAT | SAVE | DoubleRange (0.000 .. 0.000) |
| symbolRate | FLOAT | SAVE | DoubleRange (0.000 .. 0.000) |
| modulation | CHOICE | SAVE | EnumRange (QPSK 8PSK 16APSK QAM16 QAM32 QAM64 QAM128 QAM256 QAMAUTO VSB8 VSB16) |
| fec | CHOICE | SAVE | EnumRange (AUTO 1/2 2/3 3/4 3/5 4/5 5/6 6/7 7/8 8/9 9/10 NONE) |
| polarization | CHOICE | SAVE | EnumRange (H V) |
| rolloff | CHOICE | SAVE | EnumRange (AUTO 20% 25% 35%) |
| flags.signal | BOOLEAN | R/O | BooleanRange R/O (true false) |
| flags.carrier | BOOLEAN | R/O | BooleanRange R/O (true false) |
| flags.feclock | BOOLEAN | R/O | BooleanRange R/O (true false) |
| flags.sync | BOOLEAN | R/O | BooleanRange R/O (true false) |
| flags.rxlock | BOOLEAN | R/O | BooleanRange R/O (true false) |
| state.ebno | FLOAT | R/O | DoubleRange R/O (0.0 .. 0.0) |
| state.level | FLOAT | R/O | DoubleRange R/O (0 .. 0) |
| state.ber | FLOAT | R/O | DoubleRange R/O (0.0E+00 .. 0.0E+00) |
| internal.f | FLOAT | R/O | DoubleRange R/O (0.000 .. 0.000) |
| internal.h | INTEGER | R/O | IntegerRange R/O (0 .. 0) |
| internal.t | TEXT | R/O | StringRange R/O |
| internal.v | TEXT | R/O | StringRange R/O |
| internal.stat | INTEGER | R/O | IntegerRange R/O (0 .. 0) |
| faults.01 | ALARM | R/O | AlarmFlagRange R/O (RX Lock) |