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.