Conversión de carga inalámbrica para smartphones


La utopía de carga inalámbrica que describía Tesla hace muchos años con su famosas bobinas Tesla, esta  cada vez esta  mas cerca de ser factible  gracias a  la evolución de los sistemas de carga  inalámbrica no solo empleados en pequeños dispositivos electrónicos como pueden ser smartphones de gama alta  sino también en todo  tipo de aparatos eléctricos como pueden ser  los cepillos eléctricos o los actuales coches eléctricos

Realmente, con la tecnologia actual, podemos hablar de dos sistemas de carga  :

  1. Carga Electromagnética: Este tipo de carga es inductiva y utiliza un campo electromagnético para la transferencia de energía  asi que podríamos decir que usa un principio similar al usados en los transformadores tradicionales  con dos  bobinas donde ahora el primario esta fuera  y el secundario en dispositivo a cargar. Hablamos pues de carga  a corta distancia que  requiere casi contacto con los dispositivos.Hasta no hace mucho había tres contendientes en el mercado, pero Power Matters Alliance (PMA) y la Alliance for Wireless Powery aunaron sus fuerzas dando lugar al Wireless Power Consortium   dando lugar al standard   Qi que es usado en muchos  smartphones de alta gama de modo nativo (Nexus 4/5,Nokia Lumia Icon/810/822/920/928/1520,LG Optimus F5/Lucid2,Motorola Droid Maxx,Motorola Droid Mini y HTC Droid DNA Butterfly)   o  con carcasas especiales (LG G2,iPhone 4/4S/5/5C/5S,Nokia Lumia 820/925/1020,Moto X,Samsung Galaxy S3/S4/S5,Sony Xperia Z2,etc)  y  también  en el nuevo sistemas de carga inalambrico integrado en los muebles  de Ikea
    1. Algunas ventajas: No hay un riesgo de recibir una descarga ya que no hay contacto directo con la fuente de energía. Es segura incluso en contacto con agua.Es muy cómodo y evita averiar el conector del puerto microusb
    2. Algunos puntos debiles: El dispositivo que se encarga de la transferencia de energía en comparación con un sistema de carga cableado es sensiblemente inferior
  1. Carga por Resonancia: Este tipo de carga se da a una distancia de 50 centímetros. Se utilizan dos bobinas de cobre, una que hace el trabajo de enviar la energía de la fuente y otra que recibe la energía y que va conectada al dispositivo a cargar. La transferencia de energía se da cuando las dos bobinas tienen la misma frecuencia y están cerca.

 

En este post vamos a ver como es posible añadir  un cargador inalámbrico por inducción a cualquier smartphone  aunque este no venga preparado  para este tipo de  carga   .

Realmente el principio es sencillo pues la corriente continua producida por el cargador tradicional del móvil se volverá a transformar en corriente alterna por medio de un oscilador  y una bobina , y dicha energía se inducirá  desde la bobina transmisora hasta la bobina receptora que colocaremos en el dispositivo  a cargar junto a un  circuito convertidor ca /cc.

Aunque es posible fabricar tanto el transmisor como el receptor de carga inalámbrico uno mismo con  una bobina de cobre  un transistor  2sc5200  y una resistencia de 6k2 en el lado energizador  y otra bobina ,un puente de diodos ,un diodo zenner y un pequeño condenador electrolítico en la parte receptora ,  como podemos ver en este diseño de cargador inalámbrico  y otros muchos diseños más , realmente es complicado llegar a hacer un circuito discreto  que no se vea  y que sea  realmente practico.

Gracias a la miniaturización  y las placas con  tinta conductora   han aparecido realmente diseños  muy  interesantes para el lado receptor    , tal  y como el  diseño  de Xcsorce    pues gracias a su delgadez  extrema puede colocarse entre la batería  y la carcasa de cualquier  teléfono    con Micro USB como puerto de carga, no aumentando el peso adicional del móvil.

2016-12-12_23h26_10.png

El diseño trabaja  en la banda de  100-200KHz (la banda de Qi)  por lo que para el transmisor  podemos usar cualquier cargador inalámbrico , necesitando ,eso si,  una distancia de 5mm entre la bobina integrada del cargador inalámbrico y éste , distancia suficiente  «alta» como  para colocarlo dentro de la carcasa del terminal ,no quedando asi visible .

 

Este modelo  permite un fácil montaje y desmontaje, cómodo de usar en solo 4 pasos de la siguiente manera:

  1. Retirar la tapa posterior
  2. Enchufar en la cabeza usb micro
  3. Colocar la bobina  y el circuito sobre la batería(¡Ojo! Las bobinas solo cargan por una cara, por este motivo es «MUY IMPORTANTE» saber que tipo/posición de conector tenemos.)
  4. Poner en la contraportada.

2016-12-12_20h43_10

 

