TBS6280

From LinuxTVWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

A dual DVB-T/DVB-T2 PCIe card from TurboSight.

The manufacturer officially supports Linux, and there is on-going development of their driver, although it is supplied as a binary blob.

There is also an open source driver for TBS 6280 developed by Luis Alves.

Overview/Features

  • PCI-e x1
  • Dual Tuner DVB-T/DVB-T2 card
  • RF antenna pass-through
  • IR Receiver
  • Remote Controller

Components Used

  • NXP SAA7160ET (PCI Express Based Audio And Video Bridge), driver is NOT included in linux kernel, you must compile a closed (proprietary) or open source driver above to use your TBS6280 card
  • NXP (TDA) 18212/M (alias TDA18212HN with master) (Silicon Tuner for terrestrial and cable digital TV reception) X2, (driver included in linux kernel >= 3.0)
  • SONY CXD2820R (demodulator LSI for "DVB-T2", compatible with three standards ("DVB-T2", "DVB-T" and "DVB-C") X2, (driver included in linux kernel >= 3.0)

Identification

Note : "Capabilities" information are only show if you use the root account, else you will have "Capabilities: <access denied>".

With working driver:

# lspci -v | grep --after-context=10 7160
04:00.0 Multimedia controller: Philips Semiconductors SAA7160 (rev 03)
       Subsystem: Device 6280:0011
       Flags: bus master, fast devsel, latency 0, IRQ 18
       Memory at e0300000 (64-bit, non-prefetchable) [size=1M]
       Capabilities: [40] MSI: Enable- Count=1/32 Maskable- 64bit+
       Capabilities: [50] Express Endpoint, MSI 00
       Capabilities: [74] Power Management version 2
       Capabilities: [80] Vendor Specific Information: Len=50 <?>
       Capabilities: [100] Vendor Specific Information: ID=0000 Rev=0 Len=088 <?>
       Kernel driver in use: SAA716x TBS

If the driver is NOT yet installed or loaded, then output will instead be

# lspci -v | grep --after-context=10 7160
02:00.0 Multimedia controller: Philips Semiconductors Device 7160 (rev 03)
       Subsystem: Device 6280:0001
       Flags: bus master, fast devsel, latency 0, IRQ 18
       Memory at e0300000 (64-bit, non-prefetchable) [size=1M]
       Capabilities: [40] Message Signalled Interrupts: Mask- 64bit+ Queue=0/5 Enable-
       Capabilities: [50] Express Endpoint, MSI 00
       Capabilities: [74] Power Management version 2
       Capabilities: [80] Vendor Specific Information <?>
       Capabilities: [100] Vendor Specific Information <?>

The final line with "Kernel driver in use:" is missing because NO driver is loaded.

With lspci -vvvnn (and working drivers):

# lspci -vvvnn | grep --after-context=27 7160
 02:00.0 Multimedia controller: Philips Semiconductors Device 7160 (rev 03)
       Subsystem: Device 6280:0011
       Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
       Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
       Latency: 0, Cache Line Size: 4 bytes
       Interrupt: pin A routed to IRQ 16
       Region 0: Memory at fda00000 (64-bit, non-prefetchable) [size=1M]
       Capabilities: [40] Message Signalled Interrupts: Mask- 64bit+ Queue=0/5 Enable-
               Address: 0000000000000000  Data: 0000
       Capabilities: [50] Express (v1) Endpoint, MSI 00
               DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <256ns, L1 <1us
                       ExtTag- AttnBtn- AttnInd- PwrInd- RBE- FLReset-
               DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
                       RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
                       MaxPayload 128 bytes, MaxReadReq 128 bytes
               DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
               LnkCap: Port #1, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <4us, L1 <64us
                       ClockPM- Suprise- LLActRep- BwNot-
               LnkCtl: ASPM Disabled; RCB 128 bytes Disabled- Retrain- CommClk+
                       ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
               LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
       Capabilities: [74] Power Management version 2
               Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot-,D3cold-)
               Status: D0 PME-Enable- DSel=0 DScale=0 PME-
       Capabilities: [80] Vendor Specific Information <?>
       Capabilities: [100] Vendor Specific Information <?>
       Kernel driver in use: SAA716x TBS
       Kernel modules: saa716x_tbs-dvb

Making it Work

See TBS driver installation

IRQ Issues

See TBS driver installation#IRQ_Issues

Sample kernel output

#dmesg | more
 SAA716x TBS 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
 SAA716x TBS 0000:02:00.0: setting latency timer to 64
 DVB: registering adapter 0 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...
 DVB: registering new adapter (SAA716x dvb adapter)
 DVB: registering adapter 1 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...


With kernel 3.8.13.4 and Mageia Linux.

#dmesg | more

For IR remote control :

[   11.410478] IR NEC protocol handler initialized
[   11.660415] IR RC5(x) protocol handler initialized
[   11.701373] IR RC6 protocol handler initialized
[   11.943450] IR JVC protocol handler initialized
...
[   12.102224] IR Sony protocol handler initialized
[   12.165011] Registered IR keymap rc-tbs-nec
...
[   12.165085] input: saa716x IR (TurboSight TBS 6280) as /devices/pci0000:00/0000:00:1c.2/0000:04:00.0/rc/rc0/input5
[   12.165129] rc0: saa716x IR (TurboSight TBS 6280) as /devices/pci0000:00/0000:00:1c.2/0000:04:00.0/rc/rc0

