Page 1 of 2

RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Sun Nov 20, 2016 5:11 am
by onehorse
Hi All,

I designed my own ESP32 development board following the espressif reference design and cribbing from Sparkfun's ESP32 thing, but it is a smaller (0.7 x 1.4 inch) design and uses a FTDI230XQ USB to Serial converter for programming, etc. I put the first one together, and upon power on the blue led on pin five was lit (pulled HIGH by the ESP32) but before I could even try to program it I was getting RTC_WDT restarts every second or so. I did use the Arduino IDE to successfully flash the board, at least it seemed to complete and correctly matched the hash, etc according to the verbose output, but the state of the output never changed and I didn't get my blinking blue led as I expected. This is the serial output I am getting after manual reset:

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
ets Jun 8 2016 00:22:57

rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0x00
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3ffc0008,len:0
load:0xfc00080f,len:355391
1162 mmu set 00010000, pos 00010000
1162 mmu set 00020000, pos 00020000
1162 mmu set 00030000, pos 00030000
1162 mmu set 00040000, pos 00040000
1162 mmu set 00050000, pos 00050000
load:0xffffffff,len:-1
ets Jun 8 2016 00:22:57

rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0x00
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3ffc0008,len:0
load:0xfc00080f,len:355391
1162 mmu set 00010000, pos 00010000
1162 mmu set 00020000, pos 00020000
1162 mmu set 00030000, pos 00030000
1162 mmu set 00040000, pos 00040000
1162 mmu set 00050000, pos 00050000
load:0xffffffff,len:-1
ets Jun 8 2016 00:22:57

Anyone have any idea what this means and what I could have done wrong? Thanks...

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Sun Nov 20, 2016 7:17 am
by ESP_igrr
Probably an issue with flash chip voltage (1.8V vs 3.3V). Can you post your schematics so that we can take a look?

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Sun Nov 20, 2016 7:35 am
by onehorse
Thank you for taking a look.

I started with Sparkfun's ESP32 thing and modified a few things. One thing I was no sure about was whether I needed to connect ESP32 FLASH_VDD to 3V3; I left it unconnected and powered the flash with 3V3 from the board. Is this going to be a problem?

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Sun Nov 20, 2016 2:05 pm
by rudi ;-)
onehorse wrote:Thank you for taking a look.

I started with Sparkfun's ESP32 thing and modified a few things. One thing I was no sure about was whether I needed to connect ESP32 FLASH_VDD to 3V3; I left it unconnected and powered the flash with 3V3 from the board. Is this going to be a problem?
what you have modified in detail, you can perhabs PM / email espressif schematics too if you not want to public.
how you have stabled the 3.3 ?

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Sun Nov 20, 2016 5:34 pm
by onehorse
The EAGLE design files and pcb design are open source and listed at the OSH Park shared space here:

https://www.oshpark.com/shared_projects/sHwYbfxM

I would appreciate any advice you could offer...

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Sun Nov 20, 2016 5:38 pm
by rudi ;-)
onehorse wrote:The EAGLE design files and pcb design are open source and listed at the OSH Park shared space here:

https://www.oshpark.com/shared_projects/sHwYbfxM

I would appreciate any advice you could offer...
ok, and what you have changed ?

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Mon Nov 21, 2016 3:31 am
by onehorse
Not much of the basic circuitry; I mean it pretty much conforms to the espressif reference design. I did change the board size, layout, components, component sizes, etc. I am using a four-layer board, I think Saprkfun usually uses two layers. Sparkfun uses gigantic components and I prefer smaller ones, etc. I also have components not present in the Sparkfun design like a battery charger and diodes.

Not sure why this is relevant per se, I was not trying to replicate Sparkfun's design, I just found it a pretty convenient starting place. The design files I linked to above are the design files for my board. I didn't try anything fancy, just used the same board design and components that work well for ESP8266 and ESP8285 development boards.

I did use a 4MByte SPI flash (N25Q032A) that requires using the DOUT flash mode with the ESP8266. The symptom there was the flash process would work as expected but the program would not run since the DOUT option had to be chosen for successful program execution, very similar to the symptoms for my ESP32 dev board. I am wondering if this might not be the problem here since the error log shows the DIO mode is being attempted...

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Fri Dec 02, 2016 2:12 pm
by ESP_Me-no-dev
This could be caused by bad power to the module as well. Make sure you have good 5V 500mA+ power going to it and that the cable used is good. When radio boots, there is a spike that will cause brownout if the ESP does not get enough power.

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Tue Dec 06, 2016 1:39 am
by onehorse
5V? I thought the ESP32 like the ESP8266/85 was a 3V3 MCU. I have a 500 mA 3V3 LDO that provides power through the USB cable or LiPo battery. This set up is sufficient for the ESP8266 and ESP8285. If it requires 5V no wonder it doesn't work.

I am pretty sure it requires a clean 3v3 Vin and I have the proper LDO current rating and bypass caps, etc. The problem is likely in the DIO expectation of the MCO for flash communication which is not supported by the flash I initially chose. I have redesigned the board to use a 1 Mbyte flash I know supports DIO programming so this will tell...

It would still be great to have a schematic review by espressif if this is possible.

Re: RTCWDT_RTC_RESET symptom of what kind of error?

Posted: Tue Dec 06, 2016 2:35 am
by ESP_igrr
I went through the schematic and didn't find anything that looked odd.
Could you please upload the binary file(s) you are flashing to your board somewhere? At least the first one, bootloader.bin.
According to the log (mode:DIO, clock div:1) the flash is clocked at 80 MHz. Maybe trying a lower frequency (40MHz) may help.
What is odd though, is that the erroneous 0xfc00080f load address which is read from flash is the same on every boot. If this was a flash frequency or signal integrity issue, I would imagine it would contain some random errors. So this is why I'm asking for bootloader binary, to verify that it is actually valid...