29 julio 2013

[Guía Rápida] Bind4Swap - DirectoryBind para hacer swap de la memoria de Android

[Guía Rápida] [Guía Rápida] Bind4Swap - DirectoryBind para hacer swap de la memoria de Android




Uso de este artículo


Se permite utilizar este articulo, ya sea copiandolo entero o partes de el, o referenciándola mediante un link, a cualquiera que lo desee, con la única condición de que se mantenga el autor y un enlace a la fuente original de este artículo, y que se encuentra en mi blog.

Para actualizaciones sobre este artículo, sugiero visitar el enlace mencionado anteriormente



Manos a la obra


Si prefieres evitarte toda la parte del comienzo, que es donde explico un poco de que va todo esto, puedes ir directamente a la sección "Uso de DirectoryBind como reemplazo al SWAP de memoria".


Introducción


Siguiendo con mis articulos sobre manejo de directorios en Android [CIFS&BIND], hoy voy a generar esta entrada en mi articulo por que creo que es interesante el concepto, y por que asi puedo redireccionar desde mis otros artículos a éste, que este "cambio" de la sdcard se puede hacer casi en cualquier dispositivo y no es invasivo como podría ser modificar algún fichero del sistem (vold.fstab) que podría dejar nuestro dispositivo inutilizable si no se sabe bien que se está haciendo.

Para la mayoría de los usuarios Android, tanto los que son novatos como los que ya tienen algo de experiencia, en algún momento se han topado con el problema típico de que no hay espacio para instalar aplicaciones, y que nos sugiere liberar memoria.

No son pocos los que, en un intento ingenuo, compran una microSD y la insertan en el dispositivo, con la esperanza de solucionar el problema del espacio, pero el mensaje sigue apareciendo.

Esta guía intentará dar una alternativa para solucionar este problema.

Antes de empezar


Creo que es bueno explicar brevemente por que sucede este problema.

La mayoría de los dispositivos Android actuales, vienen con una memoria incluída y que, en la mayoría de los casos, será precisamente esta memoria las que nos dará dolores de cabeza.

Para explicarlo de forma rápida, la memoria de un dispositivo android se divide en varias partes (particiones), de las cuales, y para resumir, nos centraremos en las siguientes:
- Partición del sistema operativo (donde se instala Android)
- Partición de aplicaciones (donde instalaremos aplicaciones)
- Partición Flash de almacenamiento (lo que veremos como espacio libre para copiar ficheros)

  

Ahora, si vemos un dispositivo Android genérico, es típico que venga con una cantidad X de Gb de memoria, pero que en general creemos que es lo que tendremos disponible... pongamos el caso de una tablet X que viene con 8GB de almacenamiento interno. Cuando inspeccionamos el dispositivo, vemos que en realidad tenemos poco mas de 5GB de almacenamiento interno, y muchos usuarios no saben que es lo que pasa con el resto.

A estas alturas ya podemos imaginar lo que ha pasado. Una parte del almacenamiento se destina a las distintas particiones que necesita Android para funcionar, y que a su vez se subdivide en las distintas particiones como las que antes he comentado.

Por tanto, lo que vemos es lo que queda disponible una vez Android ha sacado lo que necesita para poder funcionar.

¿Como se instala una aplicación?


Antes de seguir, decir que no soy experto, pero las nociones que tengo creo que son válidas para dar una explicación a nivel de usuario y que podamos entender el concepto general de como se instala una aplicación en Android.

Cuando se instala una aplicación, ya sea del market, desde la microsd, etc. Esta aplicación se copia en alguna parte del sistema para que podamos acceder a ella.

Esta aplicación (su instalación) se instala generalmente en el área o partición definida para las aplicaciones, aunque también podría ir en otros sitios, como podría ser una aplicación de sisetma (por lo que iría en las aplicaciones de sistema), etc.


Cuando Android ha particionado la memoria y ha definido los tamaños de cada parte, en ese momento ha determinado que tamaño tendrá la partición de las aplicaciones que podemos instalar. Generalmente es una partición con espacio suficiente para instalar muchas aplicaciones (por ejemplo, 1GB como en la imagen anterior).

Las aplicaciones en general pesan poco, aunque hay excepciones. Una aplicación (apk) puede desde unos kb, a varios MB, aunque todo depende de como lo haya programado el desarrollador original, puesto que también pueden existir aplicaciones que ocupen 50, o incluso mas.



En la imagen anterior podemos ver los tamaños de algunas aplicaciones, y nos encontramos que juegos como Modernc Combat 4, por ejemplo, pesa 48KB, pero evidentemente este no es su peso real, sino que es simplemente el "lanzador" de la aplicación.

Como se puede entender hasta aquí, la instalación de aplicaciones tiene su primer problema potencial de falta de espacio a la hora de instalarlas normalmente en el área destinada para ellas. Si instalamos 20 aplicacoines android que pesan 50MB cada una, ya tendremos ocupada todo el espacio destinado por Android para instalar aplicaciones.



Afortunadamente, Android nos ofrece una "solución" para liberar espacio interno. Si vamos a Ajustes de Sistema -- Aplicaciones, y revisamos la pestaña "En Tarjeta SD", veremos que están listadas las aplicaciones que hemos instalado en Android, y que podemos marcar el checkbox que tienen cada una de ellas.

  


Cuando marcamos esta casilla, indicamos a Android que mueva este programa (apk) a un directorio especial en la microsd, y con esto librerar espacio interno para instalar aplicaciones.



Al realizar este movimiento, Android deja un enlace a este contenido (un link, o acceso directo para que nos entendamos) que en este caso pesa muy poco, mientras que la aplicación se aloja en la carpeta /mnt/sdcard/.android_secure/".



Nota: Algunas aplicaciones no permiten moverlas a la memoria sdcard. También hay que considerar que si movemos una aplicación que tenga Widgets (como HD Widgets, o Evernote, por poner un par de ejemplos), no podremos utilizar los Widgets si la aplicación está en sdcard. (los widgets solo funcionan si la aplicación esta instalada en la partición destinada a aplicaciones para android)

Datos de aplicaciones


Las aplicaciones Android, muchas veces se dividen en 2 partes, la primera que es la aplicación propiamente tal, y la segunda, los datos que utiliza la aplicación.

Tomemos el ejemplo de Modern Combat 4 (MC4). La APK de esta aplicación, una vez instalada, sólo pesa 48kb, y es evidente que este NO puede ser el peso total de este juego. Cuando lo instalamos desde el market, o lanzamos el apk instalado, la aplicación comienza a descargar los datos asociados al juego que en este caso es mas de 1GB. Estos datos se almacenan en varias carpetas, dependiendo de como esté programado y configurada la aplicación.


En el ejemplo del MC4, el juego descargará los datos de recursos que, en principio, tiene todas las "versiones" o "calidades" en las que se puede ejecutar el juego (calidad baja, media, alta). Estos datos se descargan en una carpeta del juego que se encuentra dentro de "/mnt/sdcard/Android/obb".

Para que nos entendamos en términos simples, las carpetas dentro del directorio "/Android/obb" serán para nosotros como los Instaladores de las aplicaciones. Cuando un juego necesita obtener una textura o modelo, o cualquier recurso, lo buscará en este directorio.

Ahora, existe otra carpeta importante, que es la "/Android/data", y que para que nos entendamos, será el directorio donde tendremos instaladas las aplicaciones, donde tendremos los recursos listos para usar, además de donde se guardarán en algunos casos las configuraciones, avances, etc, de algunos juegos.

