Displays Monster iCruze
Un
display retroiluminado de 2 x 20 muy
útil para proyectos “hágaselo usted mismo”
Última actualización: 04-11-2010
Esta página será actualizada a medida que vaya
obteniendo más datos.
Algo de historia:
Alrededor de 2005,
una empresa de accesorios para audiófilos (¿o
quizás debería decir Audiobobos?), llamada Monster Cable Products Inc, lanzó
un sistema innovador para conectar un iPod al sistema de audio
del coche, haciendo creer a la radio que el iPod
era un cambiador de CDs,permitiendo por tanto controlar el iPod
desde los mandos de la radio, incluso los montados en el volante
si era el caso. El sistema
comprendía también por 100$ un display
opcional (que es de lo que trata todo esto) que mostraba el
nombre del intérprete y el título de la canción, tal como
estaban almacenados en el iPod.
Un sistema iCruze bastante completo
El display en
cuestión (los textos son simulados)
Por
alguna
razón que ignoro, probablemente un fracaso de ventas ya que el
sistema básico de vendía en unos 200$, este ingenioso sistema
se convirtió en una especie de Ford Edsel. (Si no sabe de que
va eso, consultar Wikipedia)
Si
intenta
buscar en la Web de Monster (http://www.monstercable.com) como yo hice, no encontrará ninguna referencia al
producto, como si no hubiese existido nunca. (De todas
formas Internet guarda memoria de muchas cosas y sí, el sistema
existió).
La primera vez que
tuve noticia de estos displays fue en la lista de los Time-Nuts. Un miembro de esta lista, Didier
Juges KO4BB, había diseñado y construido un monitor autónomo
para su “Oscilador Disciplinado por GPS” Trimble Thunderbolt (http://www.ko4bb.com/Timing/GPSMonitor/) y había publicado su código abierto con licencia
GPL. Otros miembros de la lista
pronto dieron la noticia de que una tienda virtual de China
estaba vendiendo copias del monitor de Didier en eBay. El propietario de la tienda era Bob
Mokia (http://myworld.ebay.com/fluke.l/),
un conocido vendedor de artículos de surplus
para Time-Nuts. Bob obtuvo un
lote de los displays de iCruze (probablemente la fábrica
estaba realmente en China), reemplazó la tarjeta del
microcontrolador con una suya propia, la programó con el
código de Didier e hizo cambios en el cable original.
El monitor integrado en el GPSDO de Arthur,
entre otros de sus chismes de Time-Nut
Yo me enteré de la
existencia de esos proveedores a través de Arthur, el cual
amablemente me envió una foto mostrando el interior del
aparato original y del modificado por Bob.
Se puede ver que la placa original que contiene el
microcontrolador se ha reemplazado con otra que está montada
al revés, con los componentes debajo. La
razón para reemplazar la placa es que el programa de Didier
funciona sobre otra familia de micros y parece que Bob tomó el
camino del hardware en lugar de portar el código original de
Didier para el 8051 al micro TINY de Atmel.
Otra razón podría ser que el micro existente no
dispusiese de los recursos necesarios para la tarea.
Foto que muestra el interior del original (abajo) y del
modificado (arriba)
Yo compré algunos
displays originales en un vendedor de Amazon. Previamente
había construido algunos proyectos con LCDs, principalmente
frecuencímetros y diales digitales para receptores antiguos (Boatanchors) y me había encontrado con que la
parte más difícil para el acabado era hacer la apertura para
el display o disponer de una carátula adecuada.
Estos displays tienen una carátula muy buena e incluso
pensé que en algunos casos se podría poner todo dentro de la
caja original del la misma manera que hace Bob con el monitor
para el Thunderbolt.
Después de
participar en la lista de Time-Nuts con lo que se comentaba
acerca de esto, jugué con la idea de reciclar el dispositivo
al completo, sin quitar o reemplazar la tarjeta del micro, ya
que para algunos usos sería suficiente solo con reprogramarle. Incluso esto podría ser innecesario:
imagínese que el dispositivo es solo un terminal serie ASCII
de 2 x 20. En ese caso solamente
se trata de mandar los caracteres que se quieren mostrar por
el cable existente. Su aplicación
tendría que enviar los datos a un tipo de puerto serie, en
lugar de a una rutina de manejo del display, e incluso este se
podría colocar a alguna distancia, lo que podría ser ventajoso
en ciertos casos.
Más tarde recibí
varios emails de otros miembros de la lista que también habían
comprado algunos displays y querían información. Esto es lo
que me llevó a empezar esta página.
Empecé a recopilar
tanta información como me fue posible y procedí a la
ingeniería inversa del dispositivo. Después de sacar el
esquema y visto como se alimentaba (al fin y al cabo se
trataba de una aplicación para coche, pero no sabía que había
al otro lado), apliqué 12 voltios entre los hilos rojo y negro
del cable de entrada; la iluminación del fondo se encendió,
pero no apareció nada en la pantalla.
Comencé a medir en
todas partes con un osciloscopio y la única actividad que
encontré fue un tren de pulsos que salía por el hilo amarillo,
con un pulso de unos 2 ms cada 1,6 segundos. Quizás
intenta despertar algo en el otro lado.
Este es el esquema, puede descargarse en
los formatos eagle.sch y .png
El módulo del display es un HY-2002A-803, sus datos se
pueden descargar de http://www.ciahk.net/upload/docs/HY-2002A.pdf
y de AQUÍ.
Tal como se dice en la hoja de datos, los chips del
controlador son el SPLC80A
o el KS0066;
se usan chips sin encapsular que una vez montados se
cubren con una gota de material protector, por lo que no
se ve ningún marcaje. A
efectos prácticos se puede suponer que ambos son iguales.
Pensé que la fila superior de contactos (P1-P6) era
para programar en circuito, ya que es compatible con los
programadores estándar AVR. Esta suposición se ha
demostrado cierta, lo que permite reprogramar el
micro. También puede pensarse que los hilos amarillo
y verde que van al mundo exterior estén destinados a un
bus I2C, ya que están conectados a los pines SCL y SDC del
micro. Sería muy útil si alguien con las herramientas
adecuadas hiciera más pruebas (enviar texto desde un
dispositivo I2C, …), pero las pruebas realizadas hasta
ahora parecen indicar que no se trata de I2C.
Observando mas detenidamente, vi
otra señal relacionada con la mencionada anteriormente. Sale por
el pin 9 pero no va a ninguna parte; en la placa están previstos
una resistencia y un diodo en serie a masa (R11 y D1), pero
nunca se han instalado.
En esta imagen de osciloscopio el
trazo superior corresponde al pin 9 y el inferior al pin 3.
Ambas señales van de 0 a 5 V, la escala horizontal es de 0,5
ms/cm y el intervalo de repetición es de 1,6 segundos. (Mis
disculpas por la calidad de la foto, pero lograrla casi se
convirtió en un proyecto en sí mismo. Tengo que comprar algún
día una cámara de osciloscopio de desguace e instalaré en su
carcasa una cámara digital).
Por último, si alguien obtiene
más información o encuentra otras formas de uso para estos
displays, haga el favor de enviarme un email con sus
hallazgos y los iré incluyendo aquí.
18-04-2010 Mark Sproul KB2ICI, que ha comprado un lote de 20 a
2$ cada uno (envío incluído), me comunica que ha
experimentado conectando el dispositivo a un Arduino con un
programa de pruebas que ha desarrollado y parece que no se
trata de una conexión I2C, pero ha logrado leer el programa
que contiene el ATtiny conectando un programador a los
mencionados contactos P1-P6; Va a seguir investigando, por
lo menos a ver si puede reprogramar el micro para hacer algo
útil. La historia de sus pruebas y desarrollos en su
página "Hacking
the
iCruze Display".
23-04-2010 Gracias a haber empleado Word 2007 para hacer
algunas correcciones, la página se mostraba mal en Internet
Explorer dando varios errores, mientras que en
Firefox se veía perfectamente. He tenido que
reconstruída utilizando esta vez el Sea Monkey Composer.
24-04-2010 Mark ha avanzado mucho en sus pruebas. Ha
reprogramado el micro y ya tiene funcionando una primera
versión de un programa que muestra cualquier texto que se le
envíe en ASCII por el cable existente, con conexión serie
asíncrona. Una versión final estará disponible pronto.
26-04-2010 Según me comunica Mark, su programa para el display
ya está terminado. Acepta datos en serie a 9600 bd con
niveles TTL. Los detalles estan disponibles en su página
web y pondrá allí el programa en cuanto finalice algunas
pruebas.
27-04-2010 El programa fuente y el .hex ya están disponibles en
la página de Mark, junto una explicación de como programar el
dispositivo y una modificación para usarlo con 5 voltios en
lugar de 12. Yo todavía no he programado ninguno de los
mios porque no tengo un programador para AVR.
Por cierto, si
alguien necesita un programador para salir del paso, aquí
hay uno que no puede ser más económico (enlace cortesía
de Roberto Barrios, EB4EQA). Como no tengo pensado
hacer nada con micros de AVR, me voy a montar uno y voy a
probar, porque si no me compraría el que ha usado Mark y está
descrito en su página.
03-11-2010 Ahora
que ya no hay dudas acerca de la función de los contactos P1-P6
(programación), se ha actualizado el esquema adecuadamente.
Por fin ya tengo
mi Cámara Digital
para Osciloscopio de construcción casera. Tan
pronto como haga una foto de las señales de arriba la pondré
aquí.
04-11-2010 Ya
tengo la foto, menuda diferencia ¿no?