martes, 14 de diciembre de 2010

Interfaces de Usuario para Sistemas Embebidos

Mientras que algunos diseños no presentan interfase de usuario.  Otros poseen algunos botones y LEDs.  Otros tienen el típico display LCD con algunos botones o quizá un teclado.  Y finalmente otras tienen pantallas completas sensibles al tacto.

Existe una gran brecha entre un LCD con capacidad solo texto ( tembién conocidos como inteligentes ) y un grupo de botones de menú y una pantalla completa VGA corriendo Linux.

Quizás como algo intermedio, que llene ese espacio, tenemos los botones o pulsadores con pantalla LCD incluida en cada uno.

No son botones baratos, cada uno en un poco más de US$30, no es un reemplazo al pulsador estándar. Cada uno posee un LCD gráfico de 64x32 pixels y un backlight RGB capaz de producir arriba de 10000 colores. El interruptor/botón/pulsador se inicializa solo, la única información que debemos enviarle es para cambiar su apariencia.  Una interfase SPI nos permite programarlo mediante dos de los seis terminales (power, ground, SPI, y el contacto del interruptor).

El backlight RGB los convierte en componentes no convenientes para aplicaciones de bajo consumo.  El consumo con un solo LED encendido es de aproximadamente 25mA y si nos ponemos sofisticados puede crecer hasta 60mA.

Que tal un panel distinto en vuestro próximo diseño?

lunes, 13 de diciembre de 2010

Motherboard Mini-ITX – corto circuito

Luego de intentar el upgrade del micro del motherboard (mobo) de la foto, desde un Celeron M440 1.86Ghz a un Core Duo T2450, el mobo dejo de responder. Descartada la fuente de alimentación, revisamos la salida de los reguladores del mobo, encontrando que en el conjunto de capacitores, en el paralelo de salida de los 12V, aparentemente había algunos en corto ( Chip Caps de 470e75). En efecto, el corto lo produjo un cruce de pines (doblados) del micro, los que no había observado.

La foto muestra los mismos desoldados y efectivamente un par de ellos estaban en corto.


 
Como vemos las pistas están preparadas para manejar mucha corriente, lo que hace muy difícil el trabajo de desoldado y soldado. Por lo que es imprescindible una buena pistola de aire caliente con temperatura controlada, como esta:

 Aquí tenemos el reemplazo final:
 
Luego del cambio de los capacitores el mobo quedo sin cortos.

domingo, 12 de diciembre de 2010

Investigando la MID/APAD P07 ( Hacking ) - La Batería


Detalle del circuito de la batería original:


 
La batería que conseguí ( gracias a Luis! ): Las celdas son fabricadas por SANYO



Detalle del circuito de la batería:

 

Las baterías cargan y funcionan perfectamente en el dispositivo, pero la diferencia de altura no me permite cerrar la tapa, tendré que optar por esperar y buscar la batería original o modificar la tapa.

 

Investigando la MID/APAD P07 ( Hacking ) - Reconociendo las partes del circuito


Hace un tiempo publique una nota sobre la adquisición de una APAD/MID, el equipo funciono hasta ahora, aparentemente la batería no carga, llego el momento de investigarlo ( desarmarlo ), veamos que nos encontramos adentro:

Antes que nada un detalle para desarmarlo, posee cuatro tornillos en las esquinas, para acceder hay que levantar el film negro que protege la parte de arriba y la pantalla:


Según vemos en la foto, la batería de Li-Ion 7.4V 1800mAh ultra-delgada se encuentra en el centro, a la izquierda tenemos la cámara CMOS ( cable negro ) y arriba la placa WiFi USB RaLink RT2070L. Seguimos el recorrido por arriba y vemos el cable plano de conexión del LCD que se encuentra debajo de la batería, luego hacia la derecha el cable plano de 4 hilos correspondiente al touch-screen resistivo. La placa base de 2 capas ( color azul ) WMS8088B, conteniendo los periféricos y al módulo central ( color verde, 6 capas ). El conjunto sigue los lineamientos de bajo costo en la construcción del PCB 6 capas / 2 capas ( ver ArmDesigner ). El módulo central WMS8060B2, esta compuesto por el SoC de la Línea WonderMedia de VIA el WM8505, esta acompañado de 2 chips RAM Hynix HY5PS1G831C, 1 chip Flash Samsung K9GAG08U0M-PCB0 (16 Gbit NAND-Flash 25ns ) y un Pm25LV040 - 512K x 8 (4 Mbit) 3.0 Volt-only, Serial Flash Memory With 33 MHz SPI Bus Interface.
Algunos de los controladores periféricos:
VIA VT6113 10/100 Ethernet LAN
GL850G GENESYS - USB 2.0 HUB Controller

