13 de julio de 2016

Portar Roms KitKat

Muchos me lo han preguntado y dado que últimamente no he tenido tiempo para portar roms, quise hacer este tutorial para que por fin todos los que estén interesados puedan portar roms para el Lanix Ilium S106.

Consideraciones Previas, Consejos y Recomendaciones

+
Este tutorial sólo aplica para portar roms de Android 4.4.2 a Android 4.4.2.
+ NO sirve para portar roms de Android 4.2.2 (Jelly Bean) a Android 4.4.2 puesto que su funcionamiento es diferente y básicamente ni siquiera booteara.
+ NO sirve para portar roms de Android 5.1.1, para eso se utiliza otro método que publicaré en las siguientes semanas.
+ No se necesitan conocimientos avanzados en Android, pero no sigas este tutorial si te consideras un n00b.
+ Unicamente responderé dudas técnicas y lo vuelvo a repetir: Absténganse si son principiantes.
+ Para portar una rom no importa el modelo del teléfono ni la marca, lo único que tienen que tomar en cuenta es que su procesador sea MT6572, su kernel sea 3.4.67 y la versión de android sea 4.4.2
+ Todos los archivos se copian o mueven de Stock a Port. Por comodidad yo los muevo, así me aseguro que seguí el tutorial correctamente
+ Por comodidad yo renombro la rom a portar como Port y la StockRom a simplemente Stock.
+ Guíense por las imágenes, les ayudaran a comprender lo que trato de explicarles.
+ Lean y comprendan el tutorial antes de hacer cualquier intento.

¿Dónde descargo las roms?

Unicamente yo confiaba en las roms que subían al sitio mtkroms, puesto que su autor detallaba la versión de android y el procesador de la rom que iba a portar y así tenía la seguridad que funcionaría en el S106. Pero al parecer su autor dejó de darle soporte a las roms con procesadores como el del S106.

En otros sitios solo indican que la rom es para procesadores MT6572 pero no la versión de android ni el kernel y portar una rom sin tener esa información puede hacer que la rom ni siquiera inicie o en el peor de los casos puede causar un hardbrick como le ocurrió a una de las personas que me ayudaba a probar las roms.

Otro problema encontrado fue que al momento de buscar una rom para hacer este tutorial, descubrí que la pagina Cybrgeek que tenía un gran surtido de roms ha desaparecido. Sin embargo, aquí les dejo una lista de pagina que contienen roms para procesadores MT6572.

+ Computer Android Lista 1
+ MTKcrom
+ Computer Android Lista 2
+ MTKroms
+ Computer Android Lista 3
+ Needrom

Dadas las consideraciones que mencioné antes, si van a utilizar alguna rom de los enlaces anteriores háganlo bajo su propio riesgo.

Requisitos

1.
Necesitan descargar la Stock Rom, que servirá para reemplazar archivos a la rom que queramos portar.
2. Necesitan descargar una rom a portar.
3. Un compresor de archivos. Yo uso WinRAR, pero igual les puede funcionar WinZip o 7Zip.
4. Un editor de texto. Yo recomiendo Notepad++ ya que es compatible con diferentes lenguajes de programación y guarda los archivos sin basura ni agregando caracteres extraños como sucede con notepad o wordpad.

Tutorial

1. Una vez descargadas las roms hay que extraerlas, yo uso la opcion "Extraer en nombredelarom" que tiene winrar.


2. Muevan el archivo boot.img de Stock a Port


3. Entren a la carpeta system de Port y eliminen las carpetas usr y vendor.


4. Entren a la carpeta system de Stock y muevan las carpetas usr y vendor a la carpeta system de Port.


5. Entren al directorio system/lib de Port y eliminen las carpetas drm, hw, modules y soundfx


6. Entren al directorio system/lib de Stock y muevan las carpetas drm, hw, modules y soundfx al directorio system/lib de Port.


7. Estando en el directorio system/lib muevan el archivo libcameracustom.so de Stock a Port


8 Estando en el directorio system/lib muevan el archivo libcamalgo.so de Stock a Port


9 Estando en el directorio system/lib muevan el archivo audio.primary.default.so de Stock a Port


10. Estando en el directorio system/bin muevan el archivo vold de Stock a Port


11. Estando en el directorio system/bin muevan el archivo pq de Stock a Port


12. Entren al directorio system/etc de Port y eliminen las carpetas bluetooth, firmware, security y wifi


13. Entren al directorio system/etc de Stock y muevan las carpetas bluetooth, firmware, security y wifi al directorio system/etc de Port.


14. Entren al directorio system/etc/permissions y muevan todos los archivos de Stock a Port.


15. Entren al directorio system/etc/mddb y muevan el archivo BPLGUInfoCustomAppSrcP_MT6572_S00_MOLY_WR8_W1315_MD_WG_MP_V36_P4_1_wg_n de Stock a Port. Puede ocurrir que haya archivos similares.


