Reciclar un monitor LCD como caja de luz


Este post   trata sobre reciclar un  monitor defectuoso  Acer AL1913 LCD  que fue imposible  repararlo pues  aunque  la luz de fondo seguía siendo funcional,  el panel LCD no mostraba nada . Para no  tirarlo el autor  pensó utilizar  manualmente la luz de fondo para  convertirla en una caja de luz .

Esta modificación consiste en desmontar del monitor  la luz de fondo y el inversor. Este inversor toma la CC 16v procedente de una unidad central  y la convierte a la alimentación de CA requerido por la luz de fondo fluorescente para monitores. En este breve video de abajo se ve este proceso se, eche un vistazo.

Los detalles internos de un monitor LCD incluyen componentes de CA de alta tensión. Este modelo particular usa una fuente de CA / CC situado en un bloque de alimentación auque sin embargo,estan  por lo general dentro de la carcasa del monitor con los otros componentes (a veces combinada con la placa del inversor). Tanto la fuente de alimentación AC / DC y el inversor presentan un peligro potencialmente letal y yo no recomendaría intentar esta modificación a menos que seas capaz de hacerlo con seguridad. Es bastante obvio que esto anulará cualquier garantía que pueda tener en el panel y todo es a su propio riesgo.

Se retira la cubierta de plástico para revelar las entrañas de la unidad. En esta pantalla hay un amplificador de audio en una placa aparte junto a dos 2.5W altavoces que pueden ser reciclados para otro proyecto La tarjeta de control a la derecha recibe la señal de entrada de vídeo, lo procesa y lo muestra en la pantalla LCD, por lo que se puede  retirar , ya que ya no es necesaria.

Mientras que hurgar con el multímetro, cuando se conectan los dos pines  que se muestran arriba a  16v fue   la luz de fondo se enciende.Monitores LCD utilizan muchas variaciones de los componentes así que todos son propensos a trabajar de manera diferente.

Este interruptor se conecta con un pin conector hembra. Ahora el monitor se enciende manualmente, que se puede eliminar a la luz de fondo al descubierto.

El LCD y paneles difusores se eliminan (derecha), dejando sólo la luz de fondo (a la izquierda). Para mejorar la apariencia de la cubierta, se han añadido algunas capas de color negro mate. El interruptor de encendido original apareció con un destornillador para hacer la manera para el nuevo interruptor. Entonces todo se vuelve a montar y listo para una prueba.

Es sorprendentemente brillante pero probablemente se vería mejor con una caja hecha a la medida. Teniendo en cuenta que hubiera ido todo a la basura, es una conversión rápida y ordenada

Fuente  aqui

Controles de pinball externos para una tableta con Android


Con este truco de Ruben , se pueden  agregar controles flipper pinball externas a un dispositivo  Android.
Para ellos Rubén decidióir con la TI Launchpad para este proyecto. La placa   MSP430 dev ofrece comunicaciones serie a través de una conexión USB, pero no es tan fácil encontrar el cable correcto. En este caso la tableta soporta USB On the Go (OTG), pero la placa se identifica como un dispositivo de ACM que debe ser manejado de manera diferente.
Con el fin de conseguir la tableta de hablar con el Launchpad compiló un módulo CDC_ACM de los fundamentos de Linux que componen cada sistema operativo Android. En este caso, el módulo se adapta para el chip de Allwinner A10 dentro de su modelo de tableta, pero no debe ser demasiado difícil de adaptar su guía para otros procesadores.

La idea se basa en conectar un MSP430 a un dispositivo Android (de hecho, la idea era utilizar el MSP430 Launchpad como caja de GPIO de bajo costo para una tableta de Android ).Pero Ruben, y pensó en el puerto de audio para la comunicación, y  entonces pensó    en    la  compatibilidad  USB OTG. Por lo tanto, ha compilado el módulo CDC_ACM de la tableta (Allwinner A10 based) para emular el puerto serie a través de USB.
Luego, en el lado MSP430 Launchpad, necesitaba una librería para usar el puerto serie. Encontró MSP430-softuart por Stefan Wendler y lo utilizó para la comunicación bidireccional en Android Tablet MSP430-Launchpad.

Para hacer una demostración, ha modificado el código de fuente abierta Pinball vectorial añadiendo soporte para el acceso al puerto serie (utilizando serialport-api de Google . Este Pinball Vector modificado tiene las aletas vinculados a MSP430 botones de Launchpad. Cuando se pulsan los botones en P2.5 y P2.3 estén flippers se activan. Un LED también está conectado en P1.6 para activarlo cuando se recibe el comando «palanca» de la aplicación para Android.

Vídeo de demostración aquí:

 

 

Este es el código fuente para el MSP430

#include 
#include 

#include "uart.h"

#define LED1 BIT0
#define LED2 BIT6
#define BUTTON1 BIT5
#define BUTTON2 BIT3

static volatile bool r = false;
static volatile bool l = false;

int main(void)
{
   WDTCTL = WDTPW + WDTHOLD;  // Stop watchdog timer 

   BCSCTL1 = CALBC1_1MHZ;  // Initialize clock  
   DCOCTL = CALDCO_1MHZ;

   P1DIR |= (LED1 + LED2); // Set BIT0 and BIT6 as output
   P1OUT &= ~(LED1 + LED2); // LEDs off

   P2REN |= (BUTTON1 + BUTTON2); // Select pull-up resitors por P2.3 and P2.5

   P2IE |= (BUTTON1 + BUTTON2); // Enabling Button interrupts

   P2IFG &= ~(BUTTON1 + BUTTON2); // Clear interrupt flags for the buttons

   uart_init();

   __enable_interrupt();

   uint8_t c;

   while(1)
   {
      if(uart_getc(&c)) {
         if (c == 't')
         {
            P1OUT ^= (LED2); // Toggle LED2          
         }
      }
      if (l)
      {
            uart_putc('l'); // Send "left" command via UART
            l = false;
      }
      if (r)
      {
            uart_putc('r'); // Send "right" command via UART
            r = false;
      }
   }
}

// Port 2 interrupt service
#pragma vector=PORT2_VECTOR

__interrupt void Port_2(void)
{
   if ((P2IFG & BUTTON2))
   {
      P1OUT ^= LED1;  // Toggle LED1
      P2IFG &= ~BUTTON2; // Clear BUTTON2 interrupt flag  
      P2IES ^= BUTTON2; // Interrupt called on High-to-Low and Low-to-High 
      l = true;
   }
   if ((P2IFG & BUTTON1))
   {
      P1OUT ^= LED1; // Toggle LED1
      P2IFG &= ~BUTTON1; // Clear BUTTON1 Interrupt flag
      P2IES ^= BUTTON1; // Interupt called on High-to-Low and Low-to-High
      r = true;
   }

}

Por supuesto, usted podría ir una ruta diferente y  usar  Bluetooth para la conectividad. Hemos visto varios periféricos para juegos que utilizan esta técnica con dispositivos Android.

Fuente aqui