Gentoo Wiki


This article is part of the Hardware series.
Laptops TV Tuner Cards Wireless Servers Storage Other Hardware Motherboards Related



This howto describes how to get the Terratec Cinergy 1200 DVB-T/DVB-C working in Linux.

Activating the needed kernel options

In this howto the 2.6.12 Kernel is used, it should work with every 2.6er kernel. First run the kernel configuration:

cd /usr/src/linux && make menuconfig

Then activate the needed kernel options.

Device Drivers  --->
      Generic Driver Options  ---> 
         <*> Hotplug firmware loading support
      Multimedia devices  --->
         <*> Video For Linux
               Video For Linux  ---> 
                  <M> Philips SAA7134 support
                  <M>   DVB Support for saa7134 based TV cards
               Digital Video Broadcasting Devices  --->
                  [*] DVB For Linux  
                  <*>   DVB Core Support
                  <M>     Budget cards
                  <M>     Budget cards with analog video inputs
                  Customise DVB Frontends  --->
                      <M> Philips TDA10045H/TDA10046H based

Compile and install the Kernel. If hotplug is not installed:

emerge hotplug

Getting and installing the needed firmware

Not needed for Terratec Cinergy 1200 DVB-C.

The kernel module needs the firmware loaded by hotplug. To download the firmware do this command:

cd /usr/src/linux/Documentation/dvb && perl get_dvb_firmware tda10046

This will download the firmware and save it to: dvb-fe-tda10046.fw
Copy it to /lib/firmware with:

cp /usr/src/linux/Documentation/dvb/dvb-fe-tda10046.fw /lib/firmware/

Note: Do not forget the trailing slash, as otherwise cp may produce a file, not directory, /lib/firmware!

After booting the new kernel

Load the kernel modules:

modprobe budget
modprobe budget-av

After this ls /dev/dvb/adapter0/dvr0 should show the device node.
Now you can use your favorite program, I suggest kaffeine.


Dmesg shows the following output:

tda1004x: waiting for firmware upload (dvb-fe-tda10046.fw)...
tda1004x: no firmware upload (timeout or file not found?)
tda1004x: firmware upload failed

Shows that the firmware is not loaded. Maybe the firmware is at the wrong place. You can find the directory where hotplug searches for the firmware with the following command:

grep FIRMWARE_DIR /etc/hotplug/firmware.agent

Also see external links for other reasons that the firmware may not load

Firmware not loading

firmware not loading thread - Root cause of this is that hotplug is calling /sbin/udevsend instead of /sbin/hotplug:

# cat /proc/sys/kernel/hotplug

(on a 2.6.11 kernel)

/dev/dvb/ does not appear

Newest Cinergy 1200 DVB-C cards are shipped with a little different chipset (frontend is TDA10023 instead of the older TDA10021). The new frontend still isn't (May 11th 2007) supported in the stock Linux kernel. Fortunately there is working support in the developement version of v4l sources (see this page, external patch is no longer needed).

Short installation instructions for Gentoo:

emerge -av mercurial (install Mercurial software which is needed for transfering the sources)
cd /usr/src (move to system's kernel source directory)
hg clone (download v4l-dvb sources via Mercurial)
cd v4l-dvb (move to the source directory)
make (compile the v4l-dvb sources)
make install (install compiled driver modules)

Because it replaces original kernel modules, it is recomended that in kernel everything related to v4l and dvb is compiled as modules.

At least earlier that patch had one problem, it eats all CPU power. If you have one CPU, your load is something over one (~1.10), with two CPU's load goes over two (~2.20). I'm not sure about the current situation.

Tuning card

You need to install media-tv/linuxtv-dvb-apps to get applications to tune card and you also need to get initial tuning data from provider. Some of tuning data is provided with tools, but not all. Ask service parameters from operator.

Initial tuning data looks like that:

# DVB-C, Tikka Media, Joensuu, Finland 
# freq sr fec mod
C 162000000 6900000 NONE QAM128
C 418000000 6900000 NONE QAM128

dvbscan -c initial-tuning-data-file > ~/.czap/channels.conf. You can also use dvbscan to make channel tuning to mplayer, xine and vdr.

External links Wiki article

firmware not loading thread

Retrieved from ""

Last modified: Sat, 30 Aug 2008 21:55:00 +0000 Hits: 21,000