Hace tiempo que un amigo de linux albacete (Thempra) comentó que había podido ver la TDT en su Nexus 7 y enseñó un video demostrándolo. Pues, como se suele decir «si culo veo, culo quiero», en realidad no se si se suele decir, pero lo decía mi madre y a mi me vale como argumento.
Para poder hacerlo, se puede seguir el hilo de xda donde explican como ver la TDT en la Nexus 7, eso siempre y cuando tengamos el mismo kernel para el que están compilados los módulos que pone para descarga (Puedes comprobar el kernel en Ajustes/Información del tablet/Versión del kernel).
En mi caso, el kernel que tengo en la Nexus no es el mismo para el que han sido compilado los módulos del post de xda, sino que tengo el kernel 3.1.10-g009b6d1). Por lo tanto, para hacerlo funcionar será necesario compilar un kernel personalizado para la Nexus 7, en donde le demos soporte para los dispositivos de TDT (en inglés DVB-T) y compilar el módulo para el dispositivo que quiero probar desde fuera del kernel ya que no está incluido en el kernel. Lo primero que haré es compilar el módulo desde fuera del kernel y contra el kernel que se usa en la Nexus:
- Descargamos el módulo del RTL2832U: «git clone https://github.com/ambrosa/DVB-Realtek-RTL2832U-2.2.2-10tuner-mod_kernel-3.0.0.git»
- Editamos el Makefile: Cambiamos la variable KDIR, y la dejamos para que apunte a nuestro directorio del kernel, en mi caso se ve así: KDIR = /home/rex2k1/Proyectos/Nexus7/android_kernel_grouper
- Compilamos: make ARCH=arm CROSS_COMPILE=arm-linux-androideabi- EXTRA_CFLAGS=-fno-pic
- Si todo sale bien y tenías configurado el Android NDK y en el path, tendrás el módulo compilado: dvb-usb-rtl2832u.ko
Después de tener el módulo compilado, compilamos el kernel, y habrá que activar algunas opciones necesarias para darle soporte al kernel de dvb-t.
[wp_ad_camp_1]
Necesitamos activar como módulo (al final los he metido dentro del kernel porque me daban un error, si consigo arreglar el _GLOBAL_OFFSET_TABLE_ subieré los módulos):
- dvb-core
- dvb-usb
- dvb-pll
- rc-core
Con estas opciones, si el kernel nos compila sin problema, tendremos los módulos para poder insertarlos en la nexus desde el terminal una vez lancemos nuestro kernel.
Por si alguien quiere probar el módulo que sí que he podido compilar y que en teoría ha cargado sin problemas, lo pongo para descarga:
[wp_ad_camp_4]