[Aporte] Explotando tu Moto Rokr E2

Ver el tema anterior Ver el tema siguiente Ir abajo

[Aporte] Explotando tu Moto Rokr E2

Mensaje  MauryZyo el Dom 20 Abr 2008, 13:52

*****************************************************************
Este tutorial fue extraido de ICEnetX
creado por gaper
*****************************************************************



Cuando adquirí mi Moto Rokr E2 me di cuenta de que hay muy mala documentación para usar este
teléfono en linux y sacarle muy buen provecho por lo que aquí les va la mía. Este teléfono cuenta con
JUIX, distribución de linux creada por motorola, por lo que el aparatito no puede ser mas compatible
que con linux, de hecho hay cosas q no podrás hacer en windows con este móvil.


Características
● Peso (gr.): 100 g
● Pantalla: interno colorido (262.000 colores) TFT, de 320 x 240 pixels
● Procesador Xscale de 300mhz
● Memoria interna hasta de 20 Mb y tarjeta de expansión SD de 1GB incluida.
● Entrada estándar de 3,5mm para auricular estéreo o bocinas.
● Reproductor MP3 de muy buena calidad
● Cámara de 1.3 Mega Pixeles.
● Bluetooth.
● Sistema Operativo Linux (JUIX)


Sistema operativo Linux

El sistema operativo que el Moto Rokr E2 tiene instalado es GNU/Linux, una distribución creada por
motorola especialmente para sus teléfonos, esta distro es llamada JUIX y básicamente es la mezcla de
linux y java, al tratarse de open source puedes descargar aquí el código fuente del sistema:
https://opensource.motorola.com/sf/sfmain/do/home .

El paquete gap the rokr

Abajo en "Archivos necesarios"

Contenido del paquete:

Sofware
● inetd: Monta un servidor Telnet
● 33swapmem: Acelera tu Rokr E2 y evita que se cuelgue
● busybox: Agrega mas comandos a tu consola
● vim: Editor de textos en consola


Aplicaciones Java

● I see your files: Muestra archivos por de otros dispositivos por bluetooth.
● global_timer: Reloj Mundial que nos permite navegar por un mapa.
● Antignat: Produce sonidos que espantan a los mosquitos.
● Btmessage: Un programa para enviar mensajes por bluetooth.
● IMC: Le indicas tu estatura y tu peso y te dice si es correcto, te sobra o falta xD.
● EQOS: Mensajeria por Skype/MSN/yah*o/Jabber ...
● Wlirc: Cliente de IRC.
● Linterna: No se puede usar el flash como lampara en el rokr, este programa solo ilumina la
pantalla.
● Midpssh: Cliente SSH/Telnet.
● Photoblaster: Decora fotos en tu Rokr.
● Word: Un intento de MS Word para rokr, sirve como editor de textos en el móvil, bueno ya es
algo xD.

BootSplash

● Redhat: Splash estilo KDE con el logo de redhat
● Motorola: Boot Splash que muestra la carga de una pseudo consola y el logo de Motorola
Conectando mi Rokr a la PC
Este teléfono acepta 3 tipos de conexión con la PC por el cable USB:
● Tarjeta de Memoria: Nos permite acceder al contenido de la tarjeta SD.
● USB Net: Coloca el teléfono con una IP y podemos verlo como un nodo mas en la red.
● Modem: nos permite conectar la portátil o el pc a Internet por GPRS.

cl*ro a parte contamos con la conexión bluetooth pero esta se sale de nuestra guía ya que es algo que
cualquiera puede hacer.


Conexión con Tarjeta SD

Esto es muy sencillo nos vamos a Menu -> Prog -> Conexiones -> Programación de USB -> Tarjeta de
memoria, ahora solo necesitamos conectar nuestro rokr al puerto USB, si usamos alguna distribución
con automount, el telefono sera montado automáticamente, si no podemos hacer como root:
# mkdir /mnt/rokr
# mount /dev/sda1 /mnt/rokr
Si usaste este procedimiento notaras que no tienes permisos de escritura ya que lo montaste como root,
puedes hacer mas fácil el proceso de montado editando el /etc/fstab como root y agregando una linea que diga:

# mkdir /mnt/rokr
# mount /dev/sda1 /mnt/rokr

Si usaste este procedimiento notaras que no tienes permisos de escritura ya que lo montaste como root,
puedes hacer mas fácil el proceso de montado editando el /etc/fstab como root y agregando una linea
que diga:
/dev/sda1 /mnt/rokr auto user,noauto,rw 0 0
A partir de este momento el proceso de montado podrá hacerse como usuario normal e incluso sin escribir /dev/sda1:

$ mount /mnt/rokr

Para que tu celular sea reconocido en modo Tarjeta de memoria necesitas contar con él modulo usbstorage
de tu kernel. He probado este aparato en Ubuntu, Debian y Gentoo.


Conexión USB Net

Para lograr una conexión de red por usb en ubuntu y debian funciona sin hacer cambios al kernel, para
gentoo sera necesario contar con las siguientes opciones activadas en nuestro kernel, a parte del soporte
normal de USB que probablemente ya tengamos, para recompilar el kernel en gentoo hacemos:

