0% found this document useful (0 votes)
78 views15 pages

Intro Esp 8266 Firmware Update

This document provides instructions for updating the firmware on an ESP8266 WiFi module. It describes downloading the necessary software, finding firmware files, connecting the ESP8266 in flash mode using different boards, uploading the firmware files, and troubleshooting common issues. The ESP8266 is a low-cost WiFi chip that can be used independently or with a microcontroller. Updating its firmware allows for bug fixes or adding new functionality.

Uploaded by

DMX Electronics
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views15 pages

Intro Esp 8266 Firmware Update

This document provides instructions for updating the firmware on an ESP8266 WiFi module. It describes downloading the necessary software, finding firmware files, connecting the ESP8266 in flash mode using different boards, uploading the firmware files, and troubleshooting common issues. The ESP8266 is a low-cost WiFi chip that can be used independently or with a microcontroller. Updating its firmware allows for bug fixes or adding new functionality.

Uploaded by

DMX Electronics
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

instructables

Esp8266 Firmware Update

by RaviP6

The ESP8266 module is a cheap Wireless module.It has SOC(system on chip) that is capable of providing wifi to
any micro controller/microprocessor .There are two ways the esp8266 can be used .

1. Standalone esp8266
2. Esp8266 with raspberry pi or arduino or stm32

Esp8266 needs a external 3.3 v for working properly .If you are using esp8266 with arduino, try not to
provide power from arduino . As arduino maximum current providing capacity is 40mA while esp8266
draws 250mA. This is most likely the problem lies whenever uploading the new firmware or when you are
using the esp8266

For beginners its advised to go with node mcu board's available in market .There are two types of board's
one with RGB led & Ldr sensor and other with just breakout pins .This board has built in voltage regulator
that handles the proper power.

1. esp8266 witty board


2. Node Mcu

Esp8266 Firmware Update: Page 1


Step 1: Find Esp8266 Flash Software

Download the software from the drive

espFlasher

Step 2: Find ESP8266 Firmware Files

Go to this this link below to find firmware files.

1. AT firmware last updated 2017 sep


2. https://github.com/espressif/ESP8266_AT
3. https://drive.google.com/file/d/0B3dUKfqzZnlwdUJUc2hkZDUyVjA/view
4. https://drive.google.com/open?id=1c0zO8dbw5pIAc0lDYAg0cBx-PXFS_iTg

Step 3: Connecting ESP to Flash Mode

1. ESP 8266-01 module

Using Esp01 programmer adapter

Esp8266 Firmware Update: Page 2


This is the best way for flashing the esp01 buy this module and get free from messy wires in future .

Its very handy and very quick .

Esp01-programmer adapter

Note:The module do not enter the programming board directly .For this you need to solder the jumper on it .Please
refer the photo for this .The jumper is solder between gpio 0 and gnd pin.when not using in programming mode
shift the jumper to the empty pin.

Using BreadBoard Power module

Breadboard power supply

With this module you can separately give 5v to arduino and 3.3 v to esp8266 at the same time .This is the beauty
of this module .

Esp rx pin also need 3.3v .If you try to put arduino tx to esp rx .The esp module can get damage .To prevent this
from happening you can do two things .

1. Use Voltage divider


2. Use Level Shifter

1. Voltage divider

use 20k and 10k resistor to achive this . Please check the connection in photo

vcc & chpd of esp is connected to 3.3v

Gpio 0 & gnd of esp is conencted to gnd

Rx of esp is connected TX arduino directly

Tx of esp is connected to arduino rx via voltage divider

2. Level shifter

Please check the connection in photo

connect 5v of breadboard power supply to hv pin of logic level


connect 3.3v of breadboard power supply to Lv pin of logic level
connect tx of arduino to any other hv pins out of 4 pins ,corresponding to the pin you have
connected tx ,connect rx of esp to that which will be Lv pin

2. Esp 8266-12 module

I found daflabs instructables best for this module so far

https://www.instructables.com/id/Getting-Started-with-the-ESP8266-ESP-12/
Esp8266 Firmware Update: Page 3
I used Arduino instead of cp2102 module, and I had no issue in communication.

The connection will remain mostly same for esp8266-12 to run it in flash mode.

