En un post anterior les mostré los pasos para instalar Android 1.5 Cupcake en el Mini2440 y ademas los pasos para modificar el kernel para adaptar los controladores para una pantalla tipo W35. Ahora teniendo estos conocimientos previos el presente post lo hago con el fin de de mostrarles como como seria la instalación y correspondiente modificación del kernel para una versión superior de Android: Eclair. Ademas de como poder mejorar la velocidad de la interactividad con el sistema operativo ya que Cupcake era para ser sincero y en mi opinión personal menos atractivo, muy limitado en cuanto a sus prestaciones y el desarrollo de aplicaciones estaría muy limitada.
¿Que necesitaremos?
- Una PC con el SO Ubuntu, si es otra distribución Linux les recomiendo adaptar los comandos para su SO. Si disponen de Windows les recomiendo usen una maquina virtual.
- Descargar Putty que esta disponible tanto para Linux como para Windows. Este software nos permitirá iniciar una sesión para acceder remotamente al dispositivo después de la instalación.
- Y por supuesto descargar los archivos correspondientes que están disponibles en estos links: Link1 y Link2.
- Para poder continuar sin contratiempos les recomiendo para los que todavía no lo han hecho revisar este post. De aquí en adelante asumiré que ya revisaron el post.
- Tener instalado el IDE Geany.
- Disponer del API Ncurses.
- Configurar el compilador cruzado del ARM.
- Disponer del sistema YAFFS
¿Cual es el primer paso?
- Creamos una carpeta donde descomprimiremos el Kernel_Android_2_1 y accedemos a esta carpeta descomprimida.
- En el terminal (como root y al haber accedido a la carpeta correspondiente) escribimos esto:
$geany arch/arm/mach-s3c2440/mach-smdk2440.c
- Nos trasladamos a la linea 156-167 y modificamos el archivo de esta manera:
Antes
Después
- Todavía queda modificar otro archivo para ello en el terminal ingresamos esto: $geany drivers/input/touchscreen/s3c2410_ts.c y de la misma manera también modificamos el archivo en las lineas 99-100 .
Antes
Después
- Ahora solo ingresamos los siguientes comandos:
$cp config_mini2440 .config
$make menuconfig
- Salimos de la interfaz que se nos presenta eligiendo 'EXIT'.
- Después escribimos: $make zImage
- La construcción de la imagen tardara de 10 a 15 minutos.
- Una vez compilado, el núcleo kernel estará en /arch/arm/boot/ con el nombre zImage.
- Creamos una carpeta donde descomprimiremos el otro archivo descargado: Fs_Android_2_1.tgz
- En esta carpeta esta un archivo llamado 'default.prop', el cual lo abriremos y haremos los siguientes cambios.
Antes
Después
- Por ultimo creamos la imagen con la herramienta YAFFS2 para ello descomprimimos el archivo descargado anteriormente y elijemos el correspondiente a nuestro Mini2440 (en mi caso de 128Mb). El archivo final estará en la carpeta misma.
- Una vez hecho esto solo instalamos el SO en el ARM y nos disponemos a configurar el sistema para hacerlo un poco mas rápido. Cabe mencionar que cuando iniciamos por primera vez el SO tardara un tiempo considerable.
- Para acceder al dispositivo necesitaremos hacerlo por medio de comunicación serial entra la PC y el Mini2440 a una velocidad de 115200bps tal como lo muestra la siguiente imagen atravez de Putty.
$./mkyaffs2image-128M fs/ mini2440W35_android.img
Una vez hecho esto ingresamos los comandos como si estuviéramos trabajando en Linux.
$cd /system/app
Luego borramos todos las aplicaciones presentes aqui, pero solo dejamos las siguientes:
-LatinIME.apk
-Launcher.apk
-PackageInstaller.apk
-Settings.apk
-SettingsProvider.apk
-UserDictionaryProvider.apk
De esta manera borramos los archivos:
$rm -rf nombreaplicacion.apk
Nuestro SO esta listo, ahora solo lo reiniciamos y tendremos nuestra Android 2.1 mas funcional.