Page 3 of 5

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Tue Apr 26, 2016 1:26 am
by JLC
Hi, these are my esp8266-07.
The module with multicolor plane cable is the module with fatal exception as I have described in my previous post.
I remember that I use pin 04 as input with a push button to GND and Pin 05 as an Output with a led & 2k2 ohms serial resistance. However I have read in a site that some esp8266-07 has a problem with the silk screen and the gpio 04 and gpio 05 are changed. So, I am afraid that I put the push button to GND in the Output. Perhaps this condition have damaged the chip....

The second module, with a gray plane cable, is working fine, but I made a previous test of GPIO 04 and GPIO 05 and I verify that GPIO 05 and GPIO 04 silk screen are wrong...taking this issue in mind, I configured the io pins in the correct way.....
I have used 4K7 ohms Pull Up resistors for GPIO 0, RST, CH_PD, GPIO2 and pull down GPIO15.

You can see the FTDI USB interface from Sparkfun. The power supply is taken from the 3.3 v in this break out. I have measure the Current consumption of ESP8266-07 gray cable during 2 hours working as a AP and serving a web page and the current is < 170 ma.

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Mon May 16, 2016 11:47 pm
by pk_rulz

It is possible that the GPIO2 is not connected to high. ESP is very sensitive to the voltage on the pin and if it is used as IO have very high chances of some issue.

GPIO2 should be high to start reading from the flash or it will continue to give fatal exception.

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Thu Jun 30, 2016 2:55 am
by JLC
Hi, Yes I have checked GPIO2 and it is High at boot time....
I am afraid that the module is broken... my conclusion is related to the wrong silk screen in GPIO4 and GPIO5. I put a push button in GPIO04 and a Led in GPIO5 (as in silk screen stated) so GPIO05 was OUTPUT thinking the led was in this pin.... so when I pushed the button (attached to the "real" GPIO5), I put the OUTPUT to ground without any resistor... I will try in the future with this module....Just now I am using other ESP07 with no problem.

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Sun Sep 11, 2016 4:41 am
by dsbaha
Has anyone found a solution to this problem? I, too, am experiencing the "bootloop" which was mentioned earlier. I can flash, I can place the bootloader into "SDIO" mode, I see the bootloader actually loading up. It just goes straight to "Fatal Exception (0)" trying to run the user code. Maybe there is something wrong with the bootloader?

Code: Select all

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

load 0x40100000, len 28740, room 16
tail 4
chksum 0xcd
load 0x3ffe8000, len 2888, room 4
tail 4
chksum 0xbc
load 0x3ffe8b50, len 15252, room 4
tail 0
chksum 0x4f
csum 0x4f
Fatal exception (0):
epc1=0x4021058c, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000000, depc=0x00000000

Then it repeats the following two lines forever;

Code: Select all

Fatal exception (0):
epc1=0x4021058c, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000000, depc=0x00000000

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Sun Sep 11, 2016 9:30 am
by dsbaha
The following is what I get with ESP Flash Tool v3.3.6;

Code: Select all

check_res: (True, [])
is running :  False
set STOP FLG:  True
pic path: ./RESOURCE/IDLE_S.bmp
test running : False
BAUD 0 : 115200
test COM: COM4 <type 'unicode'>
test self._COM: COM4
test baud:  115200
test type : <type 'unicode'>
COM type: string
is open:  False
serial port opened
baud: 115200
root baud: 115200
BAUD :  115200
pic path: ./RESOURCE/SYNC_S.bmp
chip sync ok!
0x3ff00050: 8a790801
0x3ff00054: 0200fe2a
0x3ff00058: 0000a000
0x3ff0005c: 00000000
check_err_0: 0a
check_err_1: 00
check_err_2: 01
check_err_3: 02
check_err_4: 0a
bit[1:0] error
crc_calc_res: 121
target crc val: 121
efuse warning found...