GPIO0 -> LOW

GPIO2 -> HIGH

GPIO15 -> LOW

Esp8266 Firmware Update: Page 4


Esp8266 Firmware Update: Page 5
Step 4: Uploading Firmware

Upload the blank program on arduino if using. And then connect esp tx and rx pins on it
Open the software and one by one add the bin files in it..
Now add the addresses as follows .

boot_v1.2.bin --0x00000

user1.1024.new2.bin --0x01000

blank.bin --0x7e000

blank.bin --0x3fe000

esp_init_data_default.bin --0x3fc000

Then just click flash button ,if everything is fine the flasher will show you the status of download and
also your esp 8266 module led will blink very fast.
Congratulation!!! .you have uploaded latest firmware to esp8266.
If you do not find this mac address .use the reset pin and put it to gnd for 2 seconds and then
remove it from gnd and re flash it .Its very important to get the mac address.
IT’s time to test your Esp module .now just remove GPIO 0 wire that was connected to GND ,you
can connect it to VCC or leave it like this.
Now plug your Arduino back to pc and open serial port.
Check the at commands on different baud rate ,most of the esp works fine on this 115200 baud rate
.
NOW its time to test AT commands .enter "AT" in serial port and you will get "OK". Now enter
"AT+GMR" and check the firmware version.
To change the baud rate you can do this "AT+UART_DEF=9600, 8, 1, 0, 0"

Esp8266 Firmware Update: Page 6


Step 5: Using Esp Flash Download Toll V0.9.3.1

There are two software to install the bin file on soc of 2.)Now just browse the bin file you want to upload on
esp8266 ,The second method is by using esp flash esp and do not change any of the settings except
download . the com port and change baud rate to 115200 and
click on start .you will see an uploading status .Have
1.)Download the software from the below link some patience until it says finish.

http://bbs.espressif.com/viewtopic.php?t=25

Step 6: Program Esp Using Esplorer

esplorer is a software specially made for esp8266 wifi module.you can upload lua code or AT commands on the esp8266 by
using this software.
download this from the link given.
http://esp8266.ru/esplorer/

Esp8266 Firmware Update: Page 7


Step 7: Troubleshooting

1.)Power esp 8266 from external power supply 4.)Note:


.please avoid using arduino or computer for vcc. http://www.allaboutcircuits.com/projects/update-the-
firmware-in-your-esp8266-wi-fi-module/ another link
2.)check the circuit thrice and always while that might help you to solve the problems with esp
uploading firmware try to manually reset esp8266 module.if non of the above
by making chpd gnd for some time and put it back
to vcc . method works...

3.)make sure you use either a buck or a 3.3


regulator. esp8266 needs constant current too.

Hi fellow,
I have problem flashing nodemcu to esp-01 using arduino (empty skectch). Here is my
configuration:
ESP8266 - Arduino

GND <-> GND (black)


VCC <-> 3.3v (red)
Esp8266 Firmware Update: Page 8
GPIO0 <-> GND (purple)
GPIO2 <-> 3.3v (orange)
CH_PD <-> 3.3v (pink)
TX <-> TX (via logic level shifter) (yellow)
RX <-> RX (green)

The esp module works normally in normal mode (Esp GIPO0 ->3.3v), i can run AT commands and
connect to access point. But if change the GPIO0 to GND in flash mode, i get no response in serial
terminal and also the esptool.py returns reponse time out.

Is anything wrong with my configuration? sorry i'm new to this, need your help. thank you.

Hi,LorensW
When trying to upload firmware do one thing .Use the reset pin on esp8266 and plug it in gnd and
then remove it after 2 seconds.
Then try uploading firmware again.
Most likely you will get be able to upload the firmware and get the mac address in the dialog box
too.

Those of you who are having the problem "Failed to Connect" just make sure:
1. GPIO 0 --> GND
2. Use external 3.3V source to power ESP
3. Make common GND between Arduino and ESP power source (this is most important)

I tried all these steps, yet i got "Failed to Connect"

Hey!
I have got the same problem! Try to restart the ESP-module by unpluging the 3.3V pin and then
plug it back! It worked for me all the times.If not, be sure that the COM port is closed, the voltage
pin is unplugged and then repeat the steps from this tutorial.