Obviamente  el cargador  puede estar unido en todo momento sin tener que sacar el conector de modo  que  se puede alargar la vida del propio conector microusb  del terminal  y ademas  protegerlo  porque no hace falta quitarlo en el uso normal .Las «fajas» de estas bobinas suelen ser muy finas, lo que nos permite cerrar la tapa y que quede totalmente oculta.Como es lógico, se «pierde» un conector microusb, pero se gana la carga por inducción.

Este  receptor inalámbrico WPC Qi es compatible pues con móviles que usan usb micro siendo esta la forma más eficiente para que cualquier  dispositivo pueda  convertirse en compatible con carga inalámbrica  teniendo  un impacto mínimo en el precio, sin necesidad de comprar accesorios de alimentación inalámbrica externos o módulos integrados en el dispositivo.

Respecto si el micro usb del terminal si es hacia arriba o hacia abajo  no importa si el USB va al derecho o al revés ya que puede doblar el cable que trae y se adapta; tan solo no sirve para los móviles que tengan el conector enfrente de la cámara como es el caso del MLAIS M52 Red Note porque tapa esta al conectarlo.

Para terminar , aunque ya se ha comentado, como el receptor trabajar con la plataforma de carga inalámbrica Qi , el cargador inalámbrico también lo deberá hacer ( es decir los modelos estándard).

 

I

 

 

Grabador de EPROM para Nintendo


 La tendencia actual en muchos  equipos electrónicos es que estos se asemejan cada día mas a las ordenadores, pues televisores de última generación (LCD’s, retroproyectores, etc.),televisores, equipos de audio, DVD, cámaras digitales, reproductores de mp3 ,teléfonos,etc   incorporan en su electronica , memorias  con el software grabado en su interior..Es así como en los electrodomésticos actuales se incluye unos circuitos de memoria del tipo EEPROM los cuales en su gran mayoría manejan la serie 24XX , 93Cxx pero también memorias clásicas memorias  como son las  estándar 27C64 y 27C128.

Muchas de los fallos que presentan los equipos electrónicos,  donde también incluimos casi todos los antiguos juegos en formato cartucho, se deben a problemas en las memorias EEPROM que utilizan.

En efecto, una memoria puede resultar dañada y dejar de funcionar correctamente, pero en la mayoría de los casos, el problema es que se ha alterado o perdido su contenido o información binaria, es decir, los datos que tenía grabados en su interior. Eso es lo que mayormente provoca fallos de funcionamiento en el equipo que  la utiliza.

Lo interesante es que reescribiendo el contenido original de la memoria, ya sea en la misma o en una nueva, el mal funcionamiento del equipo desaparece y la avería queda resuelta.Ademas no solo nos podemos limitar a copiar el contenido origina, pues adelantándonos  un paso más incluso podemos incluso cambiar el contenido original por otro que nos interese.

El autor del programador  que vamos ver, Robson Couto, tomó la decisión de fabricarse su propio cartucho  cuando se compró una consola SNES, descubriendo   al poco tiempo que la mayoría de los cartuchos que se venden  actualmente para esta consola  supuestamente «originales» en realidad no lo son pues  tienen la ROM cambiada y los vendedores  pretenden cobrarlo a precio original  sin por supuesto carecer de los derechos del software original .

cartucho.png

Couto , molesto con esta actitud ,entendió que se no deberia  sobrevalorar algo que en esencia no es demasiado licito  pues no se puede vender  software  del que no se posee  licencia, por muy antiguo que sea,  así  que  decidió  crear  sus propios cartuchos usando para ello su Arduino Mega para programar la memoria EEPROM,   que es realmente la memoria donde se almacena el juego  dentro de cada cartucho.

Para gestionar la grabación de la EEPROM con su Arduino, eligió el lenguage  Python  para hacer el programa de grabación  de las memorias EEPROM , las cuales, por cierto se pueden encontrar por un módico precio en ebay.

Robson ha necesitado hacer bastante trabajo de programación e ingeniería inversa para conseguirlo, pero finalmente lo consiguió   y ha  decidido compartirlos con toda la comunidad  tanto los esquemas del circuito como sobre todo  el software que permite hacerlo funcionar.

¿Cómo se fabrican los cartuchos de repro (normalmente) que hay disponibles en el mercado?

  1. Se busca  un cartucho de juego aburrido (deportes especialmente);
  2. Se graba una EPROM con el archivo ROM deseado;
  3. Se cambia la ROM del cartucho con la ROM programada.

Bien, pero entonces ¿por qué no todos están haciendo sus propias repros ?

Pues por el precio , dado que un programador no es tan barato,ya que incluso los chinos tampoco lo son ( ademas  dependiendo del lugar habra que pagar impuestos,etc)

Todo tiene una relación costo-beneficio y los fabricantes / hackers están siempre creando herramientas super útiles con materiales baratos. En 2014, se fijo el cartucho de  Mega Drive  utilizando chips  BIOS que se encuentran en la chatarra. Escribir memoria flash no es trivial, hay un cierto algoritmo, pero sigue siendo un proceso relativamente simple, asi que escribir en una memoria EPROM no debería ser mas complicado.

