Hace tiempo que tengo archivado este módulo WIFI ideal para utilizar con Arduino y recientemente agarré ganas de investigarlo un poco.
El ESP8266 es básicamente un modulo que nos libera de la necesidad de preocuparnos por la implementación de la TCP Stack ya que la tiene incorporada en un microcontrolador que tiene integrado. El mismo se opera con sencillos comandos AT enviados por el puerto serie y si buscan por la web van a encontrar miles de ejemplos y casos de uso.Es realmente sencillo y, más importante aún, BARATO. Yo compré el mio por alrededor de 180 $AR, más o menos lo mismo que sale un clon de Arduino Nano)
Lo interesante que tiene este módulo radica es su microprocesador ya que el mismo es muy potente en comparación con otros dispositivos como los arduinos más chicos. Tiene un microprocesador de 32bits corriendo a 80MHz y al rededor de 500k de ROM. La desventaja es que acá en Argentina solo he visto el modelo de la imágen que tiene solo unos pocos Pins expuestos
ACTUALIZANDO EL FIRMWARE DE FABRICA
Ahora, lo que vamos a hacer es cambiarle el firmware que trae de fabrica (el que responde a comandos AT) y ponerle uno custom de NodeMCU con lo cual vamos a poder programarlo y utilizarlo como un microncontrolador cualquier.
Para ello, debido a que no tengo un cable ttl-rs232, voy a usar un Arduino Nano v3 como un puente realizando las conexiones de la siguiente manera.
Tener en cuenta:
- Las líneas de alimentación superior no son realmente necesarias pero las inferiores de la protoboard deben estar a 3v para alimentar el modulo ESP8266 y NUNCA deben hacerlo con los 3v del Nano ya que tanto para iniciar como para flashear el módulo tiene un consumo bastante alto con lo cual podríamos dañar el Arduino y/o el modulo WIFI. En mi caso estoy alimentando la protoboard con 5v y 3v provenientes de una fuente ATX que tengo para pruebas.
- En realidad deberíamos utilizar un divisor de voltaje en el pin RX ya que el ESP8266 es TTL de 3v. A mi me funcionó directamente con el pin del arduino pero no recomiendo hacerlo siempre así
- NO SE OLVIDEN DE CONECTAR LAS MASAS ;). Si no lo hacen puff olor a quemado :O
Para poder subir el nuevo firmware pueden usar esta aplicación: NODE FIRMWARE PROGRAMMER (Win32 / Win64 ). Pueden encontrar más información acerca de esta herramienta acá.
En mi caso tuve que cambiar los baudtate por defecto ya que mi módulo funcionaba a 9600 de fabrica.
Luego hay que iniciar la programación haciendo clic en Flash. Si el modulo queda parpadeando en azul debemos llevar el PIN de RESET del módulo a masa durante un instante para que se reinicie y entre en modo programación
Si todo sale bien veremos está pantalla indicando el fin de la operación.
Observaran el icono verde en la esquina inferior izquierda de la ventana y que los campos AP MAC y STA MAC contiene un valor válido. Estas son las MACs del módulo cuando funciona en modo AP y STATION.
Genial, con esto ya hemos cambiado el firmware del módulo!
Recomiendo usar ESPlorer. Es una muy buena herramienta para comunicarse con el modulo tanto como para el firmware de comandos AT como para subir los LUA scripts al modulo con el firmware de NodeMCU
En breve: Programando el ESP8266 directamente con el Arduino IDE
No hay comentarios:
Publicar un comentario