Android · Gadgets · Ubuntu

Rooteando la Energy Sistem i828 HD ICS 4.0.3

Recientemente ha sido mi cumple y mi novia (muchas gracias cariño 🙂 ) me ha regalado la Tablet Energy Sistem i828 HD de 8 GB que venía preinstalada con Android 2.3.1 y un Launcher que «imita» ICS (necesario porque solamente tiene el botón físico de Home, nada de botón de retroceso ni de opciones). Afortunadamente el día 10/05/12 salió la actualización a ICS 4.0.3. Tas descargar e instalar la actualización siguiendo las instrucciones disponibles en la página de soporte oficial toca rootear el dispositivo para poder tener acceso total al mismo.

El problema es que si conectamos la tablet al ordenador usando el puerto USB y ejecutamos el comando adb devices nos encontraremos con que nuestro dispositivo no es reconocido:

$ adb devices
List of devices attached

Esto, en principio, lo podemos solucionar en Ubuntu de un modo sencillo. Tenemos que añadir una línea en el fichero /etc/udev/rules.d.

La línea a añadir en el fichero depende del fabricante y el modelo del dispositivo. Podemos averiguar el Vendor ID y el Product ID del dispositivo ejecutando (tras haberlo conectado al USB, claro):

$ lsusb
Bus 002 Device 021: ID 2207:0000

Lo que indica que el Vendor Id es «2207» y el Product ID es «0000«.

Vamos a hacerlo paso por paso:

  1. Habilita Origenes desconocidos y Depuración USB
    Vete a Asjustes -> Seguridad y marca el checkbox Orígenes desconocidos, luego vete a Opciones de desarrollo y habilita la Depuración USB.
  2. Crea/edita un fichero en /etc/udev/rules.d llamado 51-android.rules:
    $ sudo gedit /etc/udev/rules.d/51-android.rules
    Añadimos la siguiente línea y lo guardamos
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»2207″,MODE=»0666″,GROUP=»plugdev»
    Debería quedar algo así:

    #Acer
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0502″,MODE=»0666″,GROUP=»plugdev»
    #ASUS
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0b05″,MODE=»0666″,GROUP=»plugdev»
    #Dell
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»413c»,MODE=»0666″,GROUP=»plugdev»
    #Foxconn
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0489″,MODE=»0666″,GROUP=»plugdev»
    #Garmin-Asus
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»091E»,MODE=»0666″,GROUP=»plugdev»
    #Google
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»18d1″,MODE=»0666″,GROUP=»plugdev»
    #HTC
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0bb4″,MODE=»0666″,GROUP=»plugdev»
    #Huawei
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»12d1″,MODE=»0666″,GROUP=»plugdev»
    #K-Touch
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»24e3″,MODE=»0666″,GROUP=»plugdev»
    #KT Tech
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»2116″,MODE=»0666″,GROUP=»plugdev»
    #Kyocera
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0482″,MODE=»0666″,GROUP=»plugdev»
    #Lenevo
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»17EF»,MODE=»0666″,GROUP=»plugdev»
    #LG
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»1004″,MODE=»0666″,GROUP=»plugdev»
    #Motorola
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»22b8″,MODE=»0666″,GROUP=»plugdev»
    #NEC
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0409″,MODE=»0666″,GROUP=»plugdev»
    #Nook
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»2080″,MODE=»0666″,GROUP=»plugdev»
    #Nvidia
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0955″,MODE=»0666″,GROUP=»plugdev»
    #OTGV
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»2257″,MODE=»0666″,GROUP=»plugdev»
    #Pantech
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»10A9″,MODE=»0666″,GROUP=»plugdev»
    #Philips
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0471″,MODE=»0666″,GROUP=»plugdev»
    #PMC-Sierra
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»04da»,MODE=»0666″,GROUP=»plugdev»
    #Qualcomm
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»05c6″,MODE=»0666″,GROUP=»plugdev»
    #Rockchip
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»2207″,MODE=»0666″,GROUP=»plugdev»
    #SK Telesys
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»1f53″,MODE=»0666″,GROUP=»plugdev»
    #Samsung
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»04e8″,MODE=»0666″,GROUP=»plugdev»
    #Sharp
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»04dd»,MODE=»0666″,GROUP=»plugdev»
    #Sony Ericsson
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0fce»,MODE=»0666″,GROUP=»plugdev»
    #Toshiba
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»0930″,MODE=»0666″,GROUP=»plugdev»
    #ZTE
    SUBSYSTEMS==»usb»,ATTRS{idVendor}==»19D2″,MODE=»0666″,GROUP=»plugdev»

  3. Reinicia udev
    $ sudo restart udev