Anyone happen to know if these would be compatible with Wink home automation hub?

Esp8266 Firmware Update: Page 9


I am using FTDI Basic, ESP8266 Breakout Board and ESP-01 module as shown in the Image
below. I am able to flash firmware (4 files with ESP download tool and One bin file with ESP
Flasher tool). But whenever I am trying to execute any AT command, ESP-01 doesn't even
respond. I have tried changing baud rate from 9600 to 115200. but the result is same. Screenshot
of ESPlorer is also attached. Can you please suggest some solution to it.

I got it rectified myself. Just sharing the solution here. I didn't use any external supply to esp8266. I
just replaced the FTDI Basic with PL2303 moddule connected to ESP8266 Breakout board. I am
connecting it to my laptop. I am able to flash Firmware successfully and now getting response of
AT commands using ESPlorer.

what is .bin file for esp8266 flashing and how to dwn it ,pls help me

Thanks man, i have been spendig days without finding a solution!

I was having the same problem,I solved this by changed usb to ttl from Figure 1 to Figure 2.

Hi All, After Reading the Instructable and doing it on 2 diffrenet esp . I always end up with an
unresponsive AT. I want to know the easist way to factory reset esp8266. So i can Send AT
commsnds.

Let me know how your are powering the esp8266 first and the other connections too.This is the
first hurdle when you use the esp8266.
Next is the firmware file is itself corrupt.you need to download the AT firmware file from github.com.
Also check the esp8266 temperature regularly.If the temperature is exceeded due to excess of
voltage the esp can get internally damage.
There are fake esp8266 01 modules available in market be careful.

Hi NavalJ ,I am also stuck in same error plz share what did you find.

Esp8266 Firmware Update: Page 10


Let me know how your are powering the esp8266 first and the other connections too

Hi,
I have just started learning ESP8266-01 module.
Is it necessary to flash the 8266 module before programming it with any code to use it for some
purpose ?
OR
Does it it come pre-flashed and we can start programming it with our own code without the need of
flashing ?

By default it comes with AT firmware.There is no need to flash new firmware.

Hi thanks Ravi,
Got that. So then how and when a re-flash is needed for ESP8266. Is that when the chip corrupts
or freezes or what ?

Hi, I'm stuck with trying to communicate with my esp8266 -01.


Any ideas on what could be going wrong? I can't upload any lua code. I've followed the firmware
flash and done it a few times. I feel like I'm missing something..

how are u powering esp8266?make sure you do not power from laptop nor arduino .use an
external power supply and then try.

ah perfect!! that worked! thank you.

Hey.. I always get "invalid head of packet" on 6%.. what to do? ²

I had this issue. Swapped USB cords and got to 100%.

Try some other esp8266 firmware .it looks like the firmware that you are trying to put is corrupt

Esp8266 Firmware Update: Page 11


I'm using fimware recommended for you

Kindly check the power. provided to ESP-01

Hi EliasA5 - I get the very same problem. If you find a solution, it will be very much appreciated if
you share it.

Hi Ranip, I found a soluction. I using the esptool


(https://github.com/themadinventor/esptool) . First I changed the line
44 to "ESP_RAM_BLOCK = 0x180" and changed the line 45 for or to "ESP_FLASH_BLOCK =
0x40" (esptool/esptool.py).
Firmwares ----> http://bbs.espressif.com/viewforum.php?f=46
I have a esp01

Thank you Elias for sharing your opinion.

Great guide!
[SOLVED] To all the people having "Failed to connect", this is how I solved it.
My setup:
1) os: OSX El Capitan
2) esp: ESP8266-01
3) Arduino Uno: DCCDuino clone
4) flasher: esptool.py
5) connections:
ESP--->Arduino
GND(-): GND
GPIO0: GND
EN(CH_PD): 3.3v
VCC(+): 3.3v
TX: TX
RX: RX
This was failing, so the solution was:
Add 1000mf capacitor between + and -, and that's it!
Hope it helps, I spent more than a day 100% on this, and finally got it working thanks to the above..
cheers

I was having the same Issue,I solved this but by pressing the reset button 2 or 3 times (while
holding the [PROG] button) when it tries to connect.

Esp8266 Firmware Update: Page 12


just to avoid some confusion, the Rx-Rx and Tx-Tx connection I presume is when you use arduino
board to flash the software as connecting the Tx of ESP8266 to Tx of Arduino, is in fact connecting
it to Rx of the USB interface.

Obviously if you want to have your ESP8266 work with yr Arduino, e.g. as a WiFi shield, you need
to connect Rx-Tx and Tx-Rx

Thank you berlingozzo for sharing it.

Hi, can you draw the scheme of your setup, because i'm new in this...
And, what capacitor voltage do you use...?
Thanks..

Thank you for such a nice Tutorial :) !

Yeah I worked for me. and solved the following Issues:


1- My ESP-01(Black PCB 1024k) was printing garbage on serial monitor. But after re-flashing that
problem is gone !. and the BAUD rate restored to 9600.
2- I was failing flashing again and again even I thought I bricked my module (The blue LED was
blinking very fast even if there was no Rx and TX wires attached to USB-TTL converter)
3- Error occur right after resting the Module "ets Jan 8 2013,rst cause:2, boot mode:(3,6)" also
gone.
Thank you once again :) !

it*

Please help me in following :


I have successfully upgraded firmware in my ESP8266-01, but after upgrading when I connect
ch_pd to 3.3v it disconnects my arduino, and LED on uno starts blinking fast,
I have tried to add pull up resister of 3k between 3.3v and ch_pd pin, but still it disconnects my
arduino.

Kindly post the picture of the schematic you used.


Try these :
Disconnect RX and TX connections, GND, VCC (must be 3.3V) CH_PD(pull high),RESET(PULL
HIGH) and press the RESET button 2 OR 3 times rapidly. circuit should be as following(image
attached) .

Esp8266 Firmware Update: Page 13


The Continuous/ fast blinking Blue LED should stop.
the problem will not go until you re-flash it. (worked for me!).

I'm a complete beginner. I'm using a 201 module (also tried the 01 with the same issues) I flashed
the newest firmware called "nodemcu_float_0.9.6-dev_20150704". In Lua Loader I get a page of
this gibberish when uploading a file to the esp. In esplorer I get this "Can't autodetect firmware,
because proper answer not received. Please, reset module or continue manually..." In case this is
a situation with the firmware I also tried the stock firmware with ESP8266Flasher and also v0.9.2.2
AT Firmware. I followed the steps to cycle reset a few times but nothing works GPIO0 is indeed
high, GPIO2 10k resistor high, GPIO15 10k to low, reset to high, CH_PD high, RX through a
voltage divider. Any other clues? I've spent days trying to get this going.
Thanks

Please Help resolve this error

Have you solved your problem? I have same issue.

I am done I have done all the steps as you mentioned but at last I am able to sent at commands
using esplorer but I am unable to send any LUA file to esp it sends error after every line on right
hand side of the software's window

Hello Experts

We
have been struggling to execute application on ESP8266 and I tried all the flashing procedure
mentioned above but no luck and
our esp8266-01 is resetting again & again with watchdog reset error

wdt reset
load 0x4010f000, len 1264, room 16
tail 0
chksum 0x42
csum 0x42
~ld
Setup don start

Esp8266 Firmware Update: Page 14


We have been using below schematic for the connection and here is the part number.

ESP8266 01 wifi transreciver


D-SUN "USB to TTL" (Blue)
We are connecting 2 pencil cells to supply 3.3V to ESP8266. is that correct ? what should be the
current ?
Please advice how to proceed further.

getting error: FILE="init.lua" file.remove(FILE) file.open(FILE,"w+") uart.setup(0,9600,8,0,1,0)


file.close();
Error

while uploading the code to ESP using Esplorer I get the error stating: "waiting answer from ESP –
timeout reached,send abort.".. how to solve it?

How did you connect the esp? Have you grounded esp gpio 0?

Yes I grounded the Gpio0 pin

I've already downloaded the firmware to esp8266. However, when I disconnect the gpio0 , the com
port of the computer disappeared. Any AT command to esp8266 cannot get any response. Is there
any solution to this problem?

Here is the link for firmware : https://github.com/espressif/ESP8266_AT

How have you connected the esp module?

Esp8266 Firmware Update: Page 15

You might also like