Motorola Dext, Android, Root

Acabas de comprarte un Motorola Dext de Movistar España (o quizás en otro pais u con otro operador) y estas leyendo cosas de rootear, flashear,… Por un lado te interesaria probar, pero por otro estas asustado, porque se manejan terminos que te suenan a chino! Asi me sentia yo tambien al principio :-D.

En este articulo intento explicar, para los que son nuevos en esto, algunos conceptos y términos que he aprendido poco a poco, leyendo en los foros, y preguntando a los gurus de Android y Dext, y que espero puedan aclararos las cosas. No soy un experto en el tema. Expongo aqui cosas tal y como las entiendo, intentando poner referencias cuando las tengo. No soy responsable de lo que hagais con vuestro telefono.

Motorola Dext

Motorola Dext

Primero, antes de flashear, rootear y trastear con el telefono, algunos consejos:

  • Flashear el telefono, instalar Roms y demas conlleva un riesgo de cargarse el teléfono.
    Por info, en ese caso, tu teléfono se convierte en lo que llaman en ingles un “brick” (ladrillo). Es algo que ninguno esperamos que nos pase jamas.
  • Para evitar briquear su teléfono, recomiendo leer, leer mucho los foros, preguntar siempre que tienes duda, pues la gente siempre intenta ayudar.
  • Antes de seguir un tutorial en un foro: leer todos los comentarios que pone la gente (pueden ser muchas paginas) y una vez convencido, seguir cuidadosamente las instrucciones que pone el autor.

Hacer backup:

  • Backup de aplicaciones, datos y configuraciones (APN,…): Recomiendo instalar desde el Market la aplicacion Titanium Backup (free) . Si hacemos un wipe, nos permitira restaurar todo despues.
  • Una vez hayamos instalado una custom recovery (ver mas adelante), hacer un backup “nandroid”: es un backup de todas las particiones (ver mas adelante) del telefono.

Particiones del telefono:

El telefono tiene varias particiones (hablo del telefono, no la SD que es otra cosa).

C:\> adb shell cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00300000 00020000 "boot"
mtd1: 08ac0000 00020000 "system"
mtd2: 0df80000 00020000 "userdata"
mtd3: 00040000 00020000 "misc"
mtd4: 00500000 00020000 "recovery"
mtd5: 06000000 00020000 "cache"
mtd6: 00080000 00020000 "splash"
  • boot: el kernel, del que bota en modo normal
  • system: el sistema operativo Android (y aplicaciones de sistema) que se monta (en solo lectura) en modo normal
  • userdata: se monta (en lectura/escritura) en modo normal, van ahi las configuraciones de las aplicaciones y los datos nuestros
  • recovery: es el mini-sistema que se bota cuando arrancas en modo recovery (power+camara).

El telefono tambien tiene un bootloader (SPL) y una radio.

Modos de arranque del Dext:

Se puede arrancar el Dext de varias maneras, segun lo que necesitemos:

  • Modo normal: al arrancar el telefono pulsando el boton power
  • Modo recovery: pulsando el boton power + camara, despues cuando aparezca la opcion, plusar volumen down
  • Modo usb bootloader int: pulsando el boton power + menu (tecla de los 4 cuadritos), para flashear desde RSD Lite.

Requisitos para conectarse al telefono:

Drivers de Motorola, RSD Lite y ADB, todo instalado y  funcionando. Esta guia en M3 tiene links y explica la instalacion de los programas. Leerla bien y seguirla atentamente.

SHX y Custom Recovery:

Los SHX son ficheros que se flashean en el telefono con el programa RSD Lite de Motorola desde el PC. Por ahi se pueden encontrar archivos SHX (grandes, >100-150 MB) que incluyen en general una Custom Recovery y tambien te flashean un sistema entero (algunos incluyen incluso la radio, bootloader,… los llaman firmwares). No recomiendo flashear estos, al menos al principio.

Tambien existen SHX mas pequeños (8-15MB) que solo incluyen una custom recovery. En mi opinion es mejor inicialmente flashear una custom recovery solo. Es lo que hice yo: flashee la Amon_RA 1.5.2 (descargar aqui Boot + Amon_RA Recovery SHX) que esta en el tutorial de TheDudes en M3 (aqui viene mas info de las opciones que tiene esta recovery).