For DBV-T TV :

[   11.952059] tbs6991se: module license 'TurboSight Proprietary: www.tbsdtv.com' taints kernel.
[   11.952061] Disabling lock debugging due to kernel taint
...
[   12.165164] DVB: registering new adapter (SAA716x dvb adapter)
...
[   14.115412] TurboSight TBS6280 DVB-T2 card MAC=ff:ff:ff:ff:ff:ff
[   14.115417] DVB: registering adapter 0 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...
[   14.115548] DVB: registering new adapter (SAA716x dvb adapter)
[   14.165439] TurboSight TBS6280 DVB-T2 card MAC=ff:ff:ff:ff:ff:ff
[   14.165442] DVB: registering adapter 1 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...

Linux kernel modules loaded

  • DVB Tuner card part only
# lsmod
dvb_core              109885  2 saa716x_core,saa716x_tbs_dvb
saa716x_tbs_dvb        57909  0 
saa716x_core           50899  1 saa716x_tbs_dvb / 
tbs6982fe              22408  1 saa716x_tbs_dvb /
tbs6680fe              17791  1 saa716x_tbs_dvb /
tbs6923fe              22408  1 saa716x_tbs_dvb /
tbs6928se              17884  1 saa716x_tbs_dvb /
tbs6991fe              17785  1 saa716x_tbs_dvb /
tbs6618fe              17791  1 saa716x_tbs_dvb /
tbs6922fe              22478  1 saa716x_tbs_dvb /
tbs6928fe              17785  1 saa716x_tbs_dvb / 
stv090x                62235  1 saa716x_tbs_dvb / 
tbs62x0fe              23069  2 
---
i2c_core               40397  15 i2c_i801,saa716x_core,tbs6618fe,tbs6680fe,tbs62x0fe,tbs6922fe,tbs6923fe,tbs6928fe,tbs6928se,tbs6982fe,tbs6991fe,saa716x_tbs_dvb,i2c_algo_bit,stv090x,nvidia
i2c_algo_bit           13413  1 saa716x_tbs_dvb
i2c_i801               22443  0

--> only TBS proprietary modules used for NXP SAA7160ET (PCI Express Based Audio And Video Bridge), NXP (TDA) 18212/M (tuner) and SONY CXD2820R (demodulator) chips. No saa716x or tda18212 or cxd_2820r kernel modules.

  • Only remote control by IRC for TV tuner card
# lsmod
rc_core                26884  10 ir_lirc_codec,ir_rc5_decoder,ir_nec_decoder,ir_sony_decoder,rc_tbs_nec,saa716x_tbs_dvb,ir_mce_kbd_decoder,ir_jvc_decoder,ir_rc6_decoder
ir_lirc_codec          12898  0 
lirc_dev               19166  1 ir_lirc_codec
ir_nec_decoder         12546  0  
rc_tbs_nec             12502  0 
ir_mce_kbd_decoder     12879  0 
ir_sony_decoder        12549  0 
ir_jvc_decoder         12546  0 
ir_rc6_decoder         12546  0 
ir_rc5_decoder         12546  0

Check that your tuner card works

1.Check that linux tool can find TV channels

If the file for terrestrial transmitters in your town is not in the /usr/share/dvb/dvb-t folder, then you can find file in scan-s2/dvb-t folder in the scan-s2.tar.bz2 that is in the tbs-linux-drivers_vRELEASE_NUMBER.zip file.
A list, not up to date, for french users is available here : doc.ubuntu-fr.org/tnt_frequences.
File for Paris - Eiffel Tower : use configuration at http://www.spinics.net/lists/linux-media/msg45916.html or create an up to date /usr/share/dvb/dvb-t/fr-Paris file like this :

