DVB Driver Installation

    Installation drivers for DigitalDevices and TBS DVB adapters

    DigitalDevices Driver Installation

    Prepare system

    To install drivers needed root privileges: sudo -s

    Install system utilities to build drivers from the source code:

    apt-get install build-essential \
        patchutils \
        libproc-processtable-perl \
        linux-headers-`uname –r` \
        git
    

    Remove old media drivers:

    rm -rf /lib/modules/$(uname -r)/extra
    rm -rf /lib/modules/$(uname -r)/kernel/drivers/media
    rm -rf /lib/modules/$(uname -r)/kernel/drivers/staging/media
    

    Disable auto update in Ubuntu 16.04

    systemctl disable apt-daily.service
    systemctl disable apt-daily.timer
    

    Install

    Download latest driver from the official repository:

    git clone --depth=1 https://github.com/DigitalDevices/dddvb /usr/src/dddvb
    cd /usr/src/dddvb
    

    By the default driver has limit only for 8 DVB adapters. Remove this limit before build drivers:

    sed -i \
        -e 's/^#if defined(CONFIG_DVB_MAX_ADAPTERS).*$/#if 0/g' \
        dvb-core/dvbdev.h
    

    If you have more than 64 adapters (for example 10 MaxS8) need to increase limit in the driver:

    sed -i \
        -e 's/DVB_MAX_ADAPTERS 64/DVB_MAX_ADAPTERS 256/g' \
        dvb-core/dvbdev.h
    
    sed -i \
        -e 's/^\(#define MAX_DVB_MINORS*\).*/\1 512/g' \
        dvb-core/dvbdev.c
    

    Build drivers and install it:

    make
    make install
    

    Create a list of module dependencies:

    mkdir -p /etc/depmod.d
    echo 'search extra updates built-in' >/etc/depmod.d/extra.conf
    depmod -a
    

    Create configuration file for MaxS8 DVB adapters:
    echo 'options ddbridge fmode=X' >/etc/modprobe.d/ddbridge.conf
    Replacing X with the mode number.

    Modes for Max S8 :  
      
    fmode=0  
    4 tuner mode ( Internal multiswitch disabled )  
      
    fmode=1  
    Quad LNB / normal outputs of multiswitches  
      
    fmode=2  
    Quattro - LNB / cascade outputs of multiswitches  
      
    fmode=3  
    Unicable LNB or JESS / Unicabel output of the multiswitch  
    

    To launch installed drivers restart your system:

    shutdown -r now
    

    After reboot check adapters:

    ls /dev/dvb
    

    Should be listed all adapters installed in the system:

    adapter0 adapter1 adapter2 adapter3 adapter4 adapter5 adapter6 adapter7
    

    Troubleshooting

    Signal is fine, but channels don't work

    Check dmesg output for i2c errors:

    dmesg | grep i2c
    

    if you see messages like i2c_write error then turn off MSI (Message Signaled Interrupts) in the driver:

    Open /etc/modprobe.d/ddbridge.conf in any text editor Find options ddbridge … line After the ddbridge append msi=0 option. For example: options ddbridge msi=0 fmode=1 If file does not exists, then create it and write: options ddbridge msi=0

    DVB adapters are not available

    If ls /dev/dvb shows error: ls: cannot access /dev/dvb: No such file or directory With lspci you may check is adapters available in the system:

    lspci | grep Multimedia
    

    If adapters connected to the PCIe properly you will see listing of the PCIe adapters. For example:

    01:00.0 Multimedia controller: Digital Devices GmbH Cine V7
    

    Check system boot log for errors:

    dmesg | grep -i dvb
    

    You may send this log to the adapter vendor to find a solution.

    Drivers has been installed some time ago and all worked fine before server reboot

    Probably Linux kernel has been updated. After Linux kernel update drivers should be reinstalled.

    TBS Driver Installation

    Prepare system

    To install drivers needed root privileges: sudo -s

    Install system utilities to build drivers from the source code:

    apt-get install build-essential \
        patchutils \
        libproc-processtable-perl \
        linux-headers-`uname –r` \
        git
    

    Remove old media drivers:

    rm -rf /lib/modules/$(uname -r)/extra
    rm -rf /lib/modules/$(uname -r)/kernel/drivers/media
    rm -rf /lib/modules/$(uname -r)/kernel/drivers/staging/media
    

    Disable auto update in Ubuntu 16.04

    systemctl disable apt-daily.service
    systemctl disable apt-daily.timer
    

    Install

    Downloading and building:

    cd /usr/src
    git clone https://github.com/tbsdtv/media_build.git
    git clone --depth=1 https://github.com/tbsdtv/linux_media.git -b latest ./media
    cd media_build
    make dir DIR=../media
    make allyesconfig
    make -j4
    sudo make install
    

    Install firmware for DVB adapters:

    cd /usr/src
    wget http://www.tbsdtv.com/download/document/linux/tbs-tuner-firmwares_v1.0.tar.bz2
    sudo tar jxvf tbs-tuner-firmwares_v1.0.tar.bz2 -C /lib/firmware/
    

    To launch installed drivers restart your system:

    shutdown -r now
    

    After reboot check adapters:

    ls /dev/dvb
    

    Should be listed all adapters installed in the system:

    adapter0 adapter1 adapter2 adapter3 adapter4 adapter5 adapter6 adapter7
    

    Troubleshooting

    DVB adapters are not available

    If ls /dev/dvb shows error: ls: cannot access /dev/dvb: No such file or directory With lspci you may check is adapters available in the system:

    lspci | grep Multimedia
    

    If adapters connected to the PCIe properly you will see listing of the PCIe adapters. For example:

    01:00.0 Multimedia controller: TBS Technologies DVB-S2 4 Tuner PCIe Card
    01:00.0 Multimedia controller: Digital Devices GmbH Cine V7
    

    Check system boot log for errors:

    dmesg | grep -i dvb
    

    You may send this log to the adapter vendor to find a solution.

    Drivers has been installed some time ago and all worked fine before server reboot

    Probably Linux kernel has been updated. After Linux kernel update drivers should be reinstalled.