Una vez flasheada con RSD Lite, sigues con tu telefono funcionando igual, porque no se ha tocado ni el sistema (system) ni tus datos/app (data). Solo la recovery.

Para quien este un poco familiarizado con el mundo linux/unix, la recovery del telefono es algo como un segundo sistema mas pequeño (que permite hacer tareas de mantenimiento sobre las demas particiones. Botar de recovery seria un poco como botar de un liceCD en un PC.

Como ejemplo de cosas que se pueden hacer desde una custom recovery (tambien depende de la recovery que flasheemos, claro):

  • hacer un backup full del telefono (todas las particiones, con nandroid),
  • restaurar un backup (no he probado),
  • aplicar un update.zip (otra ROM) sobre system,
  • hacer un wipe de la data y/o de la cache…

Custom Recovery Amon_RA

La stock Recovery de Motorola (stock = que viene por defecto), no se si permite hacer muchas cosas. Al arrancar con ella sale un icono de un triangulo de atencion y no hay mas opcion en la pantalla. Sin embargo, por ahi encontre algunas opciones:

  • alt-w: wipe (restore factory settings)
  • alt-l: verbose boot? (no estoy muy seguro)
  • alt-s: instalar el fichero update.zip en la raiz de la SDcard (pero no se si cualquier update.zip vale o solo los que esten firmados por Motorola)

Con la custom recovery flasheada en el telefono, ya podriamos rootearlo sin instalar ninguna rom de otro operador (es decir que seguimos con nuestra Rom original, solo que le añadimos el root). Bastaria con botar en modo recovery, hacer un adb remount (para remontar el /system en read-write) y hacer un push del binario su e instalar Superuser.apk (lo que hace el bat en este zip).

adb push bin/su /system/bin
adb shell chmod 4755 /system/bin/su
adb uninstall koushikdutta.superuser
adb install bin/Superuser.apk

De hecho, si no alteramos el system (stock), tras botar de nuevo el telefono en modo normal, y rebotarlo de nuevo se flasheara de nuevo la stock recovery (al apagarse, el sistema original incluye en la particion /system la imagen de la recovery stock y la aplica antes de apagarse). Es bastante interesante! Si nos interesa guardar la custom recovery que hemos instalado (y que no se borre en el siguiente reinicio), podemos mover la /system/recovery.img a /system/recovery.img.stock, asi si queremos restaurarla podremos hacerlo mas tarde (devolviendole su nombre original).

Roms y update.zip:

Ademas de los SHX ,existen ficheros update.zip que son ROMs que se flashean desde una custom recovery. Mas tarde pondre un pequeño articulo sobre las Roms que existen ahora para el Dext. Hay que copiar el .zip en la raiz de la tarjeta SD, botar en modo recovery, seleccionar el zip y despues apply update.zip. Eso (segun el update.zip) formatea system, cache y descomprime el zip y copia cada fichero donde toca. El update.zip no toca la recovery (que yo sepa).

Metodo TheDudes:

Yo segui el metodo de TheDudes: el tutorial asusta al principio porque son muchos pasos (y mas de 50 paginas de comentarios), pero en realidad es muy sencillo (pero hay que seguirlo bien, si acaso leerlo 2 o 3 veces!). Resumiendo (no pongo aqui todos los pasos):

  • Flashee la custom recovery Amon_RA 1.5.2 (flasheando el SHX correspondiente con RSD Lite por USB),
  • Hice un backup Nandroid,
  • Luego instale la ROM rooteada de “The Dudes CliqCake v0.4.1. T-Mobile US, Blur Version 1.1.31″, aplicando el update.zip correspondiente, copiado en la SD, directamente desde la custom recovery.

Respecto a las configuraciones y aplicaciones, en mi caso no perdi nada! Al botar pude ver que se habia mantenido el fondo de pantalla, mis aplicaciones instaladas, incluso los accesos directos en el escritorio. por supuesto tambien las configuraciones de cada aplicacion y mis datos, tampoco se perdieron. Asi que bien (en realidad es asi porque en el procedimiento no se hace “wipe” del telefono, lo dice al principio “This should not wipe your phone.”. En su momento no lo entendi, pero ahora se que eso significa que no pierdes tus datos/config.

Lo que si cambia o se pierde (pero no es grave):

  • tonos, creo que ya no esta el tono de movistar
  • algunas aplicaciones de sistema (ya no esta mstore (de movistar), shazam). En mi caso Shazam me gusta, así que la reinstale del market
  • las imágenes del boot customizado, tendras las de t-mobile (y no el M (moco) de movistar) ;-), o bien un custom boot hecho por el modder.

Casi todo eso se puede volver atras en realidad, siendo root ya puedes volver a colocar las aplicaciones/tono/bootscreen originales… pero no entro en eso ahora.

¿Que aportan las Roms rooteadas?

Una cosa interesante de flashear esas Roms rooteadas, ademas de tener el root, es que, en españa, Movistar ha dejado la version de Motoblur 1.1.7 (algunos vienen incluso con la 1.1.5!), mientras que Motorola subio a la version 1.1.31 en USA (T-Mobile). Tambien salio una version 1.3.18 hace poco, que incluye una nueva radio y nuevo bootloader (ojo con esta version).

La version 1.1.31 añade mejoras:

  • Update to Motoblur version 1.1.31, with some particularly interesting improvement in battery management amongst other things.
  • Creo que tambien habilita el bloqueo de telefono por codigo grafico (al menos no conseguia habilitarlo con la rom de Movistar)
  • En la galeria de photos, se puede pasar de una a otra pasando el dedo (touch-slidding), creo que con la Rom de Movistar no se podia.

Por info, abrí yo un thread en el foro de soporte de motorola sobre el tema de la actualizacion de 1.1.7 a 1.1.31 en España.

Las versiones basadas en 1.3.18 aportan de nuevo mejoras en el ahorro de bateria (si que se nota, la bateria aguanta mucho mas!)

Miedos y dudas:

  • Un miedo que tenia era que al flashear con una rom de T-mobile el Dext quedara “lockeado” para T-Mobile y no funcionara con Movistar; no es asi, el telefono sigue funcionando bien con Movistar (y también sigue lockeado con Movistar)
  • Otro miedo era el tema del 3G (tarifa de datos): en mi caso no perdi ni siquiera la configuracion del APN, tras instalar la nueva ROM seguia el telefono configurado con el APN de movistar y sigue funcionando bien el 3G. De todas formas habia hecho un backup con “APN Backup & Restore” (esta en el Market). OJO, con las Rom 1.3.xx y la nueva radio no funciona el 3G en Mexico y Brasil.

Pues nada, espero haber contestado a vuestras preguntas. Cualquier duda me decis. Si os interesa seguirme, estoy en twitter, @adumont. Podeis consultar tambien esta pagina donde he colgado links y demas informacion de interes sobre el Dext. Empeze a escribir este articulo hace tiempo, asi que ahora ya he instalado otra Rom, la Handler 1.3.1 de HandlerExploit.

Motorola Dext: Versión del Sistema, Rom, Radio…

En el Motorola Dext, con Sistema Operativo Android, podremos ver información clave del sistema desde la pantalla “Acerca del teléfono“. Entre otras cosas se puede resaltar:

  • Versión del sistema: En un Dext esto nos dice la versión de Motoblur, en el mio tengo: Blur_Version.1.3.18.MB200.T-Mobile.en.US
  • Version del firmware: en el mio aparece Handler 1.3.1-quickpatch, es la Rom que tengo instalada
  • Version de banda base: es la versión de Radio que tiene tu teléfono.
    El mio tiene la 76XXC-63805025-SDCBALUM, que viene con la actualización 1.3.xx.
    La radio original del Dext/Cliq es la 76XXC-63805012-SDCBALUM (Motoblur 1.1.xx).

Se llega a esta pantalla desplegando el menu de aplicaciones, y luego:

  1. Config.
  2. Acerca del teléfono

Update 2010-03-09: Tambien se puede ver la version de la radio con:

C:\>adb shell
#  getprop gsm.version.baseband
76XXC-63805025-SDCBALUM
# getprop | busybox grep build
[ro.build.id]: [CUPCAKE]
[ro.build.display.id]: [CUPCAKE.1.3.18]
[ro.build.version.incremental]: [1.3.18]
[ro.build.version.sdk]: [3]
[ro.build.version.release]: [Handler 1.3.1-quickpatch]
[ro.build.date]: [Fri Feb  5 16:14:59 CST 2010]
[ro.build.date.utc]: [1265408099]
[ro.build.type]: [user]
[ro.build.user]: [build01]
[ro.build.host]: [il93lnxebld13]
[ro.build.tags]: [ota-rel-keys,release-keys]
[ro.build.product]: [morrison]
[ro.build.description]: [morrison-user 1.5 CUPCAKE 1.3.18 ota-rel-keys,release-keys]
[ro.build.fingerprint]: [blur/morrison/morrison/morrison:1.5/CUPCAKE/091111:user/ota-rel-keys,release-keys]
[ro.build.version.full]: [Blur_Version.1.3.18.MB200.T-Mobile.en.US]
[ro.build.config.version]: [GAS_NA_MORRISONTMB01NA_P036]
[ro.build.config.date]: [Fri Feb 05 15:57:39 -0600 2010]

Política de suspensión de Wi-Fi en Android

Hace poco descubrí que en las configuraciones de Wi-fi del Android, hay opciones avanzadas, una de la cual permite cambia la “Política de suspensión”.

Por defecto, cuando el teléfono se pone en modo suspensión (standby), el wifi se corta, y entonces vuelve a tirar del 3G.

Con esta opción puedes hacer que si estas conectado a una red Wifi, no se corte aunque la pantalla se apague.

Para llegar al menú de opciones avanzadas, hay que seguir estos pasos:

  1. Ajustes
  2. Conex. Inalámbricas
  3. Configuración de Wi-Fi
  4. Pulsar la tecla [Menú]
  5. Avanzado
  6. Política de suspensión de Wi-Fi

wifi-advanced1

Ahí aparecerán 3 opciones:

  • Cuando la pantalla se apague (pode defecto)
  • Nunca si está conectado
  • Nunca

wifi-advanced2

Generate bit.ly short URL from Zoho Creator

I wanted to be able to post links to my twitter timeline from my Zoho Creator Personal TV Series web app.

Bit.ly API key

Bit.ly API key

A popular site to generate short URLs suitable for Twitter is Bit.ly. Once you register for a free account, you get an API key that you’ll be able to use to call bit.ly from another application.

In my case I create a Zoho Creator Deluge Script function to generate a shot URL from any given URL passed as an argument. The code is pretty easy, and self explanatory:

  • First set two variables, with my API key and bit.ly user name,
  • Then submit the encoded URL to get shorten
  • Then, using some XPATH magic, we extract the short URL from the response!
string shortenURL(string URL)
{
   Bitly_API_Key = "R_HereGoesYourAPIkey";
   Bitly_Login = "MyLogin";
   Bitly_Resp = getUrl("http://api.bit.ly/shorten?version=2.0.1&longUrl=" + encodeUrl(input.URL) + "&login=" + Bitly_Login + "&apiKey=" + Bitly_API_Key + "&format=xml");
   shortURL = Bitly_Resp.executeXPath("/bitly/results/nodeKeyVal/shortUrl/text()");
   return shortURL;
}

Sun Cluster con Zonas no-globales

La idea detras de este post es consolidar varios clusters de 2 nodos  Solaris 10, usando zonas. Los servicios balancean de una zona de una maquina a otra zona de otra maquina. Otro planteamiento (que no explico aqui) podria ser conmutar la zona entera (mas lento debido a que hay que levantar una zona antes del recurso).

Escribi esta chuleta hace casi 2 años cuando monte un cluster SC3.2 con resource group Oracle corriendo en 2 zonas no-globales, para un entorno productivo en una Telco. Lo publico esperando que resulte interesante. No entra demasiado en los detalles tecnicos, sino que es mas conceptual.

Ejemplo: 2 proyectos cada uno con su cluster, sin consolidar:

  • Proyecto A, 2 maquinas, pa01 y pa02, con Sun Cluster, con un grupo de recursos A-rg :
       +-------+ pa01     +-------+ pa02
       | A-rg  |          |   .   |
       +-------+          +-------+
  • Proyecto B, 2 maquinas, pb01 y pb02, con Sun Cluster, con dos grupos de recursos B1-rg y B2-rg:
       +-------+ pb01     +-------+ pb02
       | B1-rg |          |   .   |
       |   .   |          | B2-rg |
       +-------+          +-------+

Consolidamos asi:

  • 2 maquinas fisicas, m1 y m2, con Sun Cluster,
    • pa01 y pb01: zonas no globales de m1
    • pa02 y pb02: zonas no globales de m2
           m1                     m2
   +------------------+   +------------------+
   |                  |   |                  |
   |   +-------+ pa01 |   |   +-------+ pa02 |
   |   | A-rg  |      |   |   |   .   |      |
   |   +-------+      |   |   +-------+      |
   |                  |   |                  |
   |   +-------+ pb01 |   |   +-------+ pb02 |
   |   | B1-rg |      |   |   |   .   |      |
   |   |   .   |      |   |   | B2-rg |      |
   |   +-------+      |   |   +-------+      |
   |                  |   |                  |
   |Solaris 10 - SC3.2|   |Solaris 10 - SC3.2|
   +------------------+   +------------------+

Podemos aplicar management de recurso a las zonas –> containers.

Para montar esto, primero hay que montar las 2 maquinas, como si fueran a ser un cluster de 2 maquinas normales, instalar SC3.2.

Despues creamos las zonas.

Hay que entender que no se trata de 2 clusters de 2 nodos, sino de un cluster de 2 nodos, con 4 zonas.

A la hora de crear los usuarios, fs y demas, crearlos en las zonas, no en las maquinas fisicas.

Para el montaje de los FS locales de cada zona (/var, /opt/oracle,…) , ver Zones/fs.txt.

A la hora de crear los RGs, con clsetup, añadiremos las zonas donde corran, no los nodos, es decir:

   A-rg : NodeList = m1:pa01, m2:pa02

   B1-rg: NodeList = m1:pb01, m2:pb02
   B2-rg: NodeList = m2:pb02, m1:pb01

Los FS de los RGs se deben de montar en la zona global, en un path que no sea bajo el zonepath de ninguna zona.

Por ejemplo:

El A-rg necesita los FS:

   /A/scripts
   /A/BD/C1
   /A/BD/C2
   /A/BD/C3
   /A/BD/a00
   /A/BD/i00
   /A/BD/r00
   /A/BD/s00
   /A/BD/s01
   /A/BD/s02
   /A/BD/t00

Hay que poner los FS de los RGs en el /etc/vfstab de los dos nodos m1 y m2 (en la zona global), ya que SC3.2 los montara primero en la zona global antes que en la zona no-global.

Por ejemplo:

   m1:/etc/vfstab
   ...
   # A-rg
   /dev/vx/dsk/A-dg/lvscripts /dev/vx/rdsk/A-dg/lvscripts /A/scripts vxfs 2 no log
   /dev/vx/dsk/A-dg/lvbdc1    /dev/vx/rdsk/A-dg/lvbdc1    /A/BD/C1   vxfs 2 no log
   /dev/vx/dsk/A-dg/lvbdc2    /dev/vx/rdsk/A-dg/lvbdc2    /A/BD/C2   vxfs 2 no log
   ...

En las zonas donde vaya a correr el RG en cuestion, se deben de crear unicamente los correspondientes puntos de montage:

   /A/scripts
   /A/BD/C1
   /A/BD/C2
   /A/BD/C3
   /A/BD/a00
   ...

En particular, no es necesario poner nada en el vfstab de las zonas no globales.

Otro planteamiento podria ser conmutar la zona entera (mas lento debido a que hay que levantar una zona antes del recurso).



Close
Powered by ShareThis