Hola a toda la gente del forum. Soy Gabriel (inventable) y quiero hacerles una propuesta de desarrollo colectivo de un proyecto con la comunidad de TodoPic. El proyecto yo lo he llamado provisoriamente RGBledDot.
(http://www.mediagab.it/inventable/RgbLedDot/digitalledstrip_t.jpg)
Hace un tiempo, encontré en Internet información técnica del circuito integrado LPD8803/LPD8806 que permite de hacer tiras de leds RGB donde cada led puede ser controlado separadamente. Los efectos que se pueden hacer son impresionantes porque cada led puede tener su color independientemente de los otros. Estas tiras las vende www.adafruit.com, sitio web preferido por los fanáticos de arduino. El circuito integrado suelto es imposible de encontrar en ningún lado.
Hasta los mismos vendedores de estas tiras no logran conseguir el DATASHEET (http://www.mediagab.it/inventable/RgbLedDot/LPD880XDS.pdf) de este circuito integrado en inglés, en internet se encuentra solo una versión en chino. Todo es muy nuevo. Para controlar estas tiras, se han hecho algunas librerías para arduino usando la técnica del "Reverse Engineering".
El protocolo de comunicación no se encuentra a disposición, parece ser que una tarjeta master transmite una serie de byte en sucesión (como con el protocolo DMX512) y que cada chip de la tira, conectado en cascada, filtra los byte que le interesan dejando pasar los restantes. Por lo tanto no es necesario conectar dip-switch para configurar la dirección de cada chip de la tira, esto ocurre automáticamente (tipo shift register). La idea me parece muy buena.
(http://www.mediagab.it/inventable/RgbLedDot/lpd8806segment_t.jpg)
Mi idea es la de desarrollar un sistema (hardware y software) con nuestros amados pics que hagan lo mismo que este chip. Como se puede ver en las fotografías, el circuito es re-simple, la clave de todo está en el firmware. Mi idea es la de hacer dos versiones: una con un pic a 8 pin (tipo 12F629) que controle tres leds (o 1 RGB) y otra versión con un PIC tipo PIC16F628 que controle 12 leds (o 4 RGB). Les muestro un ejemplo que he pensado.
(http://www.mediagab.it/inventable/RgbLedDot/RgbLedDot1.jpg)
Cada led controlado podría tener un nivel de luminosidad desde 0 a 255. Yo me imagino mensajes generados desde el master largos 512 bytes o 1024 bytes que serían la cantidad máxima de leds que podríamos controlar. La velocidad de transmisión podría ser variable gracias a la línea de clock que sincroniza todo.
(http://www.mediagab.it/inventable/RgbLedDot/RgbLedDot2.jpg)
La ventaja de este proyecto es que no dependeríamos de un chip particular y podríamos desarrollar efectos luminosos espectaculares usando solo pics y leds. Otra vantaja es que, haciendo una versión que tenga driver de transistores podríamos controlar leds de potencia y por lo tanto construir hasta carteles animados.
Tendríamos que desarrollar el circuito, el pcb, el protocolo, el firmware (probablemente en assambler por cuestiones de velocidad) y un software (library) para una tarjeta de control. Propongo de hacer todo el proyecto Open Source y como autores todos los que quieran participar.
¿Que opinan? ¿Me ayudan? :)