ESP32 WROOM errors - Help request

First time poster here. I'm pretty green to Arduino/ESP32 scene and am having a problem I'm hoping someone might be able to help me with. I've included the type board and some screenshots to the IDE below.

I'm having an error when trying to re-upload a previous sketch (that was working) to my Freenove ESP32. I found this problem from another user following this arduino forum thread. But I'm not sure exactly how it might relate to the problem I'm having.

My board is a Freenove ESP32 WROOM FNK0090. I had uploaded a simple onboard LED blink sketch using Freenove . It was working earlier tonight. I managed to put another sketch on the same board. My computer locked up shortly after that sketch was uploaded. Now I can't get anything to work on the board.

Sketch:

From the Output:

From Serial Monitor:

If anyone might be willing to help me along with this, I'd be greatly appreciative. If I need to give more information, please let me know what I can provide.

which version of the Arduino IDE and ESP32 core are you using?

have you tried a simpler example, e.g. the File>Examples>Basics>Blink program

have you tried pressing the Reset and Boot buttons ?

avoid posting screen images of text - they are very difficult to read and waste storage - copy the text and post using the < CODE > tag

can't read screen images, can you copy& paste text in code tag, <code>?

Thank you both for the reply.

I'm using: Mac Sequoia 15.7.1, Arduino IDE 2.3.7, and the Freenove ESP32-WROOM-32E which according to Arduion IDE uses the ESP32-D0WD-V3 (revision v3.1) chip type. Also, I've tried both the Boot and Reset buttons to no avail.

I've tried various sketches all pretty basic and I get the same result. For example...here's a basic blink sketch:

/*
 * https://circuits4you.com
 * ESP32 LED Blink Example
 * Board ESP23 DEVKIT V1
 * 
 * ON Board LED GPIO 2
 */

#define LED 2

void setup() {
  // Set pin mode
  pinMode(LED,OUTPUT);
}