Siguiendo con el ejemplo del MC4, cuando lo instalamos desde el market, se descargan los datos del directorio "/Android/obb/CarpetadeljuegoMC4", y una vez descargados, el programa determina, dependiendo de las características de nuestro dispositivo (memoria, GPU, tamaño pantalla, etc) que recursos son los que va a utilizar, y copia los ficheros correspondientes desde "obb", hasta la carpeta "/Android/data/CarpetadeljuegoMC4".

Una vez desempaquetado y copiado estos ficheros en "data", la aplicación comienza su ejecución.

He de decir que no existe una regla estricta en cuanto a como deben ejecutarse las aplicaciones. Pueden existir aplicaciones que simplemente utilicen el directorio OBB directamente, obteniendo los recursos necesarios mientras accede a los ficheros (sin copiarlos la carpeta corresopndiente en "data").

También pueden existir aplicaciones que solo tengan una carpeta "Android/data", o aplicaciones que solo se ejecuten desde el apk instalado, o incluso otras aplicaciones que generen sus propios sistemas de carpetas y no utilicen ni "data" ni "obb", como puede ser Sygic Aura (que genera su propia carpeta /sdcard/Sygic" donde guarda todos sus datos)

Hasta aquí dejaré la explicación "resumida" sobre como se instalan y ejecutan las aplicaciones Android. La idea de esta sección simplemente es otorgar una idea general de como funciona Android para las personas que aun se están introduciendo en este sistema operativo.


Verificación de espacio


Antes de instalar una aplicación desde sdcard, Android primero intentará verificar el espacio disponible en sdcard para, a continuación, proceder con la instalación y descarga de datos asociados.




Así, si queremos instalar por ejemplo MC4, pero en la sdcard solo nos queda 1GB de datos, Android no nos permitirá seguir adelante hasta que liberemos espacio en donde poder descargar los datos de la aplicación.



Del mismo modo, antes de instalar la aplicación en el sistema, verificará que tengamos espacio disponible en la partición de aplicaciones, con lo que si no tenemos espacio suficiente para la aplicación, además de un porcentaje o umbral de espacio libre que necesita el sistema para poder trabajar, no podremos instalar la aplicación hasta que no liberemos espacio, ya sea moviendo aplicaciones a la sdcard o desinstalándolas directamente, para liberar el espacio necesario.

Este punto es importante a tener en cuenta, por que ya sea por una de estas dos razones podemos quedarnos sin espacio y, por lo tanto, no poder instalar aplicaciones en el sistema.

sdcard, la clave del espacio


En la sección anterior he explicado de manera general como y donde se instalan las aplicaciones Android, y como se puede ver, hay un punto importante a tener en consideración al respecto y es, como dice el título de esta sección, el punto de montaje "sdcard".

Android utiliza "sdcard" como su "disco duro propio". En cualquier instalación de Android, el sistema operativo cuenta con que por lo menos existe la entrada "/mnt/sdcard/" (o que también está enlazada como "/sdcard/" directamente).

Pueden haber muchos otros puntos de montaje, o incluso, múltiples microSD o SDCard insertadas (por ejemplo, un lector USB de tarjetas SD), pero cada tarjeta nueva o externa recibirá un nombre distinto, como puede ser:


  • ext_sd
  • external_sdcard
  • external_sd
  • extsd
  • externalsd
  • sdcard1
  • extsdcard
  • etc...


además, también podemos encontrarnos con que esta tarjeta externa puede estar montada en distintas partes, dependiendo de cada Android en particular:


  • /mnt/ext_sd
  • /mnt/sdcard/ext_sd
  • /mnt/storages/ext_sd
  • /mnt/sdcard/storages/ext_sd
  • etc...


Por tanto, la memoria externa del sistema (generalmente, la microsd que insertamos) puede estar montada virtualmente en casi cualquier parte, y con cualquier nombre, y no existe una normalización al respecto.

El único punto fijo que si podemos tener claro es que siempre (o casi siempre) existe el punto "/mnt/sdcard" (o "/sdcard/"), y es por la misma razón que Android toma este punto de montaje como un lugar "seguro" y "fijo", y todo el sistema gira en torno a él.

Así, cuando movemos una aplicación desde la memoria interna (partición de aplicaciones) a la "Tarjeta SD", android no se plantea cual de todos los puntos es la memoria sd, sino que simplemente la mueve a "sdcard".

Muy bien, ahora que tenemos este concepto entendido, ya podemos empezar a imaginarnos donde está el problema de memoria que habitualmente recibimos al instalar aplicaciones, y es que como he dicho al comienzo de este articulo, Actualmente casi todos los dispositivos Android vienen con una memoria interna que ya está asignada a la microSD, y que en muchos casos, esta memoria queda ridículamente corta, por que, por ejemplo, una tablet que viene con 8GB de memoria, pero que realmente quedan disponibles 5, basta con instalar 3 o 4 aplicaciones o juegos "pesados", que cada una tenga un poco mas de 1GB, y ya no tendremos espacio para seguir instalando mas aplicaciones por que la "sdcard" se ha quedado sin espacio... y que tengamos o no insertada una microSD con muchos GB no hará ninguna diferencia en el sistema, por que sigue apuntando donde mismo, a la sdcard para instalar y utilizar como memoria de almacenamiento interno.

Así que, con todo lo anterior, podemos entender que el problema principal se puede resumir en uno solo: Cambiar el punto sdcard por nuestra microsd, para tener mas espacio, o lo que comunmente se entiende, en terminos de la comunidad Android, como hacer un "Swap de la memoria"

SWAP de la memoria, por la microSD


Hacer Swap de la memoria es, como dice el título, cambiar el punto de montaje donde tenemos la memoria interna, que Android casi siempre la establece como la "sdcard", por nuestra memoria externa que para nosotros es la microSD.

Generalmente, este cambio se hace en el fichero "/system/etc/vold.fstab", pero tiene sus puntos a considerar.

A continuación, pongo un ejemplo de un fichero vold.fstab de un dispositivo generico.

## Vold 2.0 fstab for HTC Passion
#
## - San Mehat (san@android.com)
## 
#######################
## Regular device mount
##
## Format: dev_mount <label> <mount_point> <part> <sysfs_path1...> 
## label        - Label for the volume
## mount_point  - Where the volume will be mounted
## part         - Partition # (1 based), or 'auto' for first usable partition.
## <sysfs_path> - List of sysfs paths to source devices
######################

# Mounts the first usable partition of the specified device
#/devices/platform/awsmc.3/mmc_host for sdio
dev_mount extsd /mnt/extsd auto /devices/virtual/block/nandi
dev_mount sdcard /mnt/sdcard auto /devices/platform/sunxi-mmc.1/mmc_host /devices/platform/sunxi-mmc.0/mmc_host
dev_mount usbhost1 /mnt/usbhost1 auto /devices/platform/sw-ehci.1 /devices/platform/sw_hcd_host0 /devices/platform/sw-ehci.2 /devices/platform/sw-ohci.1 /devices/platform/sw-ohci.2


En el fichero anterior, he puesto en negrita los puntos de montaje corerspondientes a la sdcard (memoria interna), y la memoria externa (microSD). Para este ejemplo, la forma mas fácil de hacer el swap es cambiar los nombres de los puntos de montaje, intercambiándolos (swap) entre sí, de manera que quede algo similar a esto:

dev_mount sdcard /mnt/extsd auto /devices/virtual/block/nandi
dev_mount extsd /mnt/sdcard auto /devices/platform/sunxi-mmc.1/mmc_host /devices/platform/sunxi-mmc.0/mmc_host

Con el ejemplo anterior, simplemente hemos cambiado el nombre del punto de montaje de la memoria interna por la externa, y con esto conseguimos que la microSD (extsd) se monte como sdcard

Nota: Este método no es 100% seguro que funcione en todos los casos.


DirectoryBind




Esta aplicación genera "enlaces simbólicos", o "atajos directos". Para quienes entiendan mejor la terminología de Windows, es como poner un acceso directo de un elemento en el escritorio, pero que en realidad se encuentra en otra parte del disco.

En este caso, DirectoryBind solo hace enlaces (accesos directos) de directorios, asi, cuando el sistema accede a una carpeta que está enlazada, en realidad va a otra carpeta, y mira/actualiza su interior.

Con esta herramienta, generaremos una alternativa de SWAP de memoria para evitar tener que tocar ficheros del sistema (vold.fstab), y tener un resultado similar.

Para obtener este programa, mirar la sección de descargas de esta guía.

Uso de DirectoryBind como reemplazo al SWAP de memoria


Android utiliza algunas carpetas fijas para poder trabajar. Lo primero que hacemos es identificar dichas carpetas.


  • /mnt/Android/data  :  Como he explicado anteriormente, en esta carpeta muchas aplicaciones almacenan información. Es como el directorio las aplicaciones instaladas de Android (para muchos casos).
  • /mnt/Android/obb  :  Hemos dicho que, para resumir de forma muy general, entenderemos esta carpeta como el directorio "de instalación", es donde están los ficheros que se instalarán (en muchos casos)
  • /mnt/DCIM  :  Directorio donde se almacenan las fotografías que tomamos con la cámara del dispositivo.
  • /mnt/Gameloft  :  Directorio donde originalmente se instalaban las aplicaciones y juegos de Gameloft. Generalmente este directorio era muy grande, pero en las instalaciones actuales, casi todas las aplicaciones van en el directorio /Android
  • /mnt/Pictures  :  Directorio donde se almacenan las capturas de pantallas del sistema, y algunas aplicaciones de fotografía guardan las imágenes capturadas.


Pueden haber mas directorios. He señalado los que a mi parecer son los mas importantes, y los que mas espacio pueden ocupar en "sdcard"


Descargas


DirectoryBind (de los foros XDA)
directorybind_conf.csv (configurado con punto de montaje /mnt/external_sdcard)

Fichero directorybind_conf.csv

----BASE_MOUNT_POINTS_BY_MICROSD----;;0
/mnt/external_sdcard/ANDROIDHDD/;/sdcard/ANDROIDHDD/;1
----GENERAL_BINDS----;;0
/sdcard/ANDROIDHDD/Android/data/;/sdcard/Android/data/;1
/sdcard/ANDROIDHDD/Android/obb/;/sdcard/Android/obb/;1
/sdcard/ANDROIDHDD/Gameloft/;/sdcard/Gameloft/;1
/sdcard/ANDROIDHDD/DCIM/;/sdcard/DCIM/;0
/sdcard/ANDROIDHDD/Pictures/;/sdcard/Pictures/;0

Para configurar correctamente este fichero, cambiar "/mnt/external_sdcard" por el punto de montaje del dispositivo.
Nota: Si el punto de montaje está dentro de la sdcard, poner la ruta completa, por ejemplo, si la microsd está en /mnt/sdcard/external_sd, entonces poner esa ruta completa en el fichero:


  • /mnt/sdcard/external_sd/ANDROIDHDD/;/sdcard/ANDROIDHDD/;1

guardar este fichero en la raíz de sdcard. Si no estas seguro cual es tu sdcard, copia el fichero en las 2 unidades (la interna y la externa)

Ejecuta directoryBind. Verás que ya están marcados los puntos de montaje que queremos ejecutar. Puedes habilitar o deshabilitar los puntos de montaje que quieras, segun tus preferencias.

Presionar el botón "Menú", y en el menú que aparece, seleccionar "Bind all checked".

Si todo es correcto, veremos los enlaces que se han creado con un icono verde.

Ya tenemos hecho nuestro "Swap" a la memoria microSD!



Nota:
He generado un punto de montaje en "/sdcard/ANDROIDHDD", para que sea mas fácil cambiar la configuración del fichero, modificando solo una línea (la parte que corresopnde a la ubicación de la microsd). Si no lo hago de esta manera, tendríamos que generar un fichero simiar a este: 
/mnt/external_sdcard/Android/data/;/sdcard/Android/data/;1/mnt/external_sdcard/Android/obb/;/sdcard/Android/obb/;1/mnt/external_sdcard/Gameloft/;/sdcard/Gameloft/;1/mnt/external_sdcard/DCIM/;/sdcard/DCIM/;0/mnt/external_sdcard/Pictures/;/sdcard/Pictures/;0 
Con lo que tendríamos que cambiar todos los puntos de montaje "/mnt/external_sdcard" con lo que tendríamos que cambiar todos los puntos de montaje en el fichero. Generando un segundo directorio al que apunte la estructura, solo nos basta con cambiar una línea, y todo el sistema de directorios se actualizará a dicho punto de montaje.

Consideraciones


Mas arriba en este artículo comenté que Android verifica 2 puntos para ver si existe espacio disponible para instalar aplicaciones, la partición para aplicaciones, y la sdcard.

Cuando tenemos activo el Swap, el sistema Android sigue verificando nuestra sdcard para ver si hay espacio disponible para instalar aplicaciones.

Dicho lo anterior, si no utilizamos la memoria interna para copiar ficheros, en el caso de un dispositivo que tenga 5GB libres (por poner un ejemplo), seguirán quedando siempre 5GB libres, por lo que la comprobación de espacio siempre dirá que hay suficiente espacio para instalar, por lo menos, una aplicación de hasta 5GB de datos  para descargar, lo que es MUCHO, y con esto nos aseguramos que nunca tengamos el mensaje de que no existe espacio en la sdcard para descargar una aplicación.

Hasta donde yo se, en mis instalaciones la aplicación que mas datos utiliza es el juego Bard's Tale, que si nos descargamos la versión de gráficos HD, tenemos que la instalación ocupa unos 3.5GB en total.

Hay que tener en cuenta que el sistema no verificará el espacio disponible realmente en la microSD, por lo que si no tenemos espacio para instalar la aplicación, Android nos dará algún error pero, no nos especificará que no tenemos espacio para la instalación (posiblemente sea un error relacionado con el acceso a disco, o un error genérico)


Otros tipos de SWAP


Así como podemos apuntar el contenido de algunas carpetas a la microSD o memoria externa, también podemos hacer otros tipos de SWAP, por ejemplo, apuntar las carpetas para que obtengan la información desde un pendrive o disco duro USB, con lo que si tenemos un Set Top Box, o un Android TV, en vez de utilizar una MicroSD para almacenar información, podemos utilizar directamente un pendrive, con lo que tendremos el mismo efecto que si fuese una microSD.

Basta cambiar la ruta de montaje principal, por la ruta que queramos utilizar:


  • /mnt/usbhost/ANDROIDHDD/;/sdcard/ANDROIDHDD/;1


Nota: Cambiar por la ruta correspondiente al dispositivo. Este es sólo un ejemplo.

Con lo anterior, ya tenemos todo cambiado para que apunte a nuestro pendrive o disco duro por USB.

Del mismo modo, y con algunas herramientas mas como el soporte CIFS, se pueden montar sistemas mas complejos y funcionales como el que he explicado en mi artículo de CIFS&BIND, que no es mas que el mismo SWAP con DirectoryBind, pero utilizando un recurso de red como tarjeta externa o sdcard.

Palabras finales


Espero que esta guía sea de interes y provecho, en especial para quienes se estén introduciendo al mundo Android.

No soy experto y posiblemente los términos que utilizo no son los correctos, pero me he tomado la libertad de explicar las cosas lo mas simple posible, utilizando como analogía en parte a Windows, que es un sistema que muchos usuarios (la mayoría) ya conocen, y por tanto portar los conceptos existentes en el  (como la idea de enlaces directos para los directorios) creo que será mas clara para entender y poner en práctica lo que he explicado en este artículo.

Comentar si es que hay cualquier error que necesite ser corregido. Agradeceré cualquier tipo de corrección y aporte que se pueda hacer a este artículo.

Zalu2!

Deen0X

24 julio 2013

[REVIEW] Tablet JXDS908 (Quad-Core)

[REVIEW] Tablet JXDS908 (Quad-Core)



Agradecimientos


A la tienda Zococity por facilitarme un sample de la tablet JXDS908, con la cual he podido generar esta review.


Uso de esta review


Se permite utilizar esta review, ya sea copiando entero el artículo o partes de el, o referenciándola mediante un link, a cualquiera que lo desee, con la única condición de que se mantenga el autor y un enlace a la fuente original de esta review, y que se encuentra en mi blog.

Para actualizaciones sobre este artículo, sugiero visitar el enlace mencionado anteriormente


Introducción


Los dispositivos Quad-Core se están haciendo muy populares, y de una forma muy rápida. Parte de esta popularidad la tienen los procesadores A31, que logran hacer que muchos dispositivos actuales tengan precios muy intersantes, y que el reclamo de poseer un procesador Quad-Core, no pasa inadvertido para la mayoría de los usuarios (anque no tiene por que implicar necesariamente que sean mejores productos que un dual-core, o incluso que single-core, ya que muchas veces depende de como estén programadas las aplicaciones y juegos, o incluso, que tan bien esté optimizado el firmware del sistema, para poder utilizar de manera óptima y eficiente los recursos disponibles en el dispositivo)

Además del procesador de cuatro núcleos, otro reclamo importante y que se ve con frecuencia últimamente es la incorporación de pantallas de alta calidad, como pueden ser las Retina, que hasta hace poco se asociaban casi únicamente con productos apple (por ser quienes introdujeron este tipo de tecnologia en las tablets), pero que ahora dicha tecnología está mas al alcance de bolsillos menos pudientes ya que la incorporan dispositivos de mas bajo coste.

Sobre la pantalla, y como anécdota, cuando he comentado a mis compañeros de la oficina que haría una review de una tablet "china" con pantalla retina display, una de las reacciones/respuestas fué "ya, claro, una retina display pero china". En este punto hay que aclarar que la tecnología es la misma, y no es un sucedáneo de Retina Display (con un nombre parecido ni nada por el estilo). En este caso, y con muchos productos, la tecnología que se emplea en la fabricación de dispositivos chinos gozan de la misma calidad que las pantallas utilizadas en dispositivos de gama alta, y es que no hay que olvidar que en realidad casi todos los dispositivos (tanto de baja como de alta gama) se fabrican en china, y que no deberia de resultarnos extraño ver dispositivos que incorporen componentes de estas calidades, pero en dispositivos de mucho menor coste.

Esta review tendrá varios contrastes y, espero que sea sobre todo de utilidad para los usuarios que busquen información sobre ella.



Presentación del producto

(Descripción externo del paquete recibido)




La tablet viene en una caja de cartón con información referente al producto impresa en su exterior (es información específica de la tablet).


La parte trasera destaca las principales características del dispositivo, aunque viene en chino, se entiende las siglas universales que hablan sobre la CPU, Memoria (GB, DDR3), memoria interna, pantalla retina, etc.


Contenido del paquete

(Unboxing y descripción del contenido del paquete recibido)




Una vez abierto el paquete nos encontramos con los siguientes elementos, que entiendo corresponden al contenido standard para este producto.

  • Tablet JXDS908
  • Manual de instrucciones de uso (en chino)
  • Cable MicroUSB-USB de datos y carga
  • Adaptador USB-OTG
  • Cargador de pared con conector específico *

* La tablet posee una entrada específica para cargar la unidad, por lo que deja libre el puerto MicroUSB para poder utilizarlo con, por ejemplo, un hub usb con un teclado y/o ratón conectados en el.





Descripción del producto

(Enumeración de accesorios y componentes que conforman el paquete)


A continuación describiré brevemente cada parte del dispositivo, listando cada componente existente en su estructura, y haciendo comentarios sobre los mismos cuando lo crea necesario.

En esta sección listaré solo las partes del dispositivo que contengan elementos apreciables para comentar. Aquellas caras o lados del dispositivo que no contengan nada apreciable, las omitiré.


Vista frontal




  • Pantalla de 9.7" Retina Display
  • Cámara frontal de 0.3MPx


Vista trasera





  • Cámara trasera de 5MPx con autofocus
  • Altavoz monoaural
  • Micrófono

Vista lateral derecha


  • Botón [POWER] (endender/apagar)
  • Botón [HOME]
  • Agujero para resetear el dispositivo
  • Compartimento de conectores
  • Puerto para cargar la tablet
  • Puerto de audio Jack Standard 3.55mm


Al abrir el compartimento de conectores, nos encontramos con los siguientes elementos:

  • Ranura para microSD
  • Puerto MiniHDMI
  • Puerto MicroUSB OTG

* Este puerto permite la carga de la batería del dispositivo.


Sobre el compartimento de conectores

Me ha resultado incómodo este compatimento, que para acceder al puerto MicroUSB o al puerto MiniHDMI, o incluso a la propia microSD, tengo que abrir la tapa del compartimento, y en el caso del cable microUSB, no me sirve cualquier cable, sino los ue tengan una base de conector mas o menos pequeña/standard, pero otros conectores que tienen mas plástico en esta zona, no se pueden conectar por que no hay espacio disponible para poder insertar el cable.


En esta imagen se puede ver que el cable MicroUSB cabe muy ajustadamente en el compartimento, y aunque una vez conectado no hay problemas, me resulta incómoda laposición del mismo.

Por el mismo motivo, el acceder a la ranura microUSB tampoco es muy cómoda, aunque reconozco que con la tapa del compartimento se gana en seguridad de que no se caiga accidentalmente la microsd y la perdamos. por lo menos con la tapa, si la microSD llega a soltarse tendrá un tope por lo cual no podrá salir completamente de su ranura.

El mismo planteamiento anterior para el MicroUSB se plantea para el MiniHDMI, aunque es cierto que no he visto conectores que no sean standard, y por tanto asumo que se puede conectar cualquier cable MiniHDMI directamente en esta ranura (aunque supongo que algunos adaptadores HDMI-MiniHDMI pueden tener problemas para poder conectar)


Acerca de las cámaras

La tablet monta 2 cámaras que tienen una calidad mas que suficiente para cubrir las necesidades básicas de casi cualquier usuario.

La cámara frontal, de 0.3MPx, está posicionada en una esquina de la tablet, pero la imagen capturada se ve bien a la hora de utilizar programas de chats de vídeo (skype, etc).

Aunque no tiene gran resolución, creo que es bastante "decente" la calidad de la imagen capturada, tanto de vídeo como de fotografías. Para ejemplos, aquí hay una fotografía y un vídeo capturado con esta cámara:





Por su parte, la cámara trasera tiene como características el que sea de 5MPx, y con autofocus, con lo que se pueden obtener fotografías de mejor calidad.

Aquí un ejemplo de una fotografía y un vídeo capturado con la cámara trasera:





La propia aplicación de la cámara que incorpora, no corresponde con la aplicación de cámara standard de google, pero ofrece varias opciones y resultan muy cómodas de seleccionar.


Como se puede ver, la interfaz es bastante "limpia" y "directa", y resulta bastante intuitivo su uso en general.


Información del producto




Según el fabricante, o buscando información en las páginas web, podemos encontrar distintas fuentes de información que pueden difrerir en algunos de sus contenidos, pudiendo ocasionar algo de confusión al usuario que busca información técnica del producto.

En esta sección pondré la información obtenida desde la página web del fabricante (o en su defecto, de la página que mas me fíe de su información), listando solo los puntos relevantes para el análisis técnico del producto, y omitiendo aquellos que no aportan nada (como suelen poner las páginas de venta y fabricantes, características como reproducción de música, películas, etc, etc, que en realidad son características que se obtienen instalando programas, mas que una característica innata del dispositivo)


  • CPU: Boxchip A31 Quad-Core, ARM Cortex A7@1.0Ghz; Cache: 1MB L2
  • GPU: PowerVR SGX544MP2 OpenGL ES2.0 Open CL1.x, DX9_3
  • RAM: 2G DDR3
  • Internal Memory: Nand flash 16GB
  • Screen: 9.7-inch
  • Resolution: 2048x1536 pixels
  • Type: IPS Retina Screen
  • Touch System: G + G Tempered glass, Capacitive touch screen(10 points is supported)
  • Operate System: Android 4.1
  • Wireless: IEEE 802.11 b/g/n
  • Vibration motor: Support
  • Speaker: Single speaker, 8O/1W
  • Endurance: 3.7V/8000mAh, last for 5-10hours *
  • Camera: 0.3M Front Camera, 5.0M Back Camera
  • I/O : 3.5-mm stereo headphone mini jack 
  • Micro USB 2.0 OTG
  • Micro TF Card Slot, Max 32GB, support Hot plugging **
  • DC 5V POWER INPUT
  • Size Length: 9.46inches(240.0mm)
  • Size Width: 7.41inches(188.0mm)
  • Size Depth: 0.38inch(9.6mm)

* En las pruebas y uso que he hecho, la batería me ha durado unas 4 horas como máximo, con un governor semi-exigente o exigente (on demand o performance), aunque no he tenido un uso mas o menos constante y adecuado para aportar con mas datos de pruebas sobre la duración de la batería.
** He utilizado una microSD Sandkis Ultra 64GB (Roja y Gris) que presenta problemas con otros dispositivos, y ha podido leer y escribir en esta microSD sin problemas.


Información desde el propio dispositivo


Para tener una fuente fiable de información del sistema, he obtenido información desde el mismo dispositivo, ya sea desde la misma información que me proporciona el sistema Android (que generalmente es mas bien escueta), como utilizando otros programas que logran sacar mucho mas información, y de forma mas detallada, con lo que nos podemos hacer una idea general del dispositivo en su conjunto.

Información desde los ajustes del sistema de Android
Pantalla por defecto que presenta la tablet al arrancarla por primera vez





 Lista de programas instalados por defecto


Antutu Benchmark System Info
 






Quadrant Standard Info
  


Z-Device Test
 



 


  

  








Benchmarks



Para quien no conozca estos programas, decir que un benchmark es un programa o prueba normalizada que se realiza en un dispositivo. Estas pruebas puntúan (generalmente ponderando varios resultados obtenidos) el desempeño de un dispositivo, de manera tal que el puntaje final puede servir para poder comparar de manera simple y directa el rendimiento general entre varios dispositivos.

Existen muchos benchmarks en la store de Google, pero en mis pruebas generalmente utilizo los mas populares

Para la ejecución de estos benchmark, las condiciones del dispositivo son:



  • CPU Frequency: 1200 MHz (mínima y máxima) *
  • CPU Governor: Fantasy **
  • Screen Resolution: 1536x2048 ***

* A pesar que SetCPU me permite subir hasta 1.4GHz, en realidad el sistema no pasa de los 1.2GHz reales, por que debe estar capado desde el propio bootloader para que no se pueda pasar de esta velocidad "de seguridad"
** Cuando he intentado poner el governor en Performance, el sistema automáticamente lo volvía a Fantasy, por lo que he configurado las velocidades mínima y máxima del dispositivo a la máxima que me ha permitido (1.2GHz) para obtener un efecto similar a un governor = performance
*** Las pantallas capturadas pueden informar otros tamaños, pero corresponden al área de la pantalla sin la barra de android la cual ocupa 96 pixeles, por lo que tenemos que (1536 x 1952+96) = (1536 x 2048) y (1440+96 x 2048) = (1536 x 2048)



3DMark - The Gamer´s Benchmark

 (Versión de Google play)


Este benchmark consta de 2 partes, una normal llamada "Ice Storm", y otra con gráficos de alta resolución llamada "Ice Storm Extreme".

El resultado final es una ponderación de todos los test que realiza el benchmark.

Nota: Al realizar la prueba Ice Storm (la mas "suave"), el programa de benchmark se salía al escritorio, y no podía concluír con la prueba, pero curiosamente la prueba mas difícil, la "Ice Storm Extreme" si que pudo realizarla y mostrar resultados, que presento a continuación.

Ice Storm Extreme




  • Total Score: 2958



Antutu Benchmark

 (Versión 3.0.3)


En mis pruebas, utilizo una versión específica de este benchmark, por que el programa ha recibido varias actualizaciones y en ellas se ha visto afectado muy notoriamente la escala de puntuación en las pruebas, y estos nuevos valores en algunos casos han beneficiado a algunos dispositivos, y en otros casos (la mayoría) se ven perjudicados, puesto que se obtienen valores muy por debajo de los que normalmente los usuarios están acostumbrados a obtener, dando la falsa sensación de que el dispositivo probado no tiene la potencia esperada.

Explico lo anterior, por que Antutu Benchmark es uno de los programas recurrentes y mas conocidos a la hora de comparar rendimientos, y claro, no considero válido (ni justo) obtener un valor en un dispositivo, y compararlo con los punteros de hace algún tiempo, cuando el mismo programa daba otra escala de valores.
Por esta misma razón, y cuando veo que merece la pena publicarlo, realizo las pruebas con ambas versiones, la antigua (3.0.3) y la actual que se encuentre en el play store de google.


 


Resumen de los puntajes obtenidos:


  • RAM: 1717
  • CPU integer: 3458
  • CPU lfoat-point: 2206
  • 2D graphics: [1536x1952] 838
  • 3D graphics: [1536x1952] 2679
  • Database I/O: 545
  • SD card write: (11.2 MB/s): 112
  • SD card read: (>50 MB/s): 202
  • CPU frequency: 1200 MHz (x4)
  • Total: 11757


BenchmarkPi

 (Versión de la Google play)


El objetivo de este benchmark es basicamente calcular una cantidad fija de decimales, y en base al tiempo que toma este cálculo, establecer la posicición que tiene el dispositivo en el ránking general.


 



  • Tiempo para calcular Pi: 647 milisegundos
  • Ranking: #30726


CF-Bench



Esta suite de benchmark está diseñado de forma específica para probar los desempeños de los dispositivos con multi-cores (varios núcleos de CPU), de los cuales se obtienen 3 puntuaciones finales que son Native Score, Java Score y Overall Score.


 


  • Native Score: 19990
  • Java Score: 3791
  • Overall Score: 10270



Benchmark diseñado para probar OpenGL|ES2.0, en donde se muestran gráficos con efectos variados como Reflejos, Sombras dinámicas, Luz, etc. Esta versión está diseñada para dispositivos de gama media-baja, pero lo ejecuto de manera standard en cualquier review que hago.






  • Puntuación obtenida: 59.6 fps



Como la versión anterior, este benchmark está diseñado para probar OpenGL|ES2.0 pero en dispositivo de gama media-alta. También se muestran gráficos con efectos variados como Reflejos, Sombras dinámicas, Luz, etc. pero todo con gráficos de alta resolución.






  • Puntuación obtenida: 40.0 fps



Quadrant Standard



Este benchmark es de los primeros que salieron que se convirtió en referencia, pero que actualmente lo ejecuto como parte de las pruebas para tener a modo informativo, por que al no poseer soporte para multic-cores, los resultados en realidad no son reflejo del performance real del dispositivo.


Resumen puntuación obtenida:


  • CPU: 8848
  • Mem: 2787
  • I/O: 3492
  • 2D: 1006
  • 3D: 2282
  • Total: 3683



Este benchmark es una suite de pruebas, y que tiene se compone básicamente de un módulo de pruebas y ejecución de rutinas HTML5, y el otro dedicado a probar el desempeño de la CPU (Metal).



 


Resumen de las puntuaciones conseguidas:


  • Puntuación HTML5: 1155
  • Puntuación Metal: 397



Firmware oficial




El firmware oficial del dispositivo sirve para, entre otras cosas, si tenemos un denominado soft-brick (ladrillo), esto es, que por alguna modificación o lo que sea la tablet ya no arranca mas de forma normal.

Para estos casos, es bueno tener algún firmware oficial que nos permita recuperar nuestro dispositivo.


Los ficheros necesarios para instalar el firmware oficial (stock) los encontramos en la página oficial del producto:



De momento dejaré pendiente de actualizar esta sección, por que hasta el momento no he instalado ningún firmware en este dispositivo. Cuando lo instale, agregaré los pasos correspondientes para realizar dicha actualización.



Root del dispositivo


Una de las cosas que mejor sacan el provecho de Android, es precisamente obtener permisos de superusuario, o como mejor se le conoce, ROOT.

Muchos usuarios tienen miedo de los métodos de obtener root, y por tal miedo no se atreven a buscar métodos para rootear su dispositivo, limitando el uso del mismo ya que muchas aplicaciones muy populares como Titanium Backup o Tincore Keymapper (por mencionar un par) requieren de aceso a superusuario para porder funcionar con todas sus opciones disponibles.


El dispositivo viene pre-rooteado, pero sin el programa superuser, necesario para otorgar acceso como root a las aplicaciones que lo necesitan.



Para completar el acceso a root, simplemente vamos a ir a la store, e instalamos el programa Superuser de chainfire (me imagino que cualquiera funcionará) y, a continuación, le damos a actualizar el binario. El propio programa hará las actualizaciones necesarias para instalar correctamente los componentes que nos faltan de la aplicación.



ClockWorkMod Recovery (Custom Recovery)



Así como existen los Recovery Stock, que proporcionan herramientas básicas al usuario para recuperar un dispositivo en caso de que éste tenga problemas, también existen los Custom Recovery, que añaden mas funcionalidades y herramientas, siendo uno de los mas conocidos el ClockWorkMod Recovery.

Existe una versión complemtanete funcional de este famoso Custom Recovery para este dispositivo.

La característica mas importante es la generación de backups de la NAND, también conocidos como NANDROIDS, y recuperar estos backups. Para quien no entienda, esta herramienta permite generar un backup completo de nuestro dispositivo (aplicaciones, configuraciones, etc) de manera de que es como "una foto" de lo que tenemos, y con esto podemos volver a ella cuando queramos. Un ejemplo práctico de esto es instalar un firmware, personalizarlo completamente, agregar usuarios, passwords, aplicaciones, enlaces, etc. y luego generar una nandroid. con esto, cuando tengamos el dispositivo con muchas aplicaciones instaladas y queramos "limpiar", podemos recuperar nuestro nandroid, con lo que tendremos un sistema limpio, pero con las aplicaciones y configuraciones ya instaladas.

Como esta tablet es una A31, y es similar a otra que he revisado anteriormente, he utilizado los mismos pasos para instalar el CMW Recovery en ella, y a funcionado sin problemas

(Extracto de la review IBEN-L1)


Existe una versión funcional de otra tablet (Onda V971) que es funcional en esta consola.
Con este CWM es posible realizar Nandroid Backups y recuperarlos (que es la principal función de este Custom Recovery)
El fichero necesario es este:
Onda v971-v972 recovery.zip
Para instalarlo:

  • Descomprimir el fichero en una carpeta del disco duro.
  • Conectar la consola por USB, con la opción USB Debugging activada
  • Abrir una ventana de sistema en la misma carpeta donde hemos descomprimido el recovery
  • Ejecutar estos comandos: 
adb push recovery.img /mnt/sdcard
adb shell
su
cat /mnt/sdcard/recovery.img > /dev/block/nandg
sync; sync; sync
exit
exit
adb reboot recovery


Con lo anterior, la consola se reiniciará en el modo recovery, y vermos en su lugar al nuevo CWM ejecutando.

FuenteForum XDA

Para utilizar este CMW:

Para lanzar el CMW Recovery, con la tablet apagada, presionar [BACK] y, sin soltar este botón, encender la tablet.
Para desplazarnos por el menú, presionar [BACK]. El desplazamiento es cíclico, por lo que cuando llegue a la última opción del menú activo, volverá a la primera opción.
Para seleccionar, presionar [POWER]

Y con esto tenemos un CMW totalmente funcional para esta tablet.



Soporte CIFS




La tablet incorpora el módulo de CIFS preparado para ser cargado por el sistema. Con este módulo, podemos montar unidades de red directamente como parte del sistema, lo que significa que desde las propias aplicaciones podremos acceder directamente a los contenidos de estos directorios, sin necesidad de tener que copiarlos desde el recurso de red hasta nuestra tablet para poder visualizarlos, sino que por el contrario, el sistema considerará estos recursos de red como propios del sistema, por lo que accederá directamente a estos ficheros.

Gracias a esta característica, he podido generar la estructura CIFS&BIND, y redireccionar los contenidos de algunas carpetas para acceder a los contenidos que tengo compartidos en un disco duro en mi ordenador.

De esta manera, he podido cargar directamente películas, escuchar música y jugar algunos títulos desde la tablet, de manera cómoda y práctica.


Desempeño con juegos



Como es habitual, la forma mas común y genérica de mostrar el rendimiento de un dispositivo, es mostrar la ejecución de juegos, tanto los nativos de Android, como emuladores ejecutando roms.

A continuación muestro una serie de vídeos con distintos juegos y emuladores en acción en el dispositivo, y algún comentario con lo mas destacable o con información extra sobre el tema.



Juegos Android



En general, los juegos android están pensados para dispositivos con pantallas táctiles y controles de sensores como inclinación, y en la gran mayoría se presentan controles en pantalla para poder interactuar con ellos, pero poco a poco van saliendo mas juegos con soporte nativo para Joysticks compatibles con Android.

En la actualidad, existen algunas alternativas para poder dar soporte de joystick (o controles físicos en general) a los juegos que no tengan este tipo de soporte, y que en su mayor parte se basan en la emulación de los eventos que sí tienen soporte, que generalmente corresponde con la emulación de toques táctiles en pantalla, para poder interactuar con los controles virtuales que ponen a disposición la mayoría de los juegos en Android.


De entre las soluciones existenes y para realizar pruebas (dando soporte a la interfaz táctil virtualizada, sobre todo en pinchos y tablets conectadas a TV, aunque también para tablets directamente, si puedo conectar un mando/teclado en ellas) estoy utilizando la herramienta Tincore Keymapper para dar soporte a los controles en pantalla para poder interactuar con estos juegos, utilizando un mando (tengo varios mandos para probar, y ver si algno de ellos es compatible con el dispositivo que estoy probando), un teclado y/o ratón (o una combinación de ellos).

En los vídeos que capturo, intento mostrar la acción generada en pantalla, y si es posible activo el feedback visual de android (Ajustes->Opciones de desarrollo->Mostrar toques en pantalla), para que se vea claramente cuando estoy utilizando una interfaz táctil emulada, con un joystick (o el dispositivo que sea). Este feedback generalmente se ve en los vídeos como uno o varios círculos blancos que apraecen (toques) o mueven (swipes) en pantalla, emulando la interacción con dedos. Considero importante este tipo de información a la hora de capturar un vídeo, y es por esta razón que casi todas mis capturas incluyen estos círculos blancos.

The Dark Knight



El juego se ejecuta con alguna relentización, pero es jugable. He notado que si tengo alguna aplicación en segundo plano trabajando, el juego se resiente inmediatamente y no permite una ejecución fluída. No he podido determinar si es problema del juego o del firmware de la tablet, aunque mi impresión es lo segundo, y que el firmware necesita una optimización para solucionar los problemas de relentización que parece tener.



Six Guns




Como se ve, el juego se ejecuta sin mayores problemas, a excepción de mi poca habilitadad con los controles táctiles (no he utilizado tincore en esta ocasión)

Dead Trigger


(Gráficos de baja definición "normales")

(Gráficos de alta definición)

He configurado este juego para que se vea con los gráficos en alta definición. Este juego en general no tiene problemas en los dispositivos donde lo ejecuto, y en esta tablet va bastante bien.

He capturado 2 vídeos, para mostrar la diferencia de ejecución entre tener gráficos de alta definición y de baja (normal) definición.


Dark Avenger



No hay mayores problemas a la hora de ejecutar este título, que se ve y se luce bien en esta pantalla.


Yoda Chronicles



Juego muy vistoso, bonito, y de ejecución fluída y una respuesta táctil muy buena.


Otro tipo de pruebas: DJ Control (Emulación de una mesa de mezclas)



Aprovechando el tamaño del dispositivo, y que sus 10" de superficie de pantalla da para hacer otro tipo de usos, he querido realizar una prueba "alternativa" a la que suelo postear.

Hace algún tiempo tuve una mesa de mezclas muy básica llamada DJ Control MP3, que básicamente se componía de un par de platos multifunción para cada deck (2 decks), ajuste de audio, botones de loop, efectos, pitch, fader, y poco mas.

Para un uso básico y con un poco de práctica, esta mesa es mas que suficiente para pasar los ratos muertos mezclando música.

Bueno, existe una aplicación en el market llamada DJ Control (Borce Trajkovski), que no mucha gente conoce como hacerla funcionar realmente, por que no entienden el concepto. Esta aplicación básicamente transforma una tablet Android, en una mesa de mezclas Hercules DJ Console Remix, emulando sus funciones principales.


Como se puede deducir, lo que he hecho es probar que tal va esta aplicación con esta tablet.

Nota: He utilizado un portátil con el programa Virtual DJ v6 para conectar la tablet y utilizarla como controlador de entrada.

Para conectar la tablet, he seguido los pasos que existen en la página oficial del producto, y que resumo a continuación (extracto de dicha página)

Linux usage instructions:
---------------------------------------
Download DSMI server for Linux from here:
http://dsmi.googlecode.com/files/dsmidiwifi-v1.01.tgz
Start the DSMI server and then run your DJing program.
Windows usage instructions:
------------------------------------
First download and install "MIDI Yoke" MIDI driver from here:
http://www.midiox.com/zip/MidiYokeSetup.msi
or here: http://trajkovski.net/MidiYokeSetup.msi
Windows 7 users: remember to turn off UAC prior to installation of "MIDI Yoke"
Restart your computer for the MIDI Yoke driver to be active.
Download DSMI server for Windows from here:
http://dsmi.googlecode.com/files/dsmidiwifi-v1.01.zip
Unpack and start the DSMI server (DSMIDIWiFi.EXE).
Select "In From MIDI Yoke: 2" as input port and "Out To MIDI Yoke: 1" as output port in the DSMI server window.
Run your DJing program.
If MIDI Yoke does not work for you try LoopBe30, Maple Midi Cable or loopMIDI:
http://www.tobias-erichsen.de/loopMIDI.html
DJing program configuration instructions:
----------------------------------------------------
In the DJing program's settings (remote or controller section) select "Hercules DJ Console RMX" as controller. If this controller does not exist in the list than you need to import MIDI profile that you can download from here:
For Traktor Pro/Duo: http://ts.hercules.com/download/sound/TDJS/current/TP_DJ_Rmx.zip
For Traktor 3: http://ts.hercules.com/download/sound/TDJS/current/T3_DJ_Rmx.zip
For Traktor 2: http://ts.hercules.com/download/sound/TDJS/current/T2_DJ_RMX.zip
For UltraMixer (instructions): http://ts.hercules.com/faqs/eng/her_eng_00360.pdf
For Virtual DJ 5 (generic MIDI profile): http://trajkovski.net/DJ_Console_RMX_VDJ5.xml
Load this file in VDJ Preferences (Remote section) right click on General MIDI, select config then Load. Close the window and on General MIDI image - right click... activate.
Thanks to David R. for this file!
For Virtual DJ 6/7: (put each of this 2 files in ../Documents/VirtualDJ/Devices and ../Documents/VirtualDJ/Mappers respectivly. Create the Devices folder if it doesn't exist. Then start VDJ, go to Preferences (Mappers), rescan for new hardware and select DJ Control device from the list.)
http://trajkovski.net/DJCONTROL(Device).xml
http://trajkovski.net/DJCONTROL(Mapper).xml
Thanks to Marian-Mina Mihai (lalu) for this files!

Básicamente, hay que instalar un servidor que escuche y hable con la tablet vía Wifi, que genere un puerto MIDI para transformar lo que recibe de la tablet, y que el programa (para este caso, el Virtual DJ) lo pueda interpretar correctamente.

Luego descargamos los ficheros de configuración xml, dependiendo de la versión de VirtualDJ. Estos ficheros simplemente son preconfiguraciones de teclas/hardware de la consola Hercules, y que estamos emulando con la tablet.

Hacemos los ajustes necesarios a la configuración (cambiar como se comporta el programa, dependiendo de lo que presionemos en la tablet), y estamos listos para empezar a mezclar!

Había capturado un video del momento en que estaba utilizando el programa, pero desde hace algún tiempo que tengo problemas con mi cámara, y el vídeo no ha quedado "presentable", pero afortunadamente la captura de audio que hice funcionó bien en el ordenador, y aquí os dejo para delicia o tortura de vuestros oídos, lo que ha salido de esta sesión improvisada con este programa.

Nota: Esta captura es el primer intento con el programa. Hay muchos errores y tal, pero he decidod compartirlo tal cual, para que podáis haceros una idea general de lo que puede hacerse con una tablet y este programa.

Para los DJ mas pro, por favor no os riáis tanto de mis pobres intentos de emular una mesa mezcladora. Mientras estaba mezclando también estaba probando algunas combinaciones de teclas y tal, y por eso a veces salían efectos de sonido que no esperaba, pero que tenía que corregir en el momento (como loops, cambios de volumen, etc) XD



La tablet ha respondido en general bien, aunque en ocasiones ha tardado en reaccionar, y lo mismo se ha reflejado en algunos momentos de la mezcla que se nota que no ha reaccionado bien, y se cometen errores por lo mismo. Aclaro que no soy ningun profesional ni nada por el estilo, pero algunas cosas si que las domino mas o menos, y he notado que muchos errores de la mezcla se han producido básicamente por la falta de precisión en algunos momentos, producidos por la respuesta tardía ante algunos eventos en la tablet.

Decir también que muy posiblemente estaba con el performance = fantasys, y que producto de esto los cambios de frecuencia de la CPU se hacen notar en problemas de este tipo.

Pros, contras y mejoras.



Como en todo producto, nos encontramos frente a un disopsitivo que tiene sus puntos a destacar de forma positiva, también nos encontramos con aquellos puntos o características que, o no cumplen correctamente con lo que se les pide, o simplemente no incorporan una funcionalidad que, en mi opinión, debería incluír. Asimismo, y en parte basado en esta lista de puntos en contra, en donde doy mi punto de vista sobre que aspectos deberían tenerse en consideración en caso de generar una versión evolucionada o actualizada del dispositivo.

Pros




  • Panatlla con una muy buena definición y de gran calidad de imagen. Este es sin duda el punto fuerte de este dispositivo, y que se hace notar nada mas encender la tablet
  • Al principio tuve una mala sensación, pero luego de estar utilizando la tablet por algunos días (en mis vacaciones principalmente), la duración de la batería me ha parecido mas que correcta, llegando a reproducir vídeo por cerca de 5 horas (un par de películas y un poco mas de uso, en un viaje en bus que hice, y que me duró casi todo el viaje desde madrid hasta La Manga/Murcia aproximadamente.
  • Calidad de las fotografías tomadas con la cámara integrada, resulta ser de buena calidad. 
  • La ejecución de aplicaciones en general es bastante fluída, aunque hay que hacer algunos ajustes referentes a la velocidad y governors del procesador, para que el sistema vaya fluído.
  • Soporte CIFS incluído en el firmware
  • Puerto de carga de batería especifico, que deja libre el puerto microUSB para poder utilizar, por ejemplo, algún dispositivo como un teclado+ratón, un joystick, etc mientras se está cargando el dispositivo (y mientras podemos disfrutar del contenido de la pantalla, en un monitor conectado por el puerto MiniHDMI)
  • Existe una versión funcional del ClockWorkMod para esta tablet, que aunque no es específica para este modelo, funciona sin problemas.



Contras




  • Siendo un Quad-Core, resulta un tanto frustrante ver que el sistema/firmware cargado no está optimizado, y en ocasiones tiene momentos que parece que no reacciona el sistema. Se hace necesaria una actualización para mejorar este aspecto en el dispositivo.
  • Relacionado con lo anterior, la configuración de rendimiento del sistema hace que si no se tienen los conocimientos necesarios, la experiencia para el usuario no sea totalmente satisfactoria.
  • A estas alturas, considero que un dispositivo de este tipo (y precio), debería incorporar por lo menos Bluetooth, aunque afortunadamente el USB-OTG sirve para conectar dispositivos, entre ellos mandos inalámbricos con receptor USB (como el PXN8633 que he probado).
  • Acceso a los puertos HDMI, MicroUSB y ranura MicroSD, están ocultos tras una tapa que hace un poco molesto y en algunas ocasiones puede que no quepan normalmente los cables en el espacio asignado.
  • Software pre-cargado en el dispositivo, y lo peor de todo, es que viene pre-cargado como aplicaciones de sistema (varios juegos como Sentinel, Angry Birds, Subway Sufers, etc), lo que consume parte importante de la memori ainterna del sistema (donde se instalan las aplicaciones)



Mejoras




  • Una mejora inmediata es la optimización del firmware/sistema, que permita tener una experiencia de uso mas agradable.
  • Dado el tamaño de la tablet, creo que sería oportuno incorporar además del puerto MicroUSB, un segundo puerto USB de tamaño standard, para conectar dispositivos directamente en el sin necesidad de utilizar un adaptador MicroUSB-OTG.
  • Agregar módulo de Bluetooth, o por lo menos, las librerías necesarias para poder insertar un receptor Bluetooth por USB.
  • Agregar led de estado (carga, mensajes, ocupado, etc)
  • Agregar Flash Led para la cámara trasera.



Conclusión


Esta tablet no es en ningún caso un alarde de tecnología ni de desempeño, pero tiene unas especificaciones interesantes que pueden llamar la atención.

Lamentablemente, falla a la hora de su utilización, ya que la interfaz Android se muestra a veces con tardanzas para responder a los gestos o toques en pantalla. Ahora, por contraparte, dentro de la ejecución de las aplicaciones, se muestra mucho mas fluído y suave en la interacción, permitiendo utilizar el dispositivo sin mayor problemas.

Me imagino que lo anterior es debido en parte al governor incluído de serie en el dispositivo, y que no he podido cambiar de forma eficaz (todas las veces que lo cambio, a los pocos segundos vuelve a configurarse en governor = fantasys). La única forma que he encontrado mas o menos eficaz de evitar estas relentizaciones, es igualar la velocidad mínima y máxima de ejecución de la tablet, al mismo valor, en mi caso, ambas velocidades las configuré a 1.2GHz (utilizando SetCPU), y con esto he obtenido un sistema mucho mas reactivo, rápido y fluído.

Se hace necesario y urgente una actualización del Software, para agregar las optimizaciones necesarias y con esto que el usuario final tenga una experiencia positiva con el dispositivo, que yo creo que tiene los elementos/características necesarias como tablet para ofrecerlo, pero falla en esta parte, el software del sistema y en su falta de optimización.

Por otra parte, las optimizaciones y herramientas que podamos ver en internet para los SoC A31 como en este caso, es muy posible que sean aplicables también para esta tablet. Caso de esto es la instalación y funcionamiento del ClockWorkMod Recovery, que basándome en la instalación de otro producto con el mismo SoC, he logrado instalar y ejecutar sin problemas el recovery en esta tablet.

Finalmente, para quien busque una tablet en donde prime la calidad de imagen, sobre todo para leer y disfrutar de contenido multimedia (películas), esta tablet no defraudará en absoluto.


El desarrollo de esta review ha sido especialmente productivo con esta tablet para probar otro tipo de pruebas que estaba realizando, y que gracias a que esta tablet incorpora soporte para CIFS, he logrado entre otras cosas sacar un articulo en paralelo (CIFS&BINDS) y que me ha hecho replantear varios usos que doy a los dispositivos que tengo a mi alcance.

La tablet me ha acompañado en mis vacaciones, y entre los usos lúdicos que he podido darle, me ha servido de forma sobrada para mis necesidades en esta época estival (navegar por internet, compras online, leer correo, ver películas, jugar, etc), cumpliendo sobradamente con lo que se espera de un dispositivo de este tipo en esta situación. Cierto que jugar no es el punto fuerte de este dispositivo, o por lo menos jugar el tipo de juegos que exigen mucho recurso gráfico entre otras cosas, pero si soy sincero, no me encuentro cómodo jugando con este dispositivo y controles táctiles (y no me he traído un joystick compatible en mis vacaciones, para capturar algún vídeo en funcionamiento). Aún así, el resto de uso es adecuado y, al contrario de lo que comento que el sistema no va muy fluído, una vez que se está dentro de un juego, el sistema reacciona bastante bien, mucho mejor que estando en el escritorio de android.


Palabras Finales




Me ha gustado el desarrollo de esta review, por que he logrado generar 2 artículos en paralelo, ya que las pruebas para CIFS&BINDS se basaron también en la ejecución de los títulos android en esta consola.

Espero que tanto este articulo como el otro que menciono sean del interés, sobre todo para aquellas personas que buscan información sobre esta tablet.

Desde ya pido disculpas si en algún punto no he detallado suficientemente algún punto, pero la mayor parte de esta review la he escrito mientras he estado en mis vacaciones (precisamente en la misma tablet, con un teclado conectado), y claro, mi mujer me lanzaba miradas de esas que asesinan cada vez que me sentaba en la mesa con la tablet y el teclado... y con esa presión es muy difícil escribir tranquilamente. ^_^'

Zalu2!

Deen0X