Mejorando un proyector barato RD802.

Hace bastante tiempo tuve una idea para un proyecto que no precisaba gran resolución de pantalla por lo que compré un proyector barato RD802 (me costó 36€ en ebay en Nov18), y lo que recibí era justo lo que pagué, resolución muy pequeña, refrigeración muy ruidosa y el mando a distancia (que para mi proyecto no necesitaba) tenia graves deficiencias de recepción, aunque no todo es malo, a oscuras alcanza los 2,5m sin problema que es mi distancia ideal para ver la imagen en el techo… en la hoja técnica dice que alcanza hasta 3,6m y el audio mas que suficiente.

Lo probé, estuve jugando con él durante unos meses y hasta hoy… 2 años acumulando polvo…. Ahora que tengo algo de tiempo debido al COVID19 decidí utilizarlo para un fin diferente… para ver películas (fíjate tú lo que son las cosas)…

Por si alguien está interesado en un trasto de estos quiero decir que las descripciones de las tiendas pueden llevar a engaño, te dicen FullHD y es cierto, admiten entrada por HDMI en 1080 y la peli la ves… en 480×320… la resolución de entrada nada tiene que ver con la resolución de salida… puedes poner una peli que ocupa 2GB en formato 1080 panorámico en un USB formateado en NTFS… y se ve… en 480×320. Para ver pelis o series normales va bien, mas o menos como una cinta VHS, ni se te ocurra usarlo para ver una peli con buenos efectos especiales o si tiene subtítulos.

Dado que la resolución de salida es la correspondiente al precio no puedo quejarme así que me centro en las cosas que puedo optimizar.

No voy a entrar demasiado en como desmontar el proyector ya que es muy fácil y no creo que nadie que sea un poco manitas tenga problemas, dejo aquí una foto del interior, no aconsejo desmontar la parte del foco ni las lentes de fresnel ni el espejo.

VENTILACION

Lo primero que ves al abrir el proyector es el ventilador de 5cm que normalmente no son tan ruidosos, pero mi sorpresa al desmontarlo fue que el 80% del flujo de aire chocaba directamente con una pared de plástico lo que lo hacia mas ruidoso y encima la caja del proyector amplificaba el sonido… solo un 20% del flujo de aire circulaba por el disipador de aluminio. Las siguiente fotos dejan claro el problema.

Decidí cambiar la posición del ventilador, lo principal era sacarlo de la caja para evitar la amplificación y situarlo directo al disipador de aluminio para optimizar la refrigeración, se pierde algo a nivel estético pero la verdad… me da un poco igual.

El ruido ahora es mucho menor, ha pasado de ser una chicharra muy molesta a un zumbido de fondo, si en mis sesiones de cine me parece molesto le pondré un regulador de velocidad aprovechando que la ventilación directa al disipador me da margen para hacerlo.

PEEEERO… siempre hay un pero… a mitad de película en el centro de la pantalla aparece una mancha negra que va creciendo poco a poco, apago desarmo, no veo nada, conecto todo, enciendo… todo bien… entonces empiezo a pensar el motivo que no es otro que al calentarse la primera lente de fresnel (son de plástico) se deforma y empieza a desenfocar por lo que me cuestiono el cambio de ventilador. Analizo la situación y descubro que originalmente había un canal secundario de flujo de aire que refrigera la parte trasera de la lente de fresnel, la linea de la derecha….

Se me ocurren 10 soluciones distintas a este nuevo reto, incluyendo dejar el ventilador donde estaba y subir el volumen de la película… pero no, voy a aprovechar para eliminar el ruido completamente y lo voy a hacer con dos ventiladores (si… ya lo explicaré mas adelante), el actual que seguirá apuntando al disipador de aluminio y un segundo ventilador mas pequeño que situaré en el interior para refrigerar la lente de fresnel. No se si será buena idea pero voy a hacer unos taladros para generar un flujo de aire que cruce entre el foco y la lente cosa que a priori sacará el calor de ese habitáculo.

