GPIO14 prevents ESP32-WROOM to boot

doglike
Posts: 63
Joined: Fri Aug 18, 2017 4:21 pm

GPIO14 prevents ESP32-WROOM to boot

Postby doglike » Sun Feb 11, 2024 9:48 pm

Hi,

I have a weird behaviour on my custom PCB, which I do not understand.

GPIO14 is connected directly to the input of a darlington transistor.
When you check the schematic of the darlington (attachment), then you will see, that there are some pulldowns (total 13K).

:arrow: General:
Putting ESP to download mode via GPIO0 and flashing the app is always possible.

:arrow: What I cannot understand:
For some reason I do measure 880mV at GPIO14 directly after reset/EN=high - despite the darlington-internal pulldown.
How is this possible?
I checked it also on another board - I can not imagine a PCB/design issue.

:arrow: The weird part:
GPIO14 is no strapping pin or has other special features as far as I know...
After EN=high - as long as GPIO14 has 880mV - the ESP simply does absolutely nothing.
Most of the time I get zero output to UART.
In very very rare cases :

Code: Select all

rst:0x10 (RTCWDT_RTC_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
flash read err, 1000
ets_main.c 371 
ets Jun  8 2016 00:22:57

:!: When I connect GPIO14 to GND manually with a cable (no resister), then the ESP boots and executes the app without issues.
:!: When the app is running once, then GPIO14 is high

Code: Select all

I (11) boot: ESP-IDF v3.3-dirty 2nd stage bootloader
I (11) boot: compile time 22:59:02
I (11) boot: Enabling RNG early entropy source...
I (15) boot: SPI Speed      : 40MHz
I (19) boot: SPI Mode       : DIO
I (23) boot: SPI Flash Size : 4MB
I (27) boot: Partition Table:
I (31) boot: ## Label            Usage          Type ST Offset   Length
I (38) boot:  0 nvs              WiFi data        01 02 0000f000 00005000
I (45) boot:  1 otadata          OTA data         01 00 00014000 00002000
I (53) boot:  2 app0             OTA app          00 10 00020000 00120000
I (60) boot:  3 app1             OTA app          00 11 00140000 00120000
I (68) boot:  4 eeprom           Unknown data     01 99 00260000 00005000
I (75) boot:  5 lfs              Unknown data     01 99 00265000 0019b000
I (83) boot: End of partition table
I (87) esp_image: segment 0: paddr=0x00020020 vaddr=0x3f400020 size=0x18344 ( 99140) map
I (129) esp_image: segment 1: paddr=0x0003836c vaddr=0x3ffb0000 size=0x0315c ( 12636) load
I (134) esp_image: segment 2: paddr=0x0003b4d0 vaddr=0x40080000 size=0x00400 (  1024) load
0x40080000: _WindowOverflow4 at /home/user/esp/esp-idf/components/freertos/xtensa_vectors.S:1779

I (136) esp_image: segment 3: paddr=0x0003b8d8 vaddr=0x40080400 size=0x04738 ( 18232) load
I (152) esp_image: segment 4: paddr=0x00040018 vaddr=0x400d0018 size=0x8b2b4 (570036) map
0x400d0018: _flash_cache_start at ??:?

I (346) esp_image: segment 5: paddr=0x000cb2d4 vaddr=0x40084b38 size=0x07a0c ( 31244) load
0x40084b38: spi_flash_mmap_pages at /home/user/esp/esp-idf/components/spi_flash/flash_mmap.c:382

I (366) boot: Loaded app from partition at offset 0x20000
I (366) boot: Disabling RNG early entropy source...
:arrow: But again something weird:
When I remove the GPIO14 from GND, before bootloader output has finished and the app has started,
then the ESP again stops and does nothing, until I reconnect GPIO14 to GND.
After reconnecting, ESP again gets alive, WDT does some resets, everything boots again and jumps into the app.

Can someone please help me understanding, what is going on here what eventually could cause this behaviour.

:arrow: What I already tried:
Burning these efuse changes absolutely nothing.

Code: Select all

XPD_SDIO_FORCE 
XPD_SDIO_REG 
XPD_SDIO_TIEH

2x espefuse summary is also attached (with and without the efuses above).

Thank you very much in advance.
Attachments
summary_2.txt
(3.41 KiB) Downloaded 143 times
summary.txt
(3.45 KiB) Downloaded 152 times
darlington.jpg
darlington.jpg (14.79 KiB) Viewed 1291 times

ESP_Sprite
Posts: 9709
Joined: Thu Nov 26, 2015 4:08 am

Re: GPIO14 prevents ESP32-WROOM to boot

Postby ESP_Sprite » Mon Feb 12, 2024 1:53 am

Hm, that does not sound like anything I've ever seen before. Are you sure there aren't any hardware issues at play, e.g. GPIO14 is also shorted to some other IO pin?

doglike
Posts: 63
Joined: Fri Aug 18, 2017 4:21 pm

Re: GPIO14 prevents ESP32-WROOM to boot

Postby doglike » Mon Feb 12, 2024 5:02 pm

Possible, I am still checking for electr. issues/shorts.
But lets assume there is some kind of electr. short or what ever...
Why is a voltage level @ GPIO14 is influencing the boot ?

pipi61
Posts: 60
Joined: Fri Dec 23, 2016 10:58 pm

Re: GPIO14 prevents ESP32-WROOM to boot

Postby pipi61 » Mon Feb 12, 2024 5:56 pm


doglike
Posts: 63
Joined: Fri Aug 18, 2017 4:21 pm

Re: GPIO14 prevents ESP32-WROOM to boot

Postby doglike » Mon Feb 12, 2024 9:47 pm

pipi61 wrote:
Mon Feb 12, 2024 5:56 pm
https://randomnerdtutorials.com/esp32-p ... nce-gpios/
14 outputs PWM signal at boot
Hi pipi, how does this explain that behaviour ?

Who is online

Users browsing this forum: Bing [Bot] and 106 guests