Compiling the Linux DVB drivers

I recommend using the latest 2.6 series kernel, which has DVB drivers built in. You can also download the drivers either as a tarball or by CVS. See www.linuxtv.org and either compile them outside the kernel or patch them into the kernel source. This may give you newer versions of the drivers, but last time I tried patching the drivers into a recent kernel they failed to compile. There is some very good information about the DVB drivers in the dvb subdirectory of the kernel's documentation, although some of it is out of date.

Kernel options

Start configuring the kernel, eg with make menuconfig, and go to Device DriversMultimedia devices. Enable Video For Linux and Enable Video For Linux API 1, even if it says it's deprecated, then enter the Digital Video Broadcasting Devices section. There enable DVB For Linux and, preferably as modules DVB Core Support and the drivers for your card. The Nova-T uses the budget-ci module ( Budget cards with onboard CI connector ). Enabling this should automatically enable other modules/drivers it needs, including the TDA1004x front-end. Note the use of budget-ci as opposed to budget even though this card does not have a "Common Interface" (CI) connector.

To be able to use the remote control you should also enable evdev (Device DriversInput device supportEvent interface).

When working the remote will generate events at /dev/input/eventX where X is a number which will vary depending on what devices are connected. To help work out which device is which, I've written a utility to scan input devices and print each one's description so that you can easily find which one corresponds to your remote. Download devinputscan.c, compile it, eg:

gcc -Wall -o devinputscan devinputscan.c

and run it. Or you can just examine the pseudo-file /proc/bus/input/devices.

Patch to make the remote work correctly (obsolescent)

As of version 2.6.20 the budget-ci driver supplied with the Linux kernel now works correctly with the remote control featured in this article. No doubt this has also been the case with the separate driver package from linuxtv.org for some time before the kernel tree caught up. Previous versions of the budget-ci driver contained incorrect mappings for this card's remote. There is a patch in circulation to make the driver more sophisticated and able to load a mapping at run-time, but I used to use an alternative patch with the correct mapping encoded in it. There are two versions, depending on the driver version: hauppauge-ir.patch or hauppauge-ir-cvs.patch . The former is for older versions of the driver, and the latter for more recent ones including the ones supplied with kernel 2.6.