El segundo ventilador indudablemente meterá mucho ruido que eliminaremos bajando el voltaje de alimentación, aprovechando que en ambos ventiladores se genera bastante mas flujo de aire del necesario me puedo permitir bajar la velocidad, cosa que podemos hacer de muchas formas, bien sea con un BEC, un 780x, step-down, etc… mi consejo es hacerlo con step-down que da mas juego ya que normalmente traen un ajuste fino de voltaje de salida, pero si estáis como yo ahora en confinamiento por el COVID19 y solo tengo un BEC… pues ya sabéis lo que toca, lo instalo y el ruido se anula completamente, nivel de ruido 0 db.

En previsión de que esto no sea del todo suficiente y para proteger la lente de fresnel he decidido añadir una lamina de plástico transparente entre esta y el foco, he encontrado en mi trastero un trozo de metacrilato de 5mm pero un trozo sacado de una caja de CD/DVD valdría igualmente.

RECEPTOR IR

El problema del receptor de IR es un cumulo de despropósitos, el primero de diseño, hay que apuntar con el mando a una pequeña ventanita en la parte trasera del aparato, y segundo al abrirlo veo que el receptor que está soldado a la PCB está doblado hacia atrás lo que dificultaba mucho mas la recepción de la señal.

Ya puestos a que la estética del proyector no era una prioridad decidí sacar el receptor IR fuera de la caja por lo que procedí a de-soldarlo (me resultó mas fácil de lo esperado tirando de él con una mano y con la otra aplicando el soldador en horizontal tocando los 3 pines a la vez), el paso siguiente soldar cables de 8cm a cada pin.

Ya solo queda fijar los cables a la caja para que el receptor IR parezca una antena, ahora la recepción de IR es igual que el de un televisor normal.

La siguiente foto es el resultado final, buenas mejoras a costa tan solo de la estética.

Ya es posible concursar de nuevo en Instructables… o eso parece.

Tengo que desdecirme de mi post sobre la imposibilidad de concursar en instructables, me gustaria pensar que mi queja junto a ese post tuvo algo que ver en el cambio que he podido ver en las condiciones de los concursos aunque seguro que peco de optimista.

En fin, parece ser que ahora salvo que vivas en algun país de lo que EEUU califica como el «eje del mal» se puede concursar.

Asi pues al igual que instructables ha cambiado los requisitos yo cambio mi postura sobre el tema y me arremangaré para presentar algo este verano cuando tenga algo de tiempo… a ver si organizan algun concurso interesante para hacer en julio o agosto.

furri

Adaptador I2C para pantallas LCD con Arduino

Hace mucho que me compré un adaptador I2C para pantallas LCD y hoy por fin lo he probado, el adaptador está basado en el micro PCF8574T y tiene dos conectores, el tradicional de 16 pines en linea para conectar la LCD y los 4 del conector I2C, tambien posee un jumper para habilitar la luz de fondo (que se puede apagar/encender por software) y un potenciometro para regular la luz de los caracteres.

adaptador

Para probarlo he usado una pantalla LCD con luz azul de 2 lineas por 16 caracteres cada una.

lcd

Como en ambos tengo montados pines macho he montado todo sobre una protoboard, solo tener en cuenta que los pines esté correctamente alineados, contad con que el pin 1 es GND que es facil de localizar.

montaje_1

El montaje completo incluyendo las conexiones I2C:

adaptador_I2C_LCD

El código fuente:

// ********************************************************************
// ********************************************************************
/* Demostracion de modulo adaptador I2C LCD
basado en PCF8574T */

#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7);

void setup()
{
lcd.begin (16,2); // activamos modulo 16×2
lcd.setBacklightPin(3,POSITIVE);

lcd.home (); // igual que lcd.setCursor(0,0);
lcd.print(» furrichip «);

lcd.setBacklight(LOW); // Apagar luz de fondo
delay(500);
lcd.setBacklight(HIGH); // Encender luz de fondo
delay(500);

lcd.setBacklight(LOW); // Apagar luz de fondo
delay(500);
lcd.setBacklight(HIGH); // Encender luz de fondo
delay(500);

}

void loop()
{
lcd.setCursor (4,1); // empezamos en la segunda linea fila 4
lcd.print(millis());
delay(100);
}

// ********************************************************************
// ********************************************************************

La libreria LiquidCrystal he usado esta:
https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads

Solo me queda mencionar que en caso de necesidad podeis cambiar la dirección I2C del adaptador (0x27 por defecto) puenteando los pads A0, A1 y A2, dichos pads están en modo pull-up por lo que su valor lógico es «1», al puentearlos cambiamos dicho valor a «0» y usando la siguiente tabla podemos ajustar la dirección a nuestras necesidades:

I2C_LCD_Direcciones


Enlaces de interes:

Datasheet PCF8574 de Texas Instruments
Datasheet PCF8574 de NXP
Tutorial PCF8574 en ingles

 

Adios a concursar en Instructables ¿la LPI otra vez?

Me apetecia retomar algun reto de instructables, usandolo como motivación para desarrollar algo interante, util o simplemente divertido. Ya lo hice hace 4 años con el concurso de reciclado.

https://blog.xbot.es/?p=657

Despues de entrar en la web de instructables encuentro algunos concursos accesibles y al mirar las normas me encuentro con la sorpresa de que nadie residente en España puede participar… bueno, si podemos enviar proyectos pero no podrán ser elegidos para ningún premio.

Empecé a escarbar un poco y me encontré esto en la sección de preguntas frecuentes:

I live in -----, why can't I enter?!
Chances are your country has incredibly strict laws regarding gambling, sweepstakes and contests. We try our best to play by the rules, and if we can't meet the minimum requirements to run a contest in your country, we don't run them there!

que traducido asi mas o menos…

Vivo en España, por qué no puedo entrar?!
Es probable que su país tenga leyes muy estrictas en cuanto a juegos de azar, sorteos y concursos.
Hacemos todo lo posible por cumplirlas pero si no podemos cumplir con los requisitos mínimos para hacer un concurso en su país, no lo hacemos.

Entiendo que para esta gente resulte mas facil excluir a los residentes en paises que tienen leyes como la LPI o vete tu a saber si las tenemos peores. Lo que no llego a entender es que en este pais tengamos alguna ley que de una forma o de otra impida que nos premien por nuestras ideas…

Siento el off-topic, pero algo tenia que decir despues de pasarme años pagando un impuesto injusto y abusivo por usar CDs para hacer copias de mis trabajos, cosas como el cierre de google news, zancadillas a la financiación de proyectos via crodfunding, etc, etc, todo gracias a las leyes promulgadas por nuestros politicos que en vez de defender a los que los votan defienden a la SGAE, grupos editoriales y bancos.

Saludos.

Cañon de aire comprimido (1)

Como me sobraban tubos de PVC del ultimo invento he decidido utilizarlos en un proyecto casero que tenia en mente hace tiempo.

La idea es hacer un calderín o camara de presión con tubos de PVC usando como entrada de aire un inflador de bicicleta y como salida una electrovalvula a 12V que permite una apertura muy rapida que es vital a la hora de lanzar objetos.

La valvula de entrada la he sacado de un neumático viejo de mi bicicleta, la electrovalvula la compré hace como dos años en ebay asi que solo quedaba ir a comprar adaptadores variados, un par de terminales ciegos y pegamento para PVC.

He usado tubo de 50mm por que era el que tenia de sobra en mi trastero, me habria gustado usar un tubo mas grueso y asi poder hacer una camara de presión mas compacta y no tan alargada, pero bueno… es lo que tiene el reciclado.

Los componentes:

IMG_20150501_160327

Arriba dos trozos de PVC de 50mm de diametro y 50cm de largo cada uno, total 100cm de largo, al final harán una calderín o camara de presión de algo mas de 1,5 litros.

una T de unión para acoplar la reductora a tubo de 20mm que es donde va el adaptador roscado de la electrovalvula, el resultado final quedará algo asi como esto:

IMG_20150501_160901

Las diferecias de color, unas veces gris (su color real) y otras azul, son debido a cambios en la luz natural y a la camara de mi teléfono movil que no es lo mejor para estos menesteres.

El cortado de tubos se hace facil con herramientas de uso común y asequibles.

IMG_20150501_161509

La unica parte algo mas complicada de este proyecto es la instalación de la valvula de bicicleta, aunque tampoco tiene mucha ciencia, taladro de 8mm y pegado con cola de contacto.