El WM8505 según el datasheet corre 300MHZ, pero el producto dice 533MHZ, saquen sus conclusiones. En resumen las características que más me interesaron son:
  • ARM926EJ-S RISC Processor
  • DSP Instruction Extensions and Single Cycle MAC
  • ARM Jazelle® Technology for Java® Acceleration
Sin dudas, en la parte de periféricos es muy versátil.
Con respecto a los distintos dispositivos MID/APAD disponibles, recomiendo ver “Comparación de dispositivos Android” en Wikipedia:

Se consiguen los drivers y códigos fuentes de Linux y u-boot para estos dispositivos, aparentemente se decía que estaban bajo licencia GPLv2, en el enlace de abajo se explica mejor sobre el tema. Es interesante las posibilidades para experimentar poniendo nuestras propias aplicaciones y modificaciones sobre el núcleo del Linux.
Wondermedia WM8505 Linux + u-boot source code
 

Las baterías: 
Este es el pack original, desoldado.

 

miércoles, 8 de diciembre de 2010

Instalar Factusol con wine

Versión de Factusol: 2007

fundamental el script:
http://www.kegel.com/wine/winetricks

Para instalar a partir de un .msi

msiexec /i factusol.msi

Una vez instalado el Factusol
corri winetricks y comence a agregar modulos
hasta que no dio mas error ( fundamental oleaut32 nativo y bases de datos )

comctl32
jet40
mdac28
mfc40
mfc42
vb6run
native_mdac
natice_oleaut32

martes, 7 de diciembre de 2010

Holiday Arm Hacking - DDJ

Los dispositivos basados en ARM de costo accesible, a los cuales podemos modificarlos, sigue creciendo, no solo los Routers,  MID/APAD, ahora también tenemos otros: llamados PlugBox Linux (reconocidos como OpenPogo).

La nota completa de Al Williams en:
Holiday Arm Hacking - DDJ

jueves, 2 de diciembre de 2010

Porqué .NET es tan popular?

Pregunta que se genero en el foro de codeproject.com y desato muchísimas respuestas,   algunas muy interesantes, como esta:

http://www.codeproject.com/Messages/3685150/Re-Why-is-NET-so-popular-Serious-Question.aspx

Definiría a .NET como: EEE  ( Easy to )

Fácil de aprender
Fácil de dejar
Fácil de volver en cualquier momento...

Creo que depende mucho del tipo de empresa y proyecto para el que se trabaje, pienso que el error es tratar de utilizarlo como la solución para todo tipo de enfoque de software como se pretende por algunos programadores,  olvidan el análisis del proyecto,  requerimientos, descansando en la comodidad de la 
herramienta, después de todo tendemos al reposo y entonces: quién quiere ponerse a pensar mucho?



domingo, 17 de octubre de 2010

Mi primera MID/APAD/EPAD Android con LCD 7"

El objetivo de la compra era tener un dispositivo móvil con pantalla cómoda como para leer libros (en formato PDF),  cualquiera pensaría:  un ebook reader!,  pero el precio y las prestaciones de los ebooks, me llevaron a comprar la APAD, que incluso se consiguen por la mitad de precio que los ebooks readers y traen más características (Android).   

Glosario de Términos:

MID: Mobile Internet Devices ( se adjudica el invento del término a EKEN )
APAD:  Tableta Android
EPAD:  Tableta Electrónica  


Conseguí una MID/APAD con Android con LCD de 7 pulgadas:

Tablet Pc Simil Ipad Android 1.6 Touch Wi-fi 2gb Ethernet

Tiene WiFi, 2 gigas de memo interna, procesador de 533mhz, 256mb de ram ddr2, RJ 45 para conectarla a una red, pantalla touch, etc.

Operating System: Google Android OS 1.6
Processor: VIA WM8505 ARM926 (533mhs)
Memory: 256MB DDR2
Capacity: 2GB NAND FLASH, support SDHC TF card up to 16GB
Display: 7" high-brightness TFT LCD wide screen touch display (800*480 pixel resolution)
Touch Control: Full size touch operation, sliding menu, functional icondragging
Orientation Sensors: With accelerometer, automatic steering display screen
Network:
802.11b/g Wi-Fi network connection
RJ45, 10/100Mbps network connection

