Instructions for building the standalone driver: ------------------------------------------------ If you encounter any problems while executing the follwing steps please read the TROUBLESHOOTING file. Simply type 'make' to build the driver. The compiled modules will be located in directory ./build-2.4/ or ./build-2.6/, depening on the kernel version you are running. There you will also find scripts to load and unload the modules. For some cards you need to download additional firmware binaries. You get notified in the build process or when loading the modules, please follow the instructions there if you own one of the cards that need a firmware to run. In ./build-2.4/ or ./build-2.6/ you find the insmod script. Use './insmod.sh load' to load the driver modules, './insmod.sh unload' to remove them. './insmod debug' loads the drivers with debugging enabled. These scripts load all drivers for all cards but the ones based on the bt8xx. For bt8xx based cards please use the insmod-bt8xx.sh script instead. Now check the klog and syslog (in doubt type 'dmesg') for error messages. When you reached this point successfully you probably want to start some test applications, download the linuxtv-dvb-apps-1.1.tar.gz package, unpack it and compile it. This package contains some tools to test and debug the driver: linuxtv-dvb-apps-1.1/apps/szap/ contains three simple applications called szap, czap and tzap for zapping with DVB-S, DVB-C or DVB-T cards. Read linuxtv-dvb-apps-1.1/apps/szap/ README for usage instructions. Note 1: tuning succeeded if you see the FE_HAS_LOCK flag and "status 1f"; a good signal has a low bit error rate (ber) and zero uncorrectable packets (unc). Note 2: you must keep ?zap running, or the frontend will go to sleep (unless you load dvb-core.o with dvb_shutdown_timeout=0) If your card has a hardware MPEG decoder you can watch TV with xawtv (together with e.g. szap for DVB tuning); Note: xawtv cannot control the DVB tuner, you must use ?zap For cards without hardware MPEG decoder you need a software MPEG decoder, e.g. mplayer or xine (you need *very* recent versions which understand MPEG2 transport streams; xine v0.9.21 and mplayer dev-CVS-030723-16:39-3.3.1 seem to work); Note: You must run ?zap with the -r flag to enable stream output to the dvr device, and keep it running while watching tv. Examples: mplayer - < /dev/dvb/adapter0/dvr0 xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0 Note: Newest mplayer and xine versions are reported to have builtin DVB support (see ./linux/Documentation/dvb/faq.txt for more info). For 'real' everyday use you probably don't want to use these test applications but install a program like VDR or MythTV. (Read ./linux/Documentation/dvb/faq.txt for some links) When everything is working you probably want to install the driver on your system by typing 'make install'. If you want to load the modules automatically when an application tries to open the device you need to add lines like these to your modules.conf: probeall /dev/dvb dvb-ttpci alias /dev/dvb/* /dev/dvb below dvb-ttpci alps_bsrv2 alps_tdmb7 alps_tdlb7 add below dvb-ttpci grundig_29504-401 grundig_29504-491 add below dvb-ttpci stv0299 ves1820 Note: this example is for people with Technotrend-based PCI cards, they must load the dvb-ttpci driver and a matching frontend drivers that are potentially used on these cards. In order to find out which ones are required for your setup check the lsmod output after loading the driver like described above. Those DVB modules that have a usecount greater zero are required in your setup - edit the modules.conf file appropriatly] Debian users don't edit modules.conf manually but add the lines above to a new file in /etc/modutils/ (e.g. /etc/modutils/dvb) and call 'update-modules' then. -------------------------------------------------------------------------------- The build system has been tested down to 2.4.20, if you run an older kernel either update your kernel or just try - maybe you need to add some tweaks in the dvb_compat.[hc] files. Please report your modifications on the linux-dvb mailing list. If you want to build a not-standalone driver but want to patch your 2.6 kernel source tree with this driver please read README-2.6. More documentation is located in ./linux/Documentation/dvb/. good luck, Holger