In April 2010 I brought the ezcap DVB-T FM DAB USB device from Zazz, a digital TV tuner that contains the Realtek RTL2832U chipset. The USB ID is 0bda:2838.
It was advertised with Linux support, this came in the form of a zip file DVBT-DAB LinuxDriver hosted on Zazz's website. This file contained a snapshot of the v4l-dvb mercurial repository, a changelog, readme and install script. The snapshot files are mostly dated 2009-09-17 (perhaps a mercurial person could identify the exact revision from the hash present?). There were a number of files dated 2009-10-23 that had the executable bit set, and these contain the driver for my USB device.
The lastest kernels contain upstream support for this device. If you're running an old distro, then use the media_build git tree to build the latest dvb drivers for your system.
$ sudo apt-get install linux-headers-generic git build-essential $ git clone --depth=1 git://linuxtv.org/media_build.git $ cd media_build $ ./build
I wrote a makefile that allows the driver to be built out of tree.
I tested this with 2.6.38, as provided by Ubuntu Natty. If you're on Debian Squeeze (stable), you can checkout the squeeze-2.6.32 branch using $ git checkout -b squeeze-2.6.32 origin/squeeze-2.6.32 after the third step.
If you're running a different variety of kernel, such as -pae, then you'll want to install linux-headers-generic-pae.
$ sudo apt-get install linux-headers-generic $ git clone http://jms.id.au/~shenki/git/rtl2832u $ cd rtl2832u $ make $ sudo make modules_install
Then simply plug in your device and use it like any well supported DVB tuner.
Note: modules_install suggests that it runs depmod, but in some cases the driver is still not used when attaching the USB device. If it doesn't work after running make install and re-inserting the device, try running sudo depmod -a first.
Don't follow these, they exist only for historical purposes.
If you're just keen to get the driver working, it is trivial to make this happen. Easiest is to download the kernel module I have compiled for the Ubuntu Lucid 2.6.32-23-generic 64-bit kernel
wget http://jms.id.au/~shenki/RTL2832U/dvb-usb-rtl2832u.ko wget http://jms.id.au/~shenki/RTL2832U/dvb-usb-ec168.fw sudo mkdir /lib/modules/2.6.32-23-generic/kernel/update/ sudo cp dvb-usb-rtl2832u.ko /lib/modules/2.6.32-23-generic/kernel/update/ sudo cp dvb-usb-ec168.fw /lib/firmware/ sudo depmod -a
Secondly, use the diff I created. This is based atop 2.6.34; however it should work with most versions around .32 as the only modification to existing files is adding the makefile and Kconfig rules to build the module. You'll need to enable Device Drivers -> Multimedia support -> DVB/ATSC adapters -> Support for various USB DVB devices -> Realtek RTL2832U DVB-T USB2.0 support (through menuconfig, or using the hack described below).
sudo apt-get install linux-image-2.6.32 tar xvf /usr/src/linux-source-2.6.32.tar.bz2 wget http://jms.id.au/~shenki/RTL2832U/build-linux-2.6.32-23-generic.patch wget http://jms.id.au/~shenki/RTL2832U/rt1283x.patch cd linux-source-2.6.32 patch -p1 < ../rt1283x.patch patch -p1 < ../build-linux-2.6.32-23-generic.patch cp /boot/config-2.6.32-23-generic .config echo "CONFIG_DVB_USB_RTL2832U=m" >> .config make
Once the module has been built, you can copy out drivers/media/dvb/dvb-usb/dvb-usb-rtl2832u.ko as mentioned above.
Finally, and perhaps least dogey of all, is to grab the sources from Zazz, copy this list of files to drivers/media/dvb/dvb-usb in your kernel tree, make the required patch to Kconfig and Makefile in that directory, and build the module as mentioned above.
Some googling revealed that the driver has appeared a few times over the past few months, but hasn't made it into any official repo due to the dubious copyright information in some of the files. Interesting, the driver itself claims authorship of Realtek, version 1.4, with license being GPL.
This source code file contains confidential information and/or trade secrets of Microtune, Inc. or its affiliates and is subject to the terms of your confidentiality agreement with Microtune, Inc. or one of its affiliates, as applicable.
Any software supplied free of charge for use with elonics evaluation kits is supplied without warranty and for evaluation purposes only. Incorporation of any of this code into products for open sale is permitted but only at the user's own risk. Elonics accepts no liability for the integrity of this software whatsoever.
fitipower: Compile in Visual Studio 2005 C++ Win32 Console