# cd /usr/src/linux
# make menuconfig

Seleccionamos las opciones:
Device Drivers --->
USB support --->
USB Network Adapters --->
<M> Multi-purpose USB Networking Framework
<M> Sharp Zaurus (stock ROMs) and compatible



Salimos y tecleamos:
# make
# make modules_install
# cp arch/i386/boot/vzImage /boot/nombre_kernel
# reboot
Esto nos dejara soporte para red usb en nuestro flamante gentoo.



Instalando inetd

El paquete de Inetd nos levanta un servidor telnet que podremos acceder por medio de nuestra conexión
usb net, para instalarlo descargamos y descomprimimos el paquete inetd.zip el cual nos dejara 1
directorio llamado inetd que contiene 3 carpetas: sbin, .system y .cache. Los archivos y carpetas que
inician con un punto son archivos ocultos, es necesario colocar los 3 directorios en la raíz de la tarjeta
SD, una vez colocados desmontamos el celular y reiniciamos el teléfono.


Levantando una red USB Net

Primero que nada conectaremos nuestro celular al puerto USB, luego desde root teclearemos:
ibzon# ifconfig usb0 192.168.1.1 netmask 255.255.255.248 up
ibzon# exit
gaper@ibzon ~ $ ping 192.168.1.2
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=1.75 ms
64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=1.09 ms
64 bytes from 192.168.1.2: icmp_seq=3 ttl=64 time=1.13 ms
64 bytes from 192.168.1.2: icmp_seq=4 ttl=64 time=1.04 ms
64 bytes from 192.168.1.2: icmp_seq=5 ttl=64 time=1.09 ms
--- 192.168.1.2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 1.047/1.227/1.759/0.268 ms
gaper@ibzon ~ $


Ahora para sacar una shell activamos inetd desde el menú de nuestro teléfono y después de escuchar el
sonido que indica que inetd esta activado, podremos entrar desde telnet:
gaper@ibzon ~ $ telnet 192.168.1.2
Trying 192.168.1.2...
Connected to 192.168.1.2.
Escape character is '^]'.
MontaVista(R) Linux(R) Consumer Electronics Edition 3.1
Linux/armv5tel 2.4.20_mvlcee31-mainstone_pxa27x
(none)login: root

MontaVista(R) Linux(R) Consumer Electronics Edition 3.1
No directory /root!
Logging in with home = "/".
#


Podemos ver por ejemplo las características del procesador:

# cat /proc/cpuinfo
Processor : Intel XScale-PXA27x rev 7 (v5l)
BogoMIPS : 103.76
Features : swp half thumb fastmult edsp
CPU implementor : 0x69
CPU architecture: 5TE
CPU variant : 0x0
CPU part : 0x411
CPU revision : 7
Cache type : undefined 5
Cache clean : undefined 5
Cache lockdown : undefined 5
Cache unified : harvard
I size : 32768
I assoc : 32
I line length : 32
I sets : 32
D size : 32768
D assoc : 32
D line length : 32
D sets :32


Hardware : Motorola Ezx Platform
Revision : 0000
Serial : 0000000000000000
#

Te darás cuenta de que tenemos un sistema linux clásico:
# ls /
bin etc ezxlocal lib proc sbin usr
dev ezx_user home mmc ram tmp var
#
Desgraciadamente con nuestra sesión telnet no podremos autocompletar comandos ni tendremos
historial ni nada por el estilo, ademas aun que seamos root no podremos modificar muchas partes del
sistema ya que no son modificables.


Acelerando el Rokr E2

Parte importante de la arquitectura de linux es el swapping, una partición en el disco duro dedicada a
apoyar a la memoria ram cuando esta se termina, un sistema linux sin swap se puede colgar fácilmente
a menos que cuente con mucha ram, nuestro rokr tiene 5mb y no tiene swap, esto hace que muchos
usuarios lo consideren malo ya que se les traba en ocasiones. Hay dos formas de swapear en nuestro
rokr, creando una particion swap en la SD o creando un archivo swap de 12mb en la SD. Vamos a
explicar nuestra segunda opción.
Primero descomprimimos el archivo 33swapmemory.zip en nuestra tarjeta SD, en el directorio
.system/QTDownLoad/ y editaremos el archivo: .system/QTDownLoad/33swapmem/33swapmem.lin y cambiaremos:

mypath=`echo $0 | sed -e 's/'$myfile'//g'`
por
mypath=/mmc/mmca1/.system/QTDownLoad/33swapmem

