Wednesday, January 9, 2013

Vaso Medio lleno, vaso medio vacio, o ... sobra vaso

Bueno ahora ya hemos visto que nuestra cubieboard es más lenta en procesamiento que un dos nucleos (cielos y tanto estudiar para esto :S)
¿Pero eso realmente significa que es malo ?

¿ Realmente cuanta potencia necesito ?

Para contestar esa pregunta hay que hacer otra pregunta.

¿Qué vamos a hacer ?

Algún ejemplo
Por ejemplo el software de  cabina del space shutthle (1981) (transbordador espacial ) funcionaba con un intel 8086 y luego fue un 80386.
Los equipos de la estación internacional espacial (ISS) usan para los comandos  un 80386.
http://www.gratisprogramas.org/descargar/los-cpu-de-las-naves-espaciales-computadoras-en-el-espacio/

Ahora si queremos jugar al Angrybirds igual necesitamos algo más.

¿Qué voy a hacer?

Una vez visto los ejemplos me tendré que centrar en lo que yo quiero hacer.
  1. Visión artificial con Opencv (umm igual se me queda corto, pero estamos hablando de una plataforma de estudio)
  2. Manejo y comunicación con arduinos
  3. Estudiar temas de Inteligencia artificial para problemas racionales. (aquí estoy algo verde)
Bueno pues ya tengo tarea para estudiar.
Iré poniendo los temas de las cosas que vaya aprendiendo.

¿Que tarjeta de memoria le pongo?

Tarjeta de memoria.

Bueno tenemos que hacernos con una tarjeta microSD para empezar, pero cual.

Por casa tenía una tarjeta de 8GB clase 4, pero siempre uno quiere algo más de velocidad, así que compre una tarjeta Sandisk Ultra 16GB y ejecute una prueba de velocidad de acceso a la tarjeta.

8 GB Clase 4

16GB  Clase 10 UHS-I
Así que la velocidad que ganamos es, ummm no mucha, pero bueno es más grande y ya puedo empezar a cargar al Raspbian de cosas, pero lo mejor será en pensar en un disco duro.

NOTA: Al instalar Linux no se pierde la memoria NAND donde está Android


Problemas(más vale tarjeta vieja que arranca, que nueva y rápida que no arranca)

No todo el monte es orégano, la nueva tarjeta de Sandisk Ultra 16GB, tiene un comportamiento anómalo.

Instalo sin problemas el berryboot, y luego raspbian, pero una vez terminada la instalación no permite arrancar, viendo por foros he visto que no soy el único

En la comunidad de Cubieboard en google+ se ha comentado y la verdad he tenido que darles la razón, cambiando de tarjeta funciona y como la tarjeta de 8GB y clase 4, tampoco es que de un peor resultado apreciable, continuaremos con la tarjeta "antigua"

Más benchmarks, más benchmarks es la guerra

Más benchmarks (ahora son de Android)

Bueno vamos a ver de que equipo disponemos y hasta donde podremos llegar con él.

Tenemos que saber de que potencia de procesamiento hablamos así que he corrido un par de benchmarks propios de android.
(los podéis encontrar en el playstore)



Bueno parece que no sale muy bien parada nuestra cubieboard, pero eso lo veremos más adelante.
Cubieboard:3295

Motorola Razr: 8026



















Bueno parece que la cubieboard (1 nucleo) es algo menos potente que  mi Motorola razr (2 nucleos), pero eso no significa gran cosa.

Cubieboard

Motorola Razr

Raspberry PI vs Cubieboard


Como en informática uno nunca es el único que hace las cosas, que encuentra un problema, o que da con una solución, pero la base si está en compartir.

Aquí os dejo un enlace calentito de hace unos días (09/01/2013) de una comparativa entre raspberry pi y cubieboard, que encontré en el foro de Cubieboard



Cubie Board quick look, compared to Raspberry Pi
Merçi Alexandre Bulté

Pero ¿ cómo está vaso? ¿ medio lleno,  medio vacío o me sobra vaso ?