16. Regresen al directorio system/lib y muevan el archivo libMali.so de Stock a Port


17. Para corregir posibles errores con el radio. Vayan al directorio system/lib y muevan el archivo libfmcust.so de Stock a Port


18. Para corregir posibles errores con el bluetooh. Vayan al directorio system/lib y muevan los siguientes archivos de Stock a Port:
+ libbcc.so
+ libbluetooth_jni.so
+ libbluetooth_mtk.so
+ libbluetooth_relayer.so
+ libbluetoothdrv.so
+ libbluetoothem_mtk.so


19. Para corregir posibles errores con la camara. Vayan al directorio system/lib y muevan los siguientes archivos de Stock a Port:
+ libcam.camadapter.so
+ libcamshot.so
+ libcam.client.so
+ libcam.exif.so
+ libcam.iopipe.so
+ libcam.paramsmgr.so
+ libcam.utils.so
+ libcamalgo.so
+ libcamdrv.so
+ libcamera_client.so
+ libcamera_metadata.so
+ libcameracustom.so
+ libcameraservice.so


20. Para corregir posible bootloop. Vayan al directorio system/lib y muevan los siguientes archivos de Stock a Port:
+ libandroid_runtime.so
+ libandroid_servers.so


21. Para corregir posible bootloop. Vayan al directorio system/lib y muevan el archivo libmedia_jni.so de Stock a Port:


22. Para corregir posibles errores con el sensor. Vayan al directorio system/bin y muevan los siguientes archivos de Stock a Port:
+ akmd8963
+ akmd8975
+ akmd09911


23. Para corregir posibles errores con el sensor. Vayan al directorio system/lib y muevan el archivo servicemanager de Stock a Port.


24. Para corregir posibles errores con el audio. Vayan al directorio system/lib y muevan los siguientes archivos de Stock a Port:
+ libaudiocompensationfilter.so
+ libaudiocomponentengine.so
+ libaudiocustomparam.so
+ libaudiodcrflt.so
+ libaudioeffect_jni.so
+ libaudioflinger.so
+ libaudio-resampler.so
+ libaudiosetting.so
+ libaudioutils.so


25. Vayan al directorio system y abran el archivo build.prop con su editor de texto. Si no quieren complicarse tanto, solo verifiquen que las siguientes lineas aparezcan como a continuación:
+ qemu.hw.mainkeys=1
+ ro.sf.lcd_density=160
+ ro.sf.hwrotation=0

Sin embargo, si quieren ir un poco más allá, las siguientes lineas son unicamente las que yo edito como aparecen a continuación:
+ ro.build.version.release=4.4.2
+ ro.product.brand=Lanix
+ ro.product.name=Ilium_S106
+ ro.product.board=Ilium_S106
+ ro.product.manufacturer=Lanix
+ ro.product.locale.language=es
+ ro.product.locale.region=US
+ persist.sys.timezone=America/Mexico_City
+ ro.build.product=Ilium_S106
+ ro.product.model=Ilium S106
+ ro.product.device=Ilium_S106

Algunas pueden no aparecer y las pueden agregar al final del archivo con toda confianza. Sobre todo la de lcd_density, que es la encargada de que la pantalla se adapte a nuestro S106.

Cabe aclarar que las lineas anteriores pueden estar dispersas en todo el archivo, por eso es bueno buscarlas antes de considerar agregarlas.


26. Ahora viene lo importante. Yo les ahorré el investigar los puntos de montaje de nuestro S106, esto es para que le indiquemos al recovery en que partición instalar los archivos de la rom. En caso de que los coloquen mal pueden causar un hardbrick y matar su S106. Por lo que es MUY importante que tomen nota:
+ mmcblk0p4 para system
+ mmcblk0p5 para cache
+ mmcblk0p6 para data


27. Ahora se dirigen al directorio META-INF\com\google\android y abren el archivo updater-script con su editor de texto. Tienen que localizar las siguientes lineas:
+ format("ext4", "EMMC", "/dev/block/mmcblk0p4", "0", "/system");
+ format("ext4", "EMMC", "/dev/block/mmcblk0p5", "0", "/cache");
+ format("ext4", "EMMC", "/dev/block/mmcblk0p6", "0", "/data");
+ mount("ext4", "EMMC", "/dev/block/mmcblk0p4", "/system");
+ mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/cache");
+ mount("ext4", "EMMC", "/dev/block/mmcblk0p6", "/data");

Tienen que hacer corresponder los números respecto al paso anterior. UNICAMENTE cambien los números, dejen lo demás como está.

No es obligación que vengan las seis lineas anteriores y si no aparecen no deben agregarlas.