Camera: 1.3 Mega pixel camera
Microphone: Built-in
Speaker: 2 speakers
Slots: 1 * Micro SD/TF card slot (support up to 16GB)
1 * 30 pin interface (with adapter can be 2*USB HUB and RJ45 networkinterface)
1 * 3.5mm Stereo Audio out
Software: Google Chome-lite Browser
OS Language: Support for display of multiple languages and characters simultaneously
Battery: Built-in 2400mAh rechargeable battery
Power Adapter: 180-240V (US plug)
Accessories: AC power adapter, USB splitter, user manual

Las características resumidas:

Pantalla LCD HD de 7 Pulgadas Touch Screen / Resolución 800 x 480 / Conectividad WiFi / Soporta QQ / MSN / Skype etc / Cámara 1.3 MP / Salida de audio 3,5 Mini Jack / Varios idiomas: Español / Micrófono y Altavoz / Terminación externa: Cubierta de aluminio/ Dimensiones: 195x118x10mm / Peso: 332g



Trae una versión actualizada/modificada de Android (1.6),  SlateDroid 1.7.4. 

Identificación que trae de producto: ( en etiqueta suelta en la caja )


Product No.: PA07
Product Name: MID

Primeras Observaciones:

- Equipo genérico de china, sin especificar modelo o fabricante.
- Manual típico de ese tipo de productos ( minímo, mala traducción ).
- La batería con WiFi activado dura no más de 2hs.
- La versión de Android esta orientada a un celular, se nota ya que el Sistema, posee opciones típicas de celulares e incluso mensajes como "Su celular se apagará".
- En cuanto a Cubierta metálica: es un dispositivo totalmente plástico, favor, diferenciemos los diferentes tipos de plásticos...
- Camara 1.3 integrada, existe!, pero la versión de Android no tiene aplicación que la utiliza??.
- Memoria 2GB, separada 1GB como disco local (LocalDisk), 1GB como disco extra (udisk).  Además de soportar flash externa (sdcard).
- Memoria RAM disponible típica luego de cargar el S.O., unos 96Mb, cerrando todos los servicios,  153MB libres.


Ahora con respecto a leer libros, el tema objetivo de la compra,  lamentablemente tengo que admitir que los PDFs son documentos complejos,  con imagenes, mucho formato, etc.  Lo cuál para el equipo, del mismo modo que en un Celular, consume mucho procesamiento,  se traduce en lentitud de apertura y navegación.   En cuanto al tamaño de display para la lectura y zoom,  son adecuados.    Para mejorar las prestaciones de los programas de manejo de este tipo de documentos le conseguí el soft "Document to Go", el cuál viene con "PDF to Go", un programa para lectura de PDFs, por supuesto, al tratarse de software con licencia,  la interface, desarrollo, se notan con dedicación y profesionalismo,  sin embargo, no cubrieron mis expectativas en cuanto a reemplazar por completo el libro en papel: no permiten subrayar,  marcar y la carga del libro es lenta como el paso entre hoja y hoja.   Además otro factor importante a tener en cuenta,  el dispositivo al entrar en modo suspendido, stand-by, desmonta o libera la tarjeta de almacenamiento,  al volver a encenderse,  el programa se cierra porque no tiene acceso al libro o documento PDF, el sistema reconoce la tarjeta y la vuelve a cargar, entonces recién en ese momento podemos levantar nuevamente todo.  Esto impacta seriamente cuando uno se encuentra leyendo y suspende para atender el teléfono, ir al baño,  etc.  ya que luego debe comenzar todo de nuevo, incluso volver a buscar la página ya que no guarda el último estado de posición en el documento.   Quizá sea cuestión de encontrar el software más adecuado para este propósito,  probé un par,  de los gratuitos ninguno funcionó, incluso algunos tuvieron problemas al abrir algunos tipos de PDF.

No todas son contras,  en cuanto a las funciones del dispositivo, como WiFi, navegación web,  acceso a los servicios de google,  todo funcionó muy bien.
También se puede descargar un programa para Android que es especifíco para la lectura de ebooks,   el mismo nos permite descargar libros gratuitos de internetcomodamente leer, marcar y pasar hojas,  pero no lee PDF's, tienen formato propio ( que es más que nada texto sin formato e imagenes, lo que le da velocidad ).  Este programa al momento de almacenar un libro, nos dice que solo podemos hacerlo en la memoria interna  ( tienen el mismo problema que expuse antes de la liberación de la tarjeta en modo suspendido ).