# Paris - France - various DVB-T transmitters / differents DVB-T (TNT) emetteurs 
# contributed by / contribution par : Alexis de Lattre <alexis@xxxxxxxxxx>
#
# updated by/mis a jour par : Yannick, date: 05/2016
# 
# Ile-de-France french DVB-T transmitters list / liste des emetteurs DVB-T(TNT) d'Ile de France : 
# http://www.recevoirlatnt.fr/fileadmin/contenu/Passage_TNT_HD/liste_des_canaux_en_IDF_au_5_avril_2016_v2.1.pdf
# Chaines dans chaque multiplexe :
# http://www.recevoirlatnt.fr/fileadmin/contenu/Passage_TNT_HD/Doc_technique_B700_-_Phase_0_-_IDF_V2.0.pdf
# Matching channel number with channel Frequency / Correspondance entre les canaux TNT et leurs fréquences de diffusion : 
# http://www.recevoirlatnt.fr/fileadmin/contenu/Passage_TNT_HD/TNT_HD_-_recherche_manuelle_des_chaines.pdf
#
# All french DVB-T transmitters list / liste des emetteurs DVB-T(TNT) de France : 
# Allez a http://pros.toutelatnt.fr/pros/profil/antennistes-revendeurs, 
# selectionnez votre region sur la carte, en bas de la nouvelle page, 
# cliquez sur le lien "Telechargez la liste des emetteurs et des frequences", 
# un fichier PDF vous indique alors le numero de canal pour chaque multiplex ou groupe de chaines de l emetteur de votre region.
# Si vous ne connaissez pas le nom de la commune de votre emetteur, passez par http://www.matnt.tdf.fr/ 
#
# All french DVB-T channels / toutes les chaines de la TNT en France
# http://fr.wikipedia.org/wiki/T%C3%A9l%C3%A9vision_num%C3%A9rique_terrestre_en_France#Offre_des_cha.C3.AEnes_de_la_TNT
#
# City                       R1 R2 R3 R4 R6 R7 R15 
# Paris - Tour Eiffel      : 35 25 22 30 32 42 28 
# 
# T freq bw fec_hi fec_lo mod transmission-mode guard-interval hierarchy
# T frequence bande_passante fec_hi fec_lo type_modulation mode_transmission intervalle_de_garde hierarchie
#
# R1 - Canal 35 -  Groupe GR1 A (France 2 HD, France 4 HD, France Ô), Groupe GR 1 (France 3-Paris Ile de France), Groupe R1 TFL (BFM Business Paris HD)
T 586166000 8MHz 3/4 NONE QAM64 8k 1/8 NONE
#
# R2 - Canal 25 - Groupe NTN (D8, BFM TV, I-Télé, D17, Gulli)
T 506166000 8MHz 2/3 NONE QAM64 8k 1/32 NONE
#
# R3 - Canal 22 - Groupe CNH (Canal+, Canal+ Cinéma, Canal+ Sport, LCI, Paris Premiere, Planète+, ?, ?, ?, DATASYSTEM R7, ?)
T 482166000 8MHz 2/3 NONE QAM64 8k 1/32 NONE
#
# R4 - Canal 30 - Groupe Multi4 (M6, W9, Arte, France5, 6ter)
T 546166000 8MHz 2/3 NONE QAM64 8k 1/32 NONE 
#
# R5 - Plus utiliser depuis le 05/04/2016 - Canal 28 reattribuer au R15
#
# R6 - Canal 32 - Groupe SMR6 (TF1, NRJ 12, TMC, NT1, LCP-Public Senat)
T 562166000 8MHz 2/3 NONE QAM64 8k 1/32 NONE
#
# R7 - Canal 42 - Groupe MHD7 (HD1, Cherie 25, L equipe 21, RMC Decouverte, Numero 23) 
T 642166000 8MHz 3/4 NONE QAM64 8k 1/32 NONE
#
# R8 - Plus utiliser depuis le 05/04/2016 - Canal 58 plus utiliser
#
# R15 - Canal 28 - chaînes locales uniquement sur emetteur Paris - Tour Eiffel 
# Groupe Multi-7 (Canal 31, IDF1, France 24 Canal 34)  
T 530166000 8MHz 2/3 NONE QAM64 8k 1/32 NONE
#
# first french experimental DVB-T2 broadcasting / experimentation de diffusion en DVB-T2
# uniquement sur emetteur Paris - Tour Eiffel 
# Canaux de test nommes Test UHD1 et Test UHD2 (3840x2160 à 50 images/s) (audio en EAC-3 et video en HEVC (H.265))
# Necessite vlc >= 2.1.1 et vlc compiler avec support du AAC et H265 (verif par vlc --list en ligne de commande), 
# plus un PC puissant avec un processeur intel core i7 4 coeurs pour decoder la video en Ultra HD (UHD)
# http://www.journaldulapin.com/2014/06/07/recevoir-la-tnt-ultra-hd-sur-un-pc-sous-windows/
T 514166000 8MHz 3/4 NONE QAM64 8k 1/8 NONE

2.Check that you can listen/see audio/video stream for your TV channel

With Me TV

  • Importing TV channels configuration in Me TV

Example with terrestrial transmitters in Paris (France) (with root account)

cd
scan /usr/share/dvb/dvb-t/fr-Paris > channels.conf
cp channels.conf /home/your_user_account

(with user account)

launch Me TV
menu View > Channels > Add , and open the file channels.conf in /home/your_user_account

With vlc

  • Importing TV channels configuration in VLC

Example with terrestrial transmitters in Paris (France) (with root account)

cd
scan /usr/share/dvb/dvb-t/fr-Paris > channels.conf
cp channels.conf /home/your_user_account

(with user account)

Now open up VLC. 
Media (File) > Open a File (Quick Open File). Browse to channels.conf in /home/your_user_account and open. Live TV should now start playing. To see a list of channels to switch between, go to View > Playlist.

3.Recording TV channel stream

Record TV audio/video stream with vlc

1) Choose the folder for the recording files : How can I change the folder where VLC stores its streams?
2) Enable the "Advanced controls" to get the button with red dot (recording button) : How to stream and record media in VLC / secondth part : Recording

Create a recording script

Create a recording script

External Links