En este punto adb ya debería reconocer nuestro dispositivo, pero no es así. Esto se debe a que la versión de adb incluida en el SDK de Android no «entiende» nuestro Vendor ID (no es un vendedor «reconocido oficialmente»).

Para solucionar esto hacemos lo siguiente:

  1. Crea/edita un fichero en $HOME/.android llamado adb_usb.ini:
    $ gedit $HOME/.android/adb_usb.ini
    Añadimos el siguiente contenido y lo guardamos
    # ANDROID 3RD PARTY USB VENDOR ID LIST — DO NOT EDIT.
    # USE ‘android update adb’ TO GENERATE.
    # 1 USB VENDOR ID PER LINE.
    0x2207

En este punto adb ya debería reconocer nuestro dispositivo:

$ adb devices
List of devices attached
0123456789ABCDEF device

Aunque aveces es necesario detener y arrancar el servidor adb:

$ adb kill-server
$ adb start-server

Ahora que nuestro equipo reconoce nuestro dispositivo vamos a rootearlo:

  1. Descargamos la herramienta Superuser (versión compatible con ICS) y extraemos la aplicación «Superuser.apk» y el binario «su» en, por ejemplo, /tmp.
  2. Instalamos su y Superuser:
    $ ./adb remount

    $ ./adb push /tmp/su /system/bin/su
    2568 KB/s (22364 bytes in 0.008s)

    $ ./adb push /tmp/su /system/xbin/su
    2843 KB/s (22364 bytes in 0.007s)

    $ ./adb push /tmp/Superuser.apk /system/app/Superuser.apk
    4593 KB/s (843503 bytes in 0.179s)

    $ ./adb shell chown 0.0 /system/xbin/su
    $ ./adb shell chmod 6775 /system/xbin/su
    $ ./adb shell chown 0.0 /system/bin/su
    $ ./adb shell chmod 6775 /system/bin/su
    $ ./adb remount
    remount succeeded
    $ ./adb reboot

Esperamos a que la tablet se reinicie y listo!

10 respuestas a “Rooteando la Energy Sistem i828 HD ICS 4.0.3

  1. Chaval, te adoro, acabo de adquirir una BQ Pascal 2 y tiene el mismo ID y no veía como activar la depuración en linux.

    Un millón de gracias, que Dios o quien sea te lo pague 😀

  2. CUando pongo «adb devices» en vez de decirme «List of devices attached» me dice otra cosa como que no conoce lo que es «adb». Hay que hacer algo previo a lo que explicas? instalar algo?

  3. Me puedes facilitar algun tutorial para instalar sdk? Otra cosa, desde ahora no dispondre de un ordenador con ubuntu instalado, se puede usar un live cd de ubuntu?

  4. Ufff imposible, no puedo instalar el sdk, me pide el java, librerias, y cosas que se escapan de mi alcance. Esperaré a ver si sale un metodo mas sencillo de rootear la tablet.

  5. Buenas.
    Ya veo que hay algunos problemas que no han sido contestados, en la ejecución de tu guía. Me voy a atrever a contestarlos, y luego comento mi duda.
    A LOS QUE NO RECONOCE adb: es porque no tenéis el fichero como ejecutable. Debéis cambiar sus permisos para que sea ejecutable. Es muy probable que tengáis que hacerlo como root, pero la forma rápida es «chmod 755 adb». Con eso, ya podréis ejecutarlo vía «./adb xxxxx»

    Ahora mi duda. Estoy usando un live-dvd de Ubuntu. He seguido los pasos, y salvo el restart de udev que en mi caso es «services udev restart», todo sin problemas. Salvo que no me reconoce el dispositivo… ¿Alguna idea? Muchas gracias.

  6. He intentado todo lo que decis. Pero no me detecta el dispositivo. Es posible hacerlo bajo windows? o de otra forma.

    Mil gracias.

Deja un comentario