Introduction: Cargar Firmware Al ESP8266 Con Arduino

About: Fundador de The Inventor's House Hackerspace, Movimiento Maker y Hardware Libre, DIY, Workaholic

Hoy les traigo algo que varia gente me a pedido demasiado y es poder cargar el firmware al modulo wifi ESP8266 desde un Arduino, normalmente esto se hace por medio de un convertidor USB-Serial pero no todos tienen acceso a uno de estos dispositivo, ahora les voy a mostrar como hacer esto con un Arduino UNO en este caso

Step 1: Sketch Arduino

Lo primero que haremos es crear nuestro sketch en el IDE de Arduino pueden encontrarlo en github

https://github.com/sabas1080/ESP8266/tree/master/upload_firmware_with_arduino

Como se pueden dar cuenta controlamos los pines GPIO 0 y Enable del ESP por medio de los pines 2 y 3 de nuestro Arduino, ahora solo debemos cargar el sketch al Arduino

Sketch para cargar firmware ESP8266 por medio de Arduino

123456789101112131415161718
//sketch para cargar firmware a ESP8266 por medio de Arduino
//Esquematico en
int ch_pd = 3;
int io0 = 2;
voidsetup() {
pinMode(ch_pd, OUTPUT);
pinMode(io0, OUTPUT);
digitalWrite(io0,LOW);
digitalWrite(ch_pd, LOW);
delay(1000);
digitalWrite(ch_pd, HIGH);
}
voidloop()
{
}

Step 2: Diagrama

Ahora lo que debemos hacer es conectar el nuestro ESP8266 a nuestro Arduino como se muestra en la imagen y en base a nuestro sketch, recuerden que el ESP8266 se conecta a 3.3v, los pines de RX y TX son tolerables a 5v pero si tienen un convertidor lógico de 5 a 3.3v es mucho mejor.

Step 3: Cargar Firmware

Ahora que podemos usar la aplicación que mas nos guste como por jemplo Flasher o ESPtool.py o cualquier herramienta para cargar firmware perzonalizado, LUA o AT al ESP8266, solo debemos elegir el puerto donde se encuentra el Arduino y flashsear como se muestra en la imagen.

En este caso yo subiré el firmware de http://www.electrodragon.com/w/ESP8266_Firmware donde puedes encontrar la versión mas reciente AT

Espero les sea de utilidad este instructable si tienen problemas dejen sus dudas en los comentarios, nos vemos en la proxima