Ahora lo agregaremos al menu, editaremos el archivo .system/java/CardRegistry colocando lo siguiente
al final:
[fa2b0132-bf34-f197-9df7-ee95da5dbf80]
AppID = {fa2b0132-bf34-f197-9df7-ee95da5dbf80**
Args =
Attribute = 4
BigIcon = 33swapmem.png
Daemon = 0
Directory = 33swapmem
Eraseable = 1
Exec = 33swapmem.lin
FixedAllPosition = 0
FixedPosition = 0
GroupID = ezx
Icon = 33swapmem_sm.png
InstalledDate = 2007/3/28
JavaId = -1
LockValue = 0
MassStorageStatus = 1
MpkgFile =
Name = Swapping
OsVersion = 1.0
Rotation =
Shared = 0
Size = 624B
Type = 2
UserID = ezx
Visible =1


Reiniciamos nuestro teléfono y listo, tendremos un nuevo icono en nuestro menú principal con un chip
Very Happy, cuando lo activemos escucharemos un ruidito (tic) esto quiere decir que ahora el teléfono esta
swapeando. Cuando prendas tu teléfono no olvides swapear para mejorar el rendimiento.
Nota importante: Respalda el archivo CardRegistry ya que a veces se nos borra inetd y la opción de
swapping de nuestro menú principal del teléfono, te recomiendo no instalar aplicaciones java en la
tarjeta ya que hace difícil manejar este archivo he incluso desde mi punto de vista siento q pierdo el
control de mi teléfono. De todas formas tengo 20mb y las aplicaciones pesan 100kb, pero tu decides.


Agregando VIM a nuestro teléfono y otros comandos útiles

Realmente usar VIM desde una consola telnet en nuestro teléfono es algo incomodo, también lo es usar
esta consola por muchas razones, pero nos sera mas útil tenerlo que no tenerlo.
Para instalar vim descomprimiremos el archivo vim_sd.tar.gz el archivo tiene una carpeta
mmc/mmca1/usr, copiaremos usr a nuestra tarjeta SD con el nombre sbin.
Ahora descomprimimos el paquete busybox.zip y copiamos el archivo busybox a sbin/bin/ dentro de
nuestra tarjeta de memoria, este binario agrega muchos comandos útiles, por ejemplo top.
Ahora cuando entremos por telnet podemos teclear:

# PATH=$PATH:/mmc/mmca1/sbin/bin

Y tendremos muchos comandos disponibles y ademas podremos usar vim con solo teclear vim archivo,
para usar busybox tecleamos busybox comando, para una lista completa de comandos solo necesitamos
teclear busybox. Un ejemplo:

# busybox uname -a
Linux (none) 2.4.20_mvlcee31-mainstone_pxa27x #1 Jan 1,2003 armv5tel unknown
# busybox free
total used free shared buffers
Mem: 46396 44496 1900 0 992
Swap: 12280 252 12028
Total: 58676 44748 13928
#


Cambiando el boot splash

No puedo imaginar un teléfono con linux sin un bootsplash de linux jaja, el q tiene en mi caso dice
telc*l Sad asi que lo cambie. Dentro del paquete rokr like gaper que descargaste de la web de icenetx,
encontraras 2 temas de bootsplash, el que yo seleccione fue el de redhat, pero el otro no es malo.
Selecciona la pareja que mas te guste y cópiala a la tarjeta de memoria, en lo Person*l las metí en
sbin/bootsplash/ para que no estorbaran, también puedes meterlas al teléfono. Después conéctate por
telnet y entra al directorio /ezx_user/download/appwrite/setup/theme, encontraras 2 archivos ahí
themefiles.cfg y User_0.chm dependiendo de tu firmware puede ser que necesites editar los 2, en mi
caso solo edite User_0.chm, lo importante como siempre es hacer una copia:
# cd /ezx_user/download/appwrite/setup/theme
# cp themefiles.cfg /mmc/mmca1/sbin/themefiles.cfg.bak
# cp User_0.chm /mmc/mmca1/sbin/User_0.chm.bak
# vim User_0.chm
Aquí buscaremos las variables PowerOffScreen y PowerOnScreen, cada una controla el boot splash de
apagado y arranque y las cambiamos:


PowerOffScreen = /usr/data_resource/poweroff/URL.gif
por
PowerOffScreen = /mmc/mmca1/sbin/bootsplash/tuxoffzp5.gif
y
PowerOnScreen = /usr/data_resource/poweron/telc*l.gif
por
PowerOnScreen = /mmc/mmca1/sbin/bootsplash/tuxonjn7.gif

Guardamos y reiniciamos, si no nos funciona verificamos el archivo themefiles.cfg y buscamos algo
parecido, pero si lo encontramos quiere decir q nuestro firmware nos permite hacer esto directamente
editando el tema en el telefono.
Ahora si tenemos un bootsplash que se ve genial.




Aplicaciones Java

No voy a describir cada una de las aplicaciones Java que se incluyen en el paquete gap the rokr, para
instalarlas cópialas a tu tarjeta SD, entra con el administrador de archivos a tu tarjeta y dale doble click
con el stick al programa que quieras instalar, todas las aplicaciones han sido probadas y funcionan en el
rokr.


Archivos adjuntos.:


Link Pdf

Archivos necesarios:


Gap


Lo descomprimen con el Winrar es un rar




Saludos.!
avatar
MauryZyo
Administrador
Administrador

Cantidad de envíos : 76
Fecha de inscripción : 14/04/2008

Ver perfil de usuario

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.