From LinuxTVWiki
Revision as of 20:13, 9 November 2014 by Mythological (talk | contribs) (Added note about old-style vs. new-style interrupts.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

TBS6925 DVB-S2 PCIe Cards is a professional satellite PC TV card, which supports CCM, VCM, ACM mode

image TBS6925

and 16 APSK & 32APSK Demodulator, It is the only PC card with flexible DVB S2 MIS transmission technology. It captures up to 190 Mbit/s channel bit rate. Linux driver supports all kernels up to 2.6.38.


  • 1X PCI express slot
  • DVB S2 MIS Reception with VCM/ACM
  • Multiple Transport Stream Receiving
  • Generic Stream capture
  • Up to 190 Mbit/s channel bit rate capture
  • symbol rates from 200Ksps to 45Msps
  • The card has two F connectors, one Input and one Loop connector.

Components Used

Other Images

Active MIS Satellite Transponders on TBS6925




$lspci -vvvnn
02:00.0 Multimedia controller: Philips Semiconductors SAA7160 (rev 03)
Subsystem: Device 6925:0001
Flags: bus master, fast devsel, latency 0, IRQ 18
Memory at fdf00000 (64-bit, non-prefetchable) [size=1M]
Capabilities: <access denied>
Kernel driver in use: SAA716x TBS
Kernel modules: saa716x_tbs-dvb

Making it work

I.1 extract linux-tbs-drivers.tar.bz2 archive:

  1. tar xjvf linux-tbs-drivers.tar.bz2

I.2 go to driver package directory:

  1. cd linux-tbs-drivers

I.3 select build arch 32bit or 64bit

  1. ./v4l/tbs-x86.sh


  1. ./v4l/tbs-x86_64.sh

I.4 build and install the driver:

  1. make && make install

I.5 reboot in order to load the newly installed driver:

  1. shutdown -r now

1.6 By default the TBS drivers will use the old-style APIC controllers, which can result in multiple devices using the same IRQ, which can sometimes cause system instability. To check whether this is the case, run

  1. cat /proc/interrupts

and note whether the "SAA716x Core" entry is shared with any other devices. If so, or if you simply wish to use the newer style interrupts in order to gain better reliability, see this article:

Do you run one or more TBS PCIe cards under Linux? Check your IRQs…

Unfortunately you will need to search for this because the article is hosted on a W*rdpress site which is blocked by the Wiki's spam filters, even though this is simply a blog post. Or you can try freetoairamerica(dot)w*rdpress(dot)com/2014/11/08/do-you-run-one-or-more-tbs-pcie-cards-under-linux-check-your-irqs/ (replace * with "o").

Open Source Driver


See README to install.

Sample Kernel Output

[    9.816984] HDA Intel 0000:01:05.1: PCI INT B -> GSI 19 (level, low) -> IRQ 19
[    9.817003] HDA Intel 0000:01:05.1: setting latency timer to 64
[    9.826535] SAA716x TBS 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    9.826542] SAA716x TBS 0000:02:00.0: setting latency timer to 64
[    9.840536] DVB: registering new adapter (SAA716x dvb adapter)
[    9.919588] EXT4-fs (sdb1): re-mounted. Opts: errors=remount-ro
[   10.251833] type=1400 audit(1322097014.249:5): apparmor="STATUS" operation="profile_load" 
name="/usr  /share/gdm/guest-session/Xsession" pid=752 comm="apparmor_parser"
[   10.253902] type=1400 audit(1322097014.253:6): apparmor="STATUS" operation="profile_replace" 
name="/sbin/dhclient" pid=753 comm="apparmor_parser"
[   10.254176] type=1400 audit(1322097014.253:7): apparmor="STATUS" operation="profile_replace" 
name="/usr/lib/NetworkManager/nm-dhcp-client.action" pid=753 comm="apparmor_parser"
[   10.254347] type=1400 audit(1322097014.253:8): apparmor="STATUS" operation="profile_replace" 
name="/usr/lib/connman/scripts/dhclient-script" pid=753 comm="apparmor_parser"
[   10.257632] type=1400 audit(1322097014.257:9): apparmor="STATUS" operation="profile_load" name="/usr
/bin/evince" pid=754 comm="apparmor_parser"
[   10.257649] type=1400 audit(1322097014.257:10): apparmor="STATUS" operation="profile_load" name="/usr
/lib/cups/backend/cups-pdf" pid=756 comm="apparmor_parser"
[   10.257979] type=1400 audit(1322097014.257:11): apparmor="STATUS" operation="profile_load" 
name="/usr /sbin/cupsd" pid=756 comm="apparmor_parser"
[   10.493952] stb6100_attach: Attaching STB6100 
[   10.496814] TurboSight TBS6925 DVB-S2 card MAC=00:22:ab:e0:21:50
[   10.760745] r8169 0000:04:00.0: eth0: link down
[   10.760756] r8169 0000:04:00.0: eth0: link down
[   10.760971] ADDRCONF(NETDEV_UP): eth0: link is not ready
[   10.928071] DVB: registering adapter 0 frontend 0 (STV090x Multistandard)...
[   11.112646] ppdev: user-space parallel port driver
[   12.338625] r8169 0000:04:00.0: eth0: link up


External Links