Saturday, January 5, 2013

Primeras pruebas

Probando, probando 1,2,3.....¿Cuántos Kflops?

Bueno, ya tenemos todo instalado ahora vamos a probar que tenemos entre manos.


¿Qué equipo tengo ?

Vamos probando un lscpu
 
pi@raspberrypi ~ $ lscpu
Architecture:            armv7l
Byte Order:               Little Endian
CPU(s):                        1
On-line CPU(s) list:  0
Thread(s) per core: 1
Core(s) per socket:   1
Socket(s):                    1

¿Y de memoria? ¿Cómo ando?

pi@raspberrypi ~ $ cat /proc/meminfo
MemTotal:         834892 kB
MemFree:          381636 kB
Buffers:           85808 kB
Cached:           285972 kB

¿Y si nos marcamos un benchmark ?

Vamos a hacernos unas cuantas operaciones algo rapidito, que hay cosas que hacer.

Con la aplicación de HardInfo de linux :) saldremos del paso, y así podremos comparar con ordenadores conocidos.


CPU Blowfish

 Cubieboard    1000 MHz     46,346
I3    1197 MHz        4,009
Intel(R) Celeron(R) M processor 1.50GHz (null)  26.1876862
PowerPC 740/750 (280.00MHz)     (null)  172.816713
 (medido en segundos, mejor cuanto más bajos)

CPU Fibonacci

Cubieboard    1000 MHz     14,525
I3    1197 MHz        2,796
Intel(R) Celeron(R) M processor 1.50GHz (null)  8.1375674
PowerPC 740/750 (280.00MHz)     (null)  58.07682
 (medido en segundos, mejor cuanto más bajos)

Bueno si lo comparamos con un celeron no está tan mal
Aunque parezca poca cosa, estamos hablando de un buen procesamiento, seguro que podremos sacarle mucho jugo y como plataforma de estudio está muy bien.

Instalando Linux 2/2

Instalación de Linux

Partimos del paso anterior, donde habíamos instalado el berryboot (gestor de arranque ) en nuestra tarjeta uSD.
Hacemos reset a nuestra cubieboard (dejando la tarjeta insertada) y nos arrancará el gestor berryboot
  1. Arrancamos con la tarjeta uSD
  2. Nos arranca el berryboot para hacer la primera instalación. (se pueden tener varias distribuciones de Linux en una misma tarjeta)
  3. Configurar el acceso a internet (en mi caso fue la wifi)
  4. Nos pide sobre que soporte vamos a hacer la instalación, usaremos la uSD.
  5. Nos da a elegir entre una serie de distribuciones, según nuestras necesidades.
  6. Yo elegí por tema de programación y sistemas la raspbian, la versión de Debian para raspberry
  7. Nos descargará la distribución elegida y nos la instalará en nuestra tarjeta.
  8. y a disfrutar

Se puede conectar vía wifi

¿Cuál elijo ? :|

La guardamos en la tarjeta


Esperamos, pero no mucho

y voilá, aquí tenemos nuestra raspbian

Arrancando
Raspbian en la cubieboard

 

Instalando un Linux parte 1/2

Introducción.

La placa ya viene de serie con un Android (4.0.4) que ya nos permitiría que una televisión normal se convierta en un smart TV, se le puede añadir wifi sin problemas, teclado y ratón inalámbricos y a disfrutar.

Pero, ¿ si queremos más ? ¿Y sí necesitamos programar ?, si queremos algo más que un simple Android. Pues nada a instalar Linux :)

Para gestionar el arranque de nuestro sistema Linux dentro de la cubieboard, se hace necesario la instalación de un sistema que nos permita seleccionar desde donde arrancamos, y como instalamos la distribución de Linux que nos interese, esa herramienta, es el berryboot

Requisitos

  1. La cubieboard
  2. Tarjeta uSD al menos 4 GB (yo use para la prueba una de 8GB clase 4, la cambiaré por una de 16 o 32 GB clase 10)
  3. Conexión a internet
  4. Leer bien la información, yo saqué la información de esta página, es muy buena.http://www.cnx-software.com/2012/12/09/cubieboard-unboxing-and-quick-start-guide