El programador

Una EPROM también es una memoria,y en realidad es aún más fácil de programar que las memorias flash. Para escribir un byte en EPROM tenemos que seguir lo siguientes pasos:

  1. Seleccione la dirección a través de los pines A0, A1, A2 … y así sucesivamente
  2. Poner el byte de datos para ser escrito en Q0 pines, Q1, Q2 … etc,
  3. Dar un pulso de al menos 50ms  con una tensión de  13V en el pin Vpp
  4. Repetir el proceso para toda la memoria  ( en caso de de la eprom 27C801  son  8 * 1024 * 1024 = 8388608 direcciones)
  5. También, debe ser observado que el Eprom necesita ser alimentado 6V cuando está programado(motivo por el que se ha incluido  un  interruptor en el esquema de mas abajo aunque se puede utilizar  en su lugar  un simple puente simple y cambiar manualmente Vcc cuando era necesario).

 

Para continuar es sumamente interesante comprender el pinout de una memoria típica  con las típicas señales de control : VSS,Enable y GVPP

27c801

 

Los 13 voltios son proporcionados por un módulo de refuerzo ( boost) que puede conseguirse ya montado el cual básicamente es un convertidor DC-DC de 5V a 12V, pero claramente se puede usar una simple fuente de 12 voltios,aunque esto hará necesario conexiones externas al montaje

De la salida de 13V del modulo Boost , gracias a un regulador LM317  y dos resistencias de 1K  ajustable y una de 220 ohmios  , podemos obtener los 6V para alimentar el circuito en modo programación ,aunque claramente también se podría  haber optado por  un simple LM 7806 , regulador que como sabemos no necesita ajustes.

Por ultimo ,para conmutar la señal de programación G/VPP que conectaremos al pin 24 del zocalo ZIF necesitamos dos circuitos  de conmutación cuyas salidas  conectaremos a dicho pin. Ambos circuitos están  basados en dos transistores de pequeña señal NPN y  PNP (por ejemplo BC557 para el PNP y un BC547pra NPN) alimentandos por 13v y 5V respectivamente usando como señales de control las señales 3(13V) y 5(5v) del Arduino Uno

A continuación se muestra el esquema final del programador:

grabador

Como vemos el circuito gira alrededor de un zocalo ZIF de inserción nula para que no dañe las patas de la EPROM , y  se conectan  30  pines del Arduino  UNO  al  bus de direcciones  de 20 bits (son los pines numerados con A0 ,A1,,..A19)  y el bus de datos de 8 bits  (son los pines numerados con q0,q1,..q7)  de  la EEPROM.

Las conexiones que se usan en este circuito son casi todas las salidas binarias del bus de expansión del Arduino Mega:

arduino-uno

Las conexiones entre el zocalo ZIF y el arduino Mega utilizadas son las siguientes:

27c801

ARDUINO MEGA

1-A19 39
2-A16> 40
3-A15 37
4-A12 34
5-A7 29
6-A6 28
7-A5 27
8-A4 26
9-A3 25
10-A2 24
11-A1 22
12-A0 5
13-Q0 5
14-Q1 6
15-Q2 7
16-VSS GND
17-Q3 8
18-Q4 9
19-Q5 10
20-Q6 11
21-Q7 12
22-ENABLE(NEGADO) 2
23-A10
24-G/vPP VER CIRCUITO
25-A11 33
26-A9 31
27-A8 30
28-A13 35
29-A14 36
30-A17 41
31-A18 38
31/VCC 5V ó 6V

 

 

El montaje podemos soldarlo  directamente  en un escudo de prototipos para un Arduino Mega que enchufaremos encima del propio Arduino

Como comentábamoses muy interesante usar  un zócalo ZIF, lo cual hará mas facil   conectar  y quitar la Eprom.

 

Software

Obviamente el circuito montado sin sw no podemos hacer nada , así que el autor ha escrito tanto un script ,como un sketch para ayudar a la lectura o grabacion de la Eeprom usando para ello un  script en  Python que lee los datos de un archivo y los nvía estos al Arduino Mega, que recibe los datos y los escribe en la memoria

Python 3 y pyserial son necesarios para cargar datos a la eprom pues como vemos el sw en realidad se compone de dos partes:

  • El script en python para leer el fichero  y enviarlo al Arduino por el puerto serie  y también para leer el contenido de la EEPROM via peticion al Arduinoi
  • Un sketch  para  Arduino para permitir leer y escribir en  la Eeprom, donde como hemos comentado ,para la programación, se debe aplicar un vpp de 12V y un vcc de 6V a la eprom

Los archivos del proyecto están disponibles en el repositorio de github del autor.

Ahora usted ya sabe que puede programar EPROMS con sólo un Arduino Mega y algunos componentes adicionales( y no se preocupe si se equivoca,!pues  puede borrarlos simplemnte liberando la ventanita y exponiendo esta  con luz UV ! )

 

Fuente aqui