TBS6981 » History » Revision 5
Revision 4 (Dave Chapman, 2012-08-27 15:57) → Revision 5/7 (Adam Sutton, 2013-09-12 22:29)
h1. TBS6981
This is a reasonable (price v performance) dual S2 tuner. used by [[Adam]] used one for some time when he first started out with TVH, however he's now upgraded to his TVH server. It is a [[TBS6985]] that was donated by TBS.
PCIe card providing dual DVB-S2 tuners. Unlike some other cards [[TeVii-S480]] it's a native PCIe interface and not a PCIe to USB bridge.
h2. Driver Support
h3. Official TBS driver
TBS provide official (out of tree) kernel drivers which can be downloaded from "here":www.tbsdtv.com/download/#tbs6981. These are a bit of a pain However the one issue I find is that the build system defaults to build as they are bundled with a massive set of including ALL TBS's drivers, most of which you don't need, but are enabled by default. is a LOT. And so it can take more than an hour to compile everything.
The following instructions give a simple set of instructions, that at To simplify the time of writing, provide process I created a quick and easy way config file to get just the 6981 only compile those modules that are required, I've attached it to this article.
h3. Building/Installing driver compiled.
<pre>
1. Download from "here":http://www.tbsdtv.com/download/#tbs6981
2. mkdir tbs; cd tbs; unzip DOWNLOAD.zip
3. tar xf linux-tbs-drivers.tar.bz2
4. find -type d -exec chmod 755 {} \;
5. chmod 755 linux-tbs-drivers/v4l/scripts/*
6. find linux-tbs-drivers -name “*.sh” -exec chmod 755 {} \;
7. cd linux-tbs-drivers/
8. ./v4l/tbs-x86_64.sh
9. Copy attached config to ./v4l/.config
10. make
11. mkdir tbs
12. find -name "*.ko" -exec cp {} tbs/ \;
13. tar jcf tbs-modules.tar.bz2 tbs
14. sudo tar -C /lib/modules/$(uname -r) -xf tbs-modules.tar.bz2
15. sudo depmod -a
</pre>
Note: you can combine steps 11-14, it's just I build on diff machine to install.
Once installed you will need to reboot due to the way the driver is integrated.
h3. Unofficial OSS driver
Recently there have been lots of problems with this card in relation to use with TVH. After lots of investigations we have concluded that unlike TBS's assertions this is in fact nothing to do with Tvheadend. It is in fact down to some very shoddy drivers that fail to protect against various shared bus accesses. This often manifests as one or other tuner completely failing.
If you are bored and fancy reading more details, I kept a short blog to cover the email thread between TBS and the Tvheadend Team. http://tvheadend.wordpress.com/2013/07/11/tbs-6981-debacle/
In response to all this Luis Alves decided to reverse engineer the 6981 driver (which may also work for the [[TBS6984]], though there have been varying degrees of success there). You can find more details about his driver on his git hub page. https://github.com/ljalves/linux_media/wiki.
This is a reasonable (price v performance) dual S2 tuner. used by [[Adam]] used one for some time when he first started out with TVH, however he's now upgraded to his TVH server. It is a [[TBS6985]] that was donated by TBS.
PCIe card providing dual DVB-S2 tuners. Unlike some other cards [[TeVii-S480]] it's a native PCIe interface and not a PCIe to USB bridge.
h2. Driver Support
h3. Official TBS driver
TBS provide official (out of tree) kernel drivers which can be downloaded from "here":www.tbsdtv.com/download/#tbs6981. These are a bit of a pain However the one issue I find is that the build system defaults to build as they are bundled with a massive set of including ALL TBS's drivers, most of which you don't need, but are enabled by default. is a LOT. And so it can take more than an hour to compile everything.
The following instructions give a simple set of instructions, that at To simplify the time of writing, provide process I created a quick and easy way config file to get just the 6981 only compile those modules that are required, I've attached it to this article.
h3. Building/Installing driver compiled.
<pre>
1. Download from "here":http://www.tbsdtv.com/download/#tbs6981
2. mkdir tbs; cd tbs; unzip DOWNLOAD.zip
3. tar xf linux-tbs-drivers.tar.bz2
4. find -type d -exec chmod 755 {} \;
5. chmod 755 linux-tbs-drivers/v4l/scripts/*
6. find linux-tbs-drivers -name “*.sh” -exec chmod 755 {} \;
7. cd linux-tbs-drivers/
8. ./v4l/tbs-x86_64.sh
9. Copy attached config to ./v4l/.config
10. make
11. mkdir tbs
12. find -name "*.ko" -exec cp {} tbs/ \;
13. tar jcf tbs-modules.tar.bz2 tbs
14. sudo tar -C /lib/modules/$(uname -r) -xf tbs-modules.tar.bz2
15. sudo depmod -a
</pre>
Note: you can combine steps 11-14, it's just I build on diff machine to install.
Once installed you will need to reboot due to the way the driver is integrated.
h3. Unofficial OSS driver
Recently there have been lots of problems with this card in relation to use with TVH. After lots of investigations we have concluded that unlike TBS's assertions this is in fact nothing to do with Tvheadend. It is in fact down to some very shoddy drivers that fail to protect against various shared bus accesses. This often manifests as one or other tuner completely failing.
If you are bored and fancy reading more details, I kept a short blog to cover the email thread between TBS and the Tvheadend Team. http://tvheadend.wordpress.com/2013/07/11/tbs-6981-debacle/
In response to all this Luis Alves decided to reverse engineer the 6981 driver (which may also work for the [[TBS6984]], though there have been varying degrees of success there). You can find more details about his driver on his git hub page. https://github.com/ljalves/linux_media/wiki.