[Nexus 7 General] martintzvetomirov:
Note: The information below is quite dated. If you are interested in watching TV on Android without root with the RTL-SDR dongles

check out Aerial TV on XDA.

--------

[YOUTUBE]CK2Qghpf7bA[/YOUTUBE]

Ok guys, I am proud to announce that I was able to run a DVB-T tuner on my Nexus 7 :)

If your kernel is 3.1.10-g52027f9 and your dongle is RTL2832U based

If you have a rooted Nexus 7 with kernel 3.1.10-g52027f9 and a RTL2832U based DVB-T dongle, then you can also have your dongle up and running in a matter of minutes. Here are the steps:

Download http://dl.dropbox.com/u/24106229/NexusDvb.rar

Install droidtv.apk from the rar (you can also find it at https://github.com/chrulri/droidtv)

Get a Terminal emulator and cd to the folder where you have extracted the rar. Type in:

su

sh startdvb

Make sure that all of the files and folders inside /dev/dvb have highest permissions.

Start DroidTV and enjoy!!!

Different dongle, kernel 3.1.10-g52027f9

If you have the same kernel and a dongle that has its drivers built in the kernel according to http://www.linuxtv.org/wiki/index.php/DVB-T_USB_Devices , then you can download this rar file - http://dl.dropbox.com/u/24106229/all-modules.rar (Last updated 20 Aug 22:22 GMT). Those are all of the kernel modules I compiled. You may be able to find your usb driver there.

Compiling kernel modules

If you don't have the same kernel or a dongle is not supported, you will need to get the kernel source and compile the modules yourself. Here's how you do that.

Make sure you are running Linux and have make and git already installed

Download dvbn7comp and put it into a new directory. Make sure dvbn7comp is executable by running chmod +x dvbn7comp inside the folder

Invoke the script like this ./dvbn7comp <kernel_version>. For example if you want to have the modules compiled for 3.1.10-g05b777c, you would run ./dvbn7comp 3.1.10-g05b777c

Wait - it may take a while. Usually about 15 minutes depending on your network and CPU speed.

After the script finishes running, the .ko files would be put in a directory called output_3.1.10-g05b777c

That's it!

Note: The script will download the kernel source and the toolchain and it will attempt to find the commit that contains the required kernel version. Then it will configure the kernel for DVB-T support and will compile the modules and copy them to the output folder. If you run the script again and the sources are already present, it will not download them again, so any subsequent runs of the script would be faster!

Patching the precompiled binaries [NEW]

How to modify the startdvb script

echo "Starting DVB support"
insmod dvb-core.ko # core support for DVB
insmod dvb-pll.ko # I am not sure if this is even needed
insmod rc-core.ko # Support for remote control, some drivers won't load otherwise
insmod dvb-usb.ko # Support for usb tuners
insmod dvb-usb-***** # Add here your driver. If more than one needed, add another line
# if firmware is needed, make sure the firmware is in the right folder, it should be /lib/firmware, but I'm not 100% sure
# Also some devices won't need the steps below
echo "Waiting for device"
sleep 5
cd /
mkdir /dev/dvb
mkdir /dev/dvb/adapter0
cd /dev/dvb/adapter0
ln -s /dev/dvb0.frontend0 frontend0
ln -s /dev/dvb0.demux0 demux0
ln -s /dev/dvb0.dvr0 dvr0
ln -s /dev/dvb0.dvr0 dvr0.ts
chmod -R 777 /dev/dvb* # The original script doesn't have it, but try adding a -R before 777 might ease things a bit
echo "DONE!"

Troubleshooting

If any error message occurs, type in dmesg in the terminal. This will give more information why something failed.

How do I know if I'm successful

To check whether you have insmoded the kernels right and after connecting the device whether it has been discovered, use dmesg and look for message similar to "Found DVB device xxx in warm state".

I got it running!!!

If you got it running, please do share with us! It seems like there's a lot of fiddling for some devices to be done so any information will prove invaluable for somebody!!!

NOTE: I don't have the time to support this thread any more, sorry if I am not responding to it! All of the directions above are still valid and working! Browse the comments, you might find that someone has compiled the correct modules for your device/kernel or you might ask someone to do it for you! If you want any of the information above to be edited, please PM me!