void loop() {
  delay(500);
  digitalWrite(LED,HIGH);
  delay(500);
  digitalWrite(LED,LOW);

Here's what I get in the Output:

Sketch uses 272411 bytes (20%) of program storage space. Maximum is 1310720 bytes.
Global variables use 20792 bytes (6%) of dynamic memory, leaving 306888 bytes for local variables. Maximum is 327680 bytes.
esptool v5.1.0
Serial port /dev/cu.usbserial-FA120:
Connecting....
Connected to ESP32 on /dev/cu.usbserial-FA120:
Chip type:          ESP32-D0WD-V3 (revision v3.1)
Features:           Wi-Fi, BT, Dual Core + LP Core, 240MHz, Vref calibration in eFuse, Coding Scheme None
Crystal frequency:  40MHz
MAC:                88:57:21:55:4a:c8

Uploading stub flasher...
Running stub flasher...
Stub flasher running.
Changing baud rate to 921600...
Changed.


Hard resetting via RTS pin...
Traceback (most recent call last):
  File "esptool/__init__.py", line 1173, in _main
  File "esptool/__init__.py", line 1032, in main
  File "esptool/cli_util.py", line 229, in __call__
  File "rich_click/rich_command.py", line 404, in __call__
  File "click/core.py", line 1442, in __call__
  File "rich_click/rich_command.py", line 187, in main
  File "click/core.py", line 1830, in invoke
  File "click/core.py", line 1226, in invoke
  File "click/core.py", line 794, in invoke
  File "click/decorators.py", line 34, in new_func
  File "esptool/__init__.py", line 688, in write_flash_cli
  File "esptool/cmds.py", line 1112, in attach_flash
  File "esptool/loader.py", line 1091, in flash_id
  File "esptool/loader.py", line 1653, in run_spiflash_command
  File "esptool/loader.py", line 901, in read_reg
  File "esptool/loader.py", line 565, in check_command
  File "esptool/loader.py", line 495, in command
  File "esptool/loader.py", line 431, in read
StopIteration

A fatal error occurred: The chip stopped responding.
Failed uploading: uploading error: exit status 2

And this is what I get in the Serial Monitor:

����������������������

This is the copy of the Error Message I get for the "Upload error; Failed Uploading: Uploading error: exit status 2"

Sketch uses 272411 bytes (20%) of program storage space. Maximum is 1310720 bytes.
Global variables use 20792 bytes (6%) of dynamic memory, leaving 306888 bytes for local variables. Maximum is 327680 bytes.
esptool v5.1.0
Serial port /dev/cu.usbserial-FA120:
Connecting....
Connected to ESP32 on /dev/cu.usbserial-FA120:
Chip type:          ESP32-D0WD-V3 (revision v3.1)
Features:           Wi-Fi, BT, Dual Core + LP Core, 240MHz, Vref calibration in eFuse, Coding Scheme None
Crystal frequency:  40MHz
MAC:                88:57:21:55:4a:c8

Uploading stub flasher...
Running stub flasher...
Stub flasher running.
Changing baud rate to 921600...
Changed.


Hard resetting via RTS pin...
Traceback (most recent call last):
  File "esptool/__init__.py", line 1173, in _main
  File "esptool/__init__.py", line 1032, in main
  File "esptool/cli_util.py", line 229, in __call__
  File "rich_click/rich_command.py", line 404, in __call__
  File "click/core.py", line 1442, in __call__
  File "rich_click/rich_command.py", line 187, in main
  File "click/core.py", line 1830, in invoke
  File "click/core.py", line 1226, in invoke
  File "click/core.py", line 794, in invoke
  File "click/decorators.py", line 34, in new_func
  File "esptool/__init__.py", line 688, in write_flash_cli
  File "esptool/cmds.py", line 1112, in attach_flash
  File "esptool/loader.py", line 1091, in flash_id
  File "esptool/loader.py", line 1653, in run_spiflash_command
  File "esptool/loader.py", line 901, in read_reg
  File "esptool/loader.py", line 565, in check_command
  File "esptool/loader.py", line 495, in command
  File "esptool/loader.py", line 431, in read
StopIteration

A fatal error occurred: The chip stopped responding.
Failed uploading: uploading error: exit status 2

your code compiles links downloads and runs using Windows 11, Arduino IDE 2.3.4, ESP32 core 3.3.5, Tools>Board: "ESP32 Dev Module"

Sketch uses 268647 bytes (20%) of program storage space. Maximum is 1310720 bytes.
Global variables use 20792 bytes (6%) of dynamic memory, leaving 306888 bytes for local variables. Maximum is 327680 bytes.
esptool v5.1.0
Serial port COM14:
Connecting....
Connected to ESP32 on COM14:
Chip type:          ESP32-D0WD-V3 (revision v3.1)
Features:           Wi-Fi, BT, Dual Core + LP Core, 240MHz, Vref calibration in eFuse, Coding Scheme None
Crystal frequency:  40MHz
MAC:                c4:d8:d5:96:9a:c4

Uploading stub flasher...
Running stub flasher...
Stub flasher running.
Changing baud rate to 921600...
Changed.

Configuring flash size...
Flash will be erased from 0x00001000 to 0x00007fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x00051fff...
Compressed 25184 bytes to 16079...

Writing at 0x00001000 [                              ]   0.0% 0/16079 bytes... 

Writing at 0x00007260 [==============================] 100.0% 16079/16079 bytes... 
Wrote 25184 bytes (16079 compressed) at 0x00001000 in 0.4 seconds (505.7 kbit/s).
Hash of data verified.
Compressed 3072 bytes to 146...

Writing at 0x00008000 [                              ]   0.0% 0/146 bytes... 

Writing at 0x00008c00 [==============================] 100.0% 146/146 bytes... 
Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.0 seconds (789.6 kbit/s).
Hash of data verified.
Compressed 8192 bytes to 47...

Writing at 0x0000e000 [                              ]   0.0% 0/47 bytes... 

Writing at 0x00010000 [==============================] 100.0% 47/47 bytes... 
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (1021.0 kbit/s).
Hash of data verified.
Compressed 268800 bytes to 145845...

Writing at 0x00010000 [                              ]   0.0% 0/145845 bytes... 

Writing at 0x0001ba08 [==>                           ]  11.2% 16384/145845 bytes... 

Writing at 0x00028a04 [=====>                        ]  22.5% 32768/145845 bytes... 

Writing at 0x0002e1f4 [=========>                    ]  33.7% 49152/145845 bytes... 

Writing at 0x0003400b [============>                 ]  44.9% 65536/145845 bytes... 

Writing at 0x000391f6 [===============>              ]  56.2% 81920/145845 bytes... 

Writing at 0x0003e7b6 [===================>          ]  67.4% 98304/145845 bytes... 

Writing at 0x00044045 [======================>       ]  78.6% 114688/145845 bytes... 

Writing at 0x0004c7b2 [=========================>    ]  89.9% 131072/145845 bytes... 

Writing at 0x00051a00 [==============================] 100.0% 145845/145845 bytes... 
Wrote 268800 bytes (145845 compressed) at 0x00010000 in 2.7 seconds (805.5 kbit/s).
Hash of data verified.

Hard resetting via RTS pin...

what Tools>Board have you selected?
is anything connected to the ESP32? e.g. sensors, relays, etc?
don't use Mac so cannot help with that?
try a different USB cable?
may be worth deleting the Arduino IDE etc and reinstall?

I've selected the ESP32 DEV Module as detailed in the Freenove instructions but have also tried loading it as ESP32-DA-Modle, ESP32 Wrover Module, and ESP32 Wrover Kit (all versions) without any success.

I don't have anything connected to the ESP32.

I've tried both cables that came with my kit (two boards, two cables) but didn't help.

Before I try deleting/reinstalling the Arduino IDE, would it be wise to try and factory reset the ESP32?

I have a Windows PC arriving later this week (for this and other projects) which should allow me to try using Arduino IDE in Windows. If nothing else, I'll try it on that it when it arrives.

Try connecting a 1µF capacitor (up to 10µF is fine) between the EN and GND pins.

disconnect connect the cable , press the buttons on board before uploading

I tried 1uf capacitor but it didn’t change anything.

I tried that but I still get the same result.

try a pin other than 2?

image

try another PC,

Sometimes some programs are ok in windows but not on mac

So I installed VSC and tried to run a simple blink sketch there, got the same errors. I suspected there was some problem with the communication between the computer and the esp32 because at one point, I had the esp32 working running a blink sketch, RGB onboard sketch, and a display sketch with a 128x64 oled display before the computer locked up. I decided to go back to Arduino IDE and plugged in a usb c power meter between the computer and board. The board finally allowed the upload. I ran a “hello world” sketch and finally got text showing in the serial monitor. I haven’t gone back and tried the sketches without the inline usb c power meter to see what happens but will later tonight.

Set your Arduino IDE settings correctly they are under Freenoves tutorial page and they



are specific to each board.
Make sure you don't have anything connected to your strapping pins.
On another (but most likely not your issue) sometimes Ive had to enable USB CDC on boot for some boards to get a good serial communication instead of "?????". However that's usually when I use both cores.
Also suspect a possible faulty USB cable. Are you using the one that came with the board? They are typically very good freebies.
Usually after I connect a board I click on "get board info" in Arduino IDE to verify it's communicating.
I own several of these boards myself and I'm certain we can get you up and running they are high quality for the price point.
:handshake:

1 Like