TwinhanDTV Digital Terrestrial TV Card Ter

From LinuxTVWiki
Jump to navigation Jump to search

This is about the TwinhanDTV Ter Mini, a Twinhan Budget PCI card, capabable of recieving only-digital TV and radio (DVB-T). It's also capabable of HDTV standard 1080i, which I haven't tested as there is no HDTV transmission in UK (and whole Europe) yet. Otherwise, the card works well with Linux.

On the package it says: "TwinhanDTV Digital Terrestrial TV Card Ter" but then actually on the side it's ticked "Mini Ter (Low Profile)" (and not "Ter (Standard)"). There's also a sticker saying "Model 3020C".

Company page: [1]

It comes up as Bt878 in lspci:

 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)


Howto make it work

Driver

The BT878 chip is supported by new kernel versions -- good news! :)

This is what I've done (Debian Sarge testing, kernel version 2.6.16.9). It follows the standard installation of the bttv driver for DVB as it is included in new kernels.

Use lsmod to see if you have all these modules already installed.

 bttv
 bt878 
 dvb_core
 dst 
 dvb-bt8xx

If yes, you don't have to re-compile your kernel but can load them right away (see below).

Kernel re-compile

In kernel configuration (make menuconfig) make sure to have:

  • Under Device Drivers - Multimedia Devices - Video for Linux
 <M> BT 848
 [*] DVB for bt878

which is equivalent to these entries in the kernel .config file:

 CONFIG_VIDEO_BT848=m
 CONFIG_VIDEO_BT848_DVB=y


  • Under Device Drivers - Multimedia Devices - Digital Video Broadcasting Devices
 <M> DVB for Linux
 <M> DVB Core Support

And there under DVB Core Support - Customise DVB Frontends

 <M> ... something like DVB_BT8XX

which is equivalent to these entries in the kernel .config file:

 CONFIG_DVB=y
 CONFIG_DVB_CORE=m
 CONFIG_DVB_BT8XX=y

And maybe (not sure if necessary) still there under ATSC

 <M> Video BTCX

which is equivalent to this entry in the kernel .config file:

 CONFIG_VIDEO_BTCX = m


  • Under Device Drivers - Sound - ALSA - PCI devices
 <M> BT878

which is equivalent to this entry in the kernel .config file:

 CONFIG_SND=y etc. for sound in general 
 CONFIG_SND_BT87X=m

(I may have missed a couple of options. Please add them.) Save the config file, compile your new kernel and restart.


Modules needed

Required modules and parameters:

 bttv
 bt878 
 dvb_core
 dst 
 dvb-bt8xx

Load them using modprobe.

You should now have some stuff in /dev/dvb/adapter0/

That's it. You don't need any firmware stuff. :)


Software

I have the DVB drivers loaded. Now how can I test it?

Check if you have files in /dev/dvb/adapter0/.

Then you might wanna try the LinuxTV dvb-apps, especially the commands scan, tzap and dvbtraffic.

Additionally, try if it works by setting a channel frequency using dvbtune. (Debian: # apt-get install dvbtune.) But then you have to know a frequency that really works - for weak signals, only some channels work though, so scan gives you more chances.

How do I tune my TV-channels? Where do I get the frequencies from?

Try the scan command as described on the page of its package LinuxTV dvb-apps.

More Software

You have a lot of choice. Obviously, don't use analog-TV or full-featurer-cards software but use budget-DVB-software. Don't get yourself confused that bttv was analog-TV first - it's come a long way and now the form you use is DVB. So xawtv for example will not work -- you just don't have /dev/video0 (instead you have /dev/dvb/adapter0).

VDR probably is the first choice for a DVB card. Keep in mind, the TwinhanDTV Ter is is a budget card, not a Full-featured Card so you have to install the VDR Software Decoder Plugin if you wanna use VDR for watching.

Alternatively, you could use dvbstream and then watch the MPEG-2 stream (even possible on a different computer) with programs like xine, mplayer etc.

Troubleshooting

Any software I use comes up with error messages like "can't find demux".

This means that /dev/dvb/adapter0/demux is missing. Probably your card drivers are not installed properly. Then, you don't have anything in /dev/dvb/. If that's the case, check above that you have all in your kernel config (of your running kernel, of course) and that you loaded them all with modprobe.