Introduction: Firmware Flashing of ESP8266

Everyone is tried to update the firmware of the ESP8266 module the Instructions may help you in the flashing the firmware in ESP8266.

Step 1: Connect the ESP8266 With Computer.

First of all you need to connect the ESP8266 with Computer with the help of Arduino UNO or USB-UART.
follow the circuit diagram to connect the ESP8266 module with Arduino or USB-UART


  • Connect the 3.3v pin of Arduino UNO to the V++ and EN pin of the ESP8266
  • Connect GND pin of Arduino UNO to GND pin of ESP8266
  • Connect TX, RX of Arduino UNO pin to RX and TX pinof ESP8266
  • Connect a switch between GND pin of Arduino UNO and CPIO0 pin of ESP8266 to activate the firmware update mode. (when switch is pressed)
  • Connect RST of Arduino UNO to GND of Arduino UNO

as per Circuit diagram


  • Connect the 3.3v pin of USB-UART to the V++ and EN pin of the ESP8266
  • Connect GND pin of USB-UART to GND pin of ESP8266
  • Connect TX, RX of USB-UART pin to RX and TX pin of ESP8266
  • Connect a switch between GND pin of USB-UART and CPIO0 pin of ESP8266 to activate the firmware update mode.(when switch is pressed)

Step 2: Check the Current Version

To check the current version of your ESP8266 open the Arduino IDE (if you don't have click the link to get it :- )

Note:- The switch b/w the GND and CIPO0 will be open (not pressed)

Open New Project < Select the Port in Tools < Open Serial Monitor in tools < Select the Baud Rate to 115200

The serial port monitor need be set that command line will be send with final NL and CR chars both.

In comment Section Test the AT command

Type AT and press Enter

it will return



Note:- If not worked press the RST button on Arduino UNO and try again

after test type

AT+GMR to check the current firmware version

the output will be like:-

AT version: 8 2015 14:45:58) 
SDK version:1.3.0  
Ai-Thinker Technology Co.,Ltd.
Build: Sep 11 2015 11:48:04  

Also it is necessary to know the flash memory size of ESP module, firmware upload address depend on it size. This manual describes updated firmware of module with flash memory size 8Mbit (512KB+512KB) or 16Mbit (1024KB+1024KB), as the most common. Flash memory size can be found if send the AT-command from reset: AT+RST.

the output will be like:-



ets Jan  8 2013,rst cause:2, boot mode:(3,1)

load 0x40100000, len 1396, room 16 
tail 4
chksum 0x89
load 0x3ffe8000, len 776, room 4 
tail 4
chksum 0xe8
load 0x3ffe8308, len 540, room 4 
tail 8
chksum 0xc0
csum 0xc0
2nd boot version : 1.4(b1)  
	SPI Speed      : 40MHz  
	SPI Mode       : DIO  
	SPI Flash Size & Map: 8Mbit(512KB+512KB)
jump to run user1 @ 1000
Ai-Thinker Technology Co.,Ltd.


note all the details and exit

Step 3: Flash Tool and Firmware

To update the firmware you must download the special tool application and the firmware itself. Application for firmware update ESP8266 will use Flash Download Tools from official site Espressif Systems. Link to the download page:

The firmware can also be downloaded from the official site. A link to the download page on the official website:

You must go to “SDKs & Demos” section and download firmware ESP8266 NONOS SDK version at least v1.3.0. or Higher version

All downloaded files must be unpacked and placed in the directory.

Step 4: Flashing Firmware

Run the application Flash Download Tools v "any version" (the .exe file of the same name). In the opening window must correctly chose the downloaded files and setup the connection mode.

Downloadable files are located in the "bin" directory with the firmware files. For each file you must specify a valid address download. Select the files in the "bin" folder

Use the following table in images to select files and destination addresses

Set the following settings:

  • SPIAutoSet — set;
  • CrystalFreq - 26M;
  • FLASH SIZE – 8Mbit or 16Mbit depending on the size of the flash memory;
  • COM PORT – select the port that is connected to ESP;
  • BAUDRATE – 115200

Click button "START" in the application for update firmware.

its Sync the data with the Board and start uploading

Note:- If not works press the "RESET" button on the arduino and then press "START" again

Wait until the end of the update firmware. At the end of the process appears inscription FINISH green.

Turn off power the ESP8266 module and disconnect the ground from pin CPIO0. (Un-press the switch )

Turn on the module and run the serial port monitor. Make sure the module and new firmware version is works by send the AT-command AT+GMR.