Instalando Berryboot (gestor de arranque e instalación)

El paso inicial será utilizar el berryboot que nos permitirá gestionar la instalación. (en el link está toda la información sobre berryboot)
Podemos usar nuestro Android preinstalado o nuestro ordenador, y una vez instalado el berryboot, nos hará como un gestor de arranque mejorado, donde podremos elegir con que sistema operativo queremos arrancar o instalar alguno nuevo.

Android

  Pasos para instalar el berryboot desde android.

  1. Arrancar nuestra cubieboard y esperar a que cargue Android
  2. Meter nuestra uSD formateada
  3. Instalar berryboot.apk
    1. Poner este enlace en el navegador de android "http://get.berryboot.com/"
  4. Nos descargamos la aplicación berryboot.apk
  5. Ejecutamos
  6. Y seguimos las instrucciones, esto nos formateará la tarjeta e instalara el berryboot como gestor de arranque





PC (Linux, Mac, Windows)

Nota: toda la instalación está hecha con Linux (Linux 3.2.0-23-generic) en 64 bits, pero lo pondré en genérico para que hagamos los pasos independientemente de nuestro sistema operativo.
  1. Insertamos nuestra tarjeta uSD 4GB o mayor.
  2. Descargamos la imagen del berryboot. Berryboot-cubieboard-beta1.zip” desde http://www.berryterminal.com/doku.php/berryboot_a10
  3. Quemamos la imagen en la microSD
    1. Windows
      1. Utilizar Win32DiskImager.exe para pasar la imagen a la tarjeta (este paso no lo he probado, me quedé en windows 98 segunda edición :) )
    2. Linux
      1. Utilizamos un terminal para pasar la imagen a la tarjeta
      2. sudo dd if=Berryboot-cubieboard-beta1.ddimg of=/dev/sdX (X es la unidad de nuestra uSD)

  4. Ya tendremos quemado nuestro gestor de arranque berryboot en la tarjeta y ahora es cuando vamos a instalar nuestro Linux.

Arrancando

Cuando llegó la cubieboard, surgió la duda

¿Ahora como la conecto?

Bueno como todo equipo electrónica necesita una fuente de alimentación, sencillo, ¿ no ?
¿qué fuente de alimentación uso ? ¿qué consumo va a tener lo que le conecte?
Según las especificaciones son 5v 2A (aunque se me hace escaso trabajando dos USB y un HD, pero tengo que probarlo, aún me queda comprar un HD)

  • USB (host) (500 mA cada uno)
    • Teclado y ratón
    • wifi
  • USB (OTG)
    • conexión al ordenador para debug
  • HD
    • 5v, 1A, disco de 2.5'' debería funcionar (tengo que comprobarlo)
  • uSD
    • Utilizaré para las primeras pruebas una tarjeta de 8GB clase 4 (pasaré en breve a una de mayor capacidad y clase 10)

Como mínimo necesitaremos los 2 A para que la placa funcione correctamente a ver que tal va cuando le ponga el HD (aunque probé con 1A y también funciona)

¿Teclado y ratón en un solo USB?

Solo tenemos 2 USB, aunque se puede utilizar un hub de USB(alimentado aparte), pero tenía por casa un teclado con ratón inalámbrico y funcionó sin problemas.

¿ Wifi ?

Lejos de mi ordenador está el router, mi primera idea era usar el ethernet, pero por probar dije vamos a probar un Wifi-USB que tenía, y bingo
Este es mi pincho wifi :Belkin Components F7D2102 802.11n N300 Micro Wireless Adapter v3000 [Realtek RTL8192CU]

Primeros pantallazos

Con la versión que me llegó la 2012-09-09 me venía preinstalado un android ICS (4.0.4) con lo que ya tenía una smart TV, además que detectó sin problemas la wifi, el teclado y el ratón inalámbricos
¿ Tablet de 21'' ?

¿Smart TV?
Cubieboard