También es muy probable que las lineas format sean diferentes entre una y otra rom, es completamente normal, unicamente verifiquen que los números correspondan a como están en el paso anterior.


Para sus primeras roms, yo les recomiendo que dejen todo tal cual, pero si quieren ir más allá, pueden editar las lineas ui_print(" "); o agregarlas y dentro de los paréntesis poner el texto que deseen.

28. Y listo. Hemos acabado. Ahora regresamos al directorio raíz de Port y seleccionamos todos los archivos, damos click derecho y seleccionamos la opción "Añadir al archivo..." de winrar.


Nótese que en el directorio raíz de Port puede haber más carpetas con respecto a las de Stock y también debemos de incluirlas.

29. Si utilizan winrar se abrirá una ventana donde deberán escoger las siguientes opciones:
+ Formato de archivo: Zip
+ Método de compresión: Normal
+ Verificar ficheros comprimidos

Si quieren pueden darle el nombre al archivo de una vez y por último dan click en Aceptar


Y es todo, ahora copien el archivo ZIP a su tarjeta SD e instalenla y si siguieron todos los pasos correctamente, ya habrán creado una Custom Rom para el S106.


Disclaimer:
No nos hacemos responsables por el daño que puedas ocasionarle a tu equipo.

18 comentarios:

  1. Gracias, me gusta tu pagina

    ResponderEliminar
  2. Que buen tutorial, gracias me han sido de muy buwena ayuda
    pero tengo una duda acerca del tutorial no se como realizar este puto

    26. Ahora viene lo importante. Yo les ahorré el investigar los puntos de montaje de nuestro S106, esto es para que le indiquemos al recovery en que partición instalar los archivos de la rom. En caso de que los coloquen mal pueden causar un hardbrick y matar su S106. Por lo que es MUY importante que tomen nota:
    + mmcblk0p4 para system
    + mmcblk0p5 para cache
    + mmcblk0p6 para data

    no se realmente como editar esta parte gracias.

    ResponderEliminar
    Respuestas
    1. El paso 26 unicamente es informativo y de hecho no hay que hacer nada, sólo lo puse para que sepan como editar el updater-script del paso 27.

      Recuerda que si eres principiante te aconsejo no usar el tutorial.

      Eliminar
  3. Respuestas
    1. Si quieres publícala en el grupo y yo me comunico contigo para publicarla también en el blog: https://www.facebook.com/groups/343214232537948/

      Eliminar
    2. HxGx
      esta rom cumple con lo necesario para portarla pero como soy prinsipiante para portar no quiero ariesgarme a que no me salga el port
      este es el link del blog:http://mtkcrom.blogspot.com/2015/10/442-galaxy-s6-rom-for-mtk6572.html


      para descargar la rom es este link:https://drive.google.com/file/d/0B9C2nhzLRHq9UXVINTdXbzNLQ2c/view


      se puede portar al lanix ilium s106

      Eliminar
    3. Sí, esa rom cumple con lo necesario para que puedas portarla.

      Eliminar
    4. podrias ayudarme a portarla soy un noob para portar roms

      Eliminar
    5. Todo lo que sé ya se encuentra publicado, por eso hice el tutorial lo más detallado posible.

      Eliminar
  4. HxGx
    recuerdas que yo abia publicado que abia areglado el error de la rom zenfone 2 del dialer aqui esta link: https://mega.nz/#fm/M5NCiD7S
    para que la descarges y la publiques pero antes de todo tendrian que usarla un betatester para ver que no aya mas errores porque con mi lanix s106 no hubo problema

    ResponderEliminar
    Respuestas
    1. http://www.mediafire.com/download/5behtgqbetnvjax/ZenFone2.zip ese es el enlace

      Eliminar
    2. Gracias, ya actualice el enlace de descarga.

      Eliminar
  5. no la puedes descargar mm la subire a mediafire aver si puedes

    ResponderEliminar
  6. http://www.mediafire.com/download/wzg7e38s58v8le8/ZenFone2.zip

    al parecer si apagabas la el equipo despues de instalar la rom de zenfone 2 se volvia a terner el bug del lockscreen
    esa link ya no tiene el bug

    ResponderEliminar
  7. Hola.
    ¿Podrías subir un tutorial para portar roms 5.1.1?
    He visto otros tutoriales pero quiero uno definitivo y supongo que se debe tener consideraciones especiales para este modelo de celular.
    La ROM que quiero portar es esta: http://www.mtkroms.com/2016/02/bugless-resurrection-remix-for-mt6572.html

    ResponderEliminar
    Respuestas
    1. Pues de hecho utilizo el de esa pagina para portar las roms 5.1 y hasta la fecha me ha funcionado.

      Eliminar

Su comentario tiene que ser aprobado, no es necesario que lo publiquen más de una vez.

Al reportar un error den todos los detalles posibles, de lo contrario no se publicará.