IMG_20150501_161551 IMG_20150501_161645 IMG_20150501_161743

IMG_20150501_160452

Y el resto pegado con pegamento de PVC.

IMG_20150501_162449

IMG_20150501_162557 IMG_20150501_162633 IMG_20150501_162707

IMG_20150501_162911 IMG_20150501_162931 IMG_20150501_163102

Para terminar por hoy solo el detalle de los adaptadores para la electrovalvula, esta no va pegada sino a rosca…

IMG_20150501_160641

Dejaremos que se pegue todo…  hasta el proximo domingo.

furri.

Calibrando brujula CMPS03

Queria recuperar mi vieja brújula CMPS03 y al probarla no daba con el norte ni por casualidad, asi que he tenido que recalibrarla y para ello tuve que buscar bastante hasta dar con una página donde explicaban el proceso.

http://www.robot-electronics.co.uk/htm/cmps3tech.htm

cmps3pin2

El sensor se puede calibrar por I2C o montando un pulsador… asi que opté por este ultimo sistema, el circuito es tan simple como este:

cmps3pin2_circuitoN

Y el proceso es tan sencillo como poner el lado Norte de la brujula apuntando al norte real asi que id buscandoos una brujula «manual».

Alimentamos el circuito y veremos el led del pin «calibrating» encendido, procedemos a continuación con la siguente secuencia:

– Pulsamos una vez y el led se apagará.
– Giramos 90º a la derecha y pulsamos otra vez.
– Volvemos a girar 90º a la derecha y pulsamos otra vez.
– Volvemos a girar 90º a la derecha y pulsamos otra vez.

Ahora el led deberia haberse encendido de nuevo y eso indica que hemos terminado la calibración la cual se ha quedado guardada en la eeprom del micro y no tendremos que calibrarla mas salvo que tengamos que usarla en un lugar lejano del que hemos hecho la calibración o que se haya desajustado por otros motivos.

 

AtmelStudio y Attiny – ecTiny841 (2-programacion)

Como hacer un programa para Attiny con Atmel Studio no es tan complicado como pudiera parecer, es lo que tiene haber trabajado con PICs durante tantísimos años.

Esta es una actualización de la «guia-burro» que me hice cuando aprendí, en este caso basandonos en este circuito con ecTiny841.

IMG_20150314_201702

Microcontrolador: Attiny841 (oscilador interno)
Pines A0,A1,A2,A3 – leds
Pin A7 – pulsador.
Alimentacion: 3.3V


 

Abrimos Atmel Studio
AtmelStudio62

Creamos un nuevo proyecto.
AtmelStudio62_01

Elegimos el tipo de proyecto, le damos nombre y carpeta donde guardarlo.
AtmelStudio62_02

Ahora elegimos microcontrolador.
AtmelStudio62_03

Ya tenemos un programa en blanco.
AtmelStudio62_04

En el que sustituiremos todo el código fuente por este otro:


 

#include <avr/io.h>
#define F_CPU 8000000UL            //clock frequency
#include <util/delay.h>

int main(void)
{
//A0-A5 salida A6 y A7 entrada
DDRA = 0b00111111;

while(1)
{
if (bit_is_clear(PINA,7)) // mientras PINA7 a nivel bajo
{ PORTA = 0b00000000; } // apago todo
else
{  // secuencia «coche fantastico»
PORTA = 0b00000001;
_delay_ms(150);
PORTA = 0b00000010;
_delay_ms(150);
PORTA = 0b00000100;
_delay_ms(150);
PORTA = 0b00001000;
_delay_ms(150);
PORTA = 0b00000100;
_delay_ms(150);
PORTA = 0b00000010;
_delay_ms(150);
}
}
}


 

Una vez pegado, compilamos (Built Solution) y revisamos la sección «output» para verificar que la compilación ha sido correcta.
AtmelStudio62_05

En este momento ya tenemos un fichero .HEX ubicado en la carpeta donde creamos el programa (ver primeros pasos de este tutorial)  que podemos grabar en el microcontrolador, para grabarlo existen diversas opciones ya sea por que tengamos un grabador integrado con el IDE de AtmelStudio o si por el contrario tenemos un grabador externo, como ejemplo:

– Externo: Grabación con AVRDudeSS y ArduinoISP.
– Integrado: Grabación con MKII y AtmelStudio.

 

 

Grabación con AtmelStudio y MKII

Si dispones de un grabador MKII o un clon del mismo no es necesario salir del IDE de AtmelStudio para grabar tu microcontrolador, siempre y cuando hayas instalado bien los drivers.

Una vez compilado vuestro programa teneis que iros a la opcion Tool/Device Programming.
AtmelStudio62_06

Os aparecerá una pantalla donde podreis verificar el programador, el microcontrolador y el interface, una vez confirmado con «Apply» nos apareceran las opciones disponibles antes de la grabación, en nuestro caso (que hemos hecho todo bien) tan solo seleccionar la opción «Memories» y a continuación ejecutar la grabación con «Program» y veremos el resultado de la grabación.
AtmelStudio62_07

y listo para funcionar…

 

Iniciación con ecTiny841 (1-preparativos)

He dado con un kit de iniciación basado en el Attiny841, para los que quieren algo pequeñito y diferenciarse de todo el mundillo asociado a Arduino, diseñado y montado aqui en nuestro pais y ademas barato, se llama ecTiny841.

Consta de 4 modulos:
IMG_20150314_201702

ecPower con el que podreis alimentar todo el circuito con un cargador de movil.
ecSwitch que es un pulsador con prevención de rebotes incorporado.
ecLeds que no tiene mucha ciencia, 4 leds de distinto color.
ecTiny841 que es la placa principal con el microcontrolador.

Particularmente el ecPower me pareció una verdadera maravilla ya que cada vez que tengo un montaje a 3v3 ando parcheando aqui y allá… con esto ya lo tengo solucionado asi que igual me pido alguna mas.

Primeros pasos:

1) Hardware, comprando el kit ecTiny841 ya tenemos lo suficiente para empezar, tan solo una protoboard y cables para montar el circuito.

2) Software, toca bajarse las herramientas del fabricante, en este caso el programa AtmelStudio (conocido como AVRStudio en versiones anteriores), en mi caso concreto me quedé en la versión 6.2.1153 por compatibilidad con mi programador clon MKII.

3) Programador, aqui me extenderé un poco mas ya que hay un gran abanico de posibilidades, en caso de querer un programador integrado con el IDE de AtmelStudio os aconsejo que os compreis un MKII o compatible, en el caso de que no querais compraroslo o que aún lo estais pensando podeis ir tirando con un ArduinoISP y usando AVRDude como software de grabación.

IMG_20150312_195506AVRISPmkII

 

 

 

 

 

Regrabar Bootloader en una Arduino (2)

Hace casi 5 años ya me encontré con este problema… fastidiar el micro de una arduino (vieja, eso si..) y tener que meter el bootloader de nuevo asi que no me extenderé demasiado ya que podeis leer el artículo de aquella epoca que solucioné con un programador por puerto paralelo muy barato de fabricar.

https://blog.xbot.es/?p=262

Ahora nos encontramos con que pocos ordenadores de sobremesa y ningún portatil trae puerto paralelo por lo que una alternativa USB vendria muy bien y lo que he hecho es aprovechar mi Programador ArduinoISP quedando el montaje tal que asi.

IMG_20150312_195506

En el USB tenemos una Arduino con el programa ArduinoISP (la de color rojo), esa tarjeta, sea la Arduino que sea no es mas que una pasarela hacia la segunda (la de color azul) y es esta ultima la que tenemos que seleccionar en Herramientas/Tarjetas… en mi caso la roja es compatible con Decimilia con micro Atmega168 pero da igual, podria ser una MEGA 2560… tan solo hace de pasarela. La tarjeta azul es una Duemilanove con micro Atmega328, por lo que en la configuración elegiré «Duemilanove w/Atmega328».

tarjeta

A continuación comprobaremos que hemos seleccionado el programador adecuado.

Prog_ArduinoISP

Y por fin pulsaremos la opción que el IDE de Arduino nos da para programar el bootloader de la tarjeta seleccionada.

Prog_ArduinoISP_2

La arduino (azul) quedará como recien comprada y lista para trabajar.

Hasta pronto.
furri.