get mac res:  False
pic path: ./RESOURCE/EFUSE_ERROR_S.bmp
com closed

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Mon Dec 12, 2016 10:33 pm
by jemy
I have the same problem even tested it to a brand new esp8266 board right after upload a program from arduino-1.6.12 found program not run well then change program upload again got Fatal exception loop. use flash_download_tools_v3.4.4 try to update firmware it detect efuse error right away couldn't flash at all.
I think it is a hardware fail. it could happened to everyone.
what is efuse? what happen to it? how could the program loader destroy efuse. is it a hardware design defect plus malware virus?
I hope arduino expert or chip maker could take a look into it.

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Thu Dec 15, 2016 9:16 pm
by panaghs
I face exactly the same issue after I flashed my first new firmware. It worked perfectly well till then. I tried exactly the same solutions: power supply, firmwares, etc.
(plus I added the 10k Resistance between GPIO 2 and VCC, with no result other than that the blue led doesn't work, when I remove the resistance it works again).

However, my ESP12 is not dead.

When flashed with any (user) code at 0x01000 it iterates with exception error (0) and similar address with everyone else. It flashes at 9600, but only sends readable serial content at 78440bps. Actually, when I reset at programming mode I get only boot(1,7) and reset cause 2, but when I reset at serial communication mode I get the endless exception (0) error. If I erase flash the problem vanishes (but there is no user code, of course).

Do you want me to send it over for examination? I would like to know what is the reason behind this (which made me spent 2 weeks of my life in circles)... Send me details how to do so, if yes.

I have given up, now. Thank you anyway.

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Fri Dec 16, 2016 5:47 pm
by pratik
How are you generating the code that causes this fatal exception loop when put on the ESP8266?
The address epc1 in the exception is the address of the code where the problem is caused.
Please locate this address in your assembly listing (.S output when you compile the code) and you will know which function is causing this error. Let me know that to be able to help!
Boot process seems fine to me, and if you are getting the exceptions - it means ESP8266 is working fine.

Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Sat Dec 17, 2016 12:37 am
by panaghs
Dear Pratik,

Thank you very much for your reply. Perhaps my post was a bit shorter than it should, trying not to repeat previous posts. The facts:

1) OPEN-SMART ESP-12 ESP8266 bought for 8 euros eight months ago from here: ... FQO7Pl95pg
Download link of guides, schematics etc here:

2) Working fine: AT commands issued from serial port, connected to local WiFi, server operation trasmitting specific bytes etc.

3) 2 weeks ago attempted to install the NodeMCU firmware following these instructions: ... ows-guide/
specific instructions for ESP12 by the same guy here: ... q7-ws2812/

Iterating exception (0) error appeared.

4) Cleared Flash completely and verified that it was done properly using your code: ... sh-memory/

5) Attempted to install official latest AT firmware by Espressif = Exception (0).

6) Cleared flash again. Installed AI-v0.9.5.0 AT Firmware. Exception (0).

7) Cleared flash again. Used FLASH_DOWNLOAD_TOOLS_v2.4_150924 to get things right, read whole Espressif manual that has to do with flashing firmwares, identified flash size, clock etc. Result=exception(0).

8) Used laboratory external switching power supply with perfect voltage and used MKT capacitors (checked with oscilloscope) even if my board has a regulator anyway, checked if GPIOs, Ch_pd, connections, voltage while programming and resetinng at GPIO2. Everything looked OK. Reflashed looking voltages and signals during flashing using a Tektronix isolated 4-ch oscilloscope. Result=exception(0).

9) Wasted 2 weeks reading posts and trying literally everything suggested for the exception (0) and (28) iterating case and still exception (0). Conculsion, if user area (h10000) is left empty there is no exception (0). I never compiled or installed my code. Haven't reached that stage yet.

Pratik, I am an electrical engineer (even if this is clearly not my field) and have access to all shorts of equipment for testing, so I can give you feedback to any suggested test. However, I have tried everything that is out there and going even further... still exception (0). I have some experience with other DSPs and uC, such as Arduino Nano, TI f28377d etc. My only consolation is that many other people out there have exactly the same issue and ended up buying another type/brand of ESP (I do not mean those that compile their own code, so fixed it by correcting their code that caused the issue). Purely out of engineering curiosity, exactly for the same reasons with you about the meaning of exception (0), I insisted.

I hope my post is a bit more precise now. If there is anything you can suggest it will be highly appreciated.

Thank you again for your time,


Re: Cannot recover from Fatal exception (0): problem during boot

Posted: Sun Dec 18, 2016 3:00 am
by jemy
google what is Efuse
I think the problem is that the efuse was blowed up when I uploaded new program by new updated Arduino IDE.
I guess it is designed purposely by someones so they can destroy it when time is up.
if the efuse is located in flash memory maybe we can design code by moving around that address.
so i'm waiting new Arduino IDE to solve this issue.