Page 1 of 1

ESP-32-WROVER-B hangs on idf.py monitor after flashing hello_world example

Posted: Thu Feb 22, 2024 9:45 pm
by sin3point14
I have an ESP-32-WROVER-B board and was trying to follow: https://docs.espressif.com/projects/esp ... irst-steps. But when I try to flash and monitor:

Code: Select all

sin4point14@spinetbuntu:~/esp/hello_world$ idf.py -p /dev/ttyUSB0 flash monitor
Executing action: flash
Running ninja in directory /home/sin4point14/esp/hello_world/build
Executing "ninja flash"...
[1/5] cd /home/sin4point14/esp/hello_world/build/esp-idf/esptool_py && /home/sin4point14/.espressif/python_env/idf5.2_py3.10_...sin4point14/esp/hello_world/build/partition_table/partition-table.bin /home/sin4point14/esp/hello_world/build/hello_world.bin
hello_world.bin binary size 0x2b570 bytes. Smallest app partition is 0x100000 bytes. 0xd4a90 bytes (83%) free.
[1/1] cd /home/sin4point14/esp/hello_world/build/bootloader/esp-idf/esptool_py && /home/sin4point14/.espressif/python_env/idf...tion_table/check_sizes.py --offset 0x8000 bootloader 0x1000 /home/sin4point14/esp/hello_world/build/bootloader/bootloader.bin
Bootloader binary size 0x6850 bytes. 0x7b0 bytes (7%) free.
[2/3] cd /home/sin4point14/esp/esp-idf/components/esptool_py && /usr/bin/cmake -D IDF_PATH=/home/sin4point14/esp/esp-idf -D "...IRECTORY=/home/sin4point14/esp/hello_world/build -P /home/sin4point14/esp/esp-idf/components/esptool_py/run_serial_tool.cmake
esptool.py --chip esp32 -p /dev/ttyUSB0 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 2MB 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin 0x8000 partition_table/partition-table.bin
esptool.py v4.7.0
Serial port /dev/ttyUSB0
Connecting....
Chip is ESP32-D0WD (revision v1.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: a8:03:2a:6c:14:d8
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Flash will be erased from 0x00001000 to 0x00007fff...
Flash will be erased from 0x00010000 to 0x0003bfff...
Flash will be erased from 0x00008000 to 0x00008fff...
Compressed 26704 bytes to 16349...
Writing at 0x00001000... (100 %)
Wrote 26704 bytes (16349 compressed) at 0x00001000 in 0.8 seconds (effective 280.8 kbit/s)...
Hash of data verified.
Compressed 177520 bytes to 95075...
Writing at 0x000360b3... (100 %)
Wrote 177520 bytes (95075 compressed) at 0x00010000 in 2.7 seconds (effective 533.8 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 103...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.1 seconds (effective 451.9 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
Executing action: monitor
Running idf_monitor in directory /home/sin4point14/esp/hello_world
Executing "/home/sin4point14/.espressif/python_env/idf5.2_py3.10_env/bin/python /home/sin4point14/esp/esp-idf/tools/idf_monitor.py -p /dev/ttyUSB0 -b 115200 --toolchain-prefix xtensa-esp32-elf- --target esp32 --revision 0 /home/sin4point14/esp/hello_world/build/hello_world.elf -m '/home/sin4point14/.espressif/python_env/idf5.2_py3.10_env/bin/python' '/home/sin4point14/esp/esp-idf/tools/idf.py' '-p' '/dev/ttyUSB0'"...
--- esp-idf-monitor 1.4.0 on /dev/ttyUSB0 115200 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---

It's simply stuck here. I tried flashing + monitoring from windows and ubuntu and the monitor hangs on both OSes at this point. I have almost no hardware knowledge so I don't know what is the issue here.

If I press this button(which I think it is a reset button)
Image

The monitor shows some output:

Code: Select all

sin4point14@spinetbuntu:~/esp/hello_world$ idf.py -p /dev/ttyUSB0 flash monitor
Executing action: flash
Running ninja in directory /home/sin4point14/esp/hello_world/build
Executing "ninja flash"...
[1/5] cd /home/sin4point14/esp/hello_world/build/esp-idf/esptool_py && /home/sin4point14/.espressif/python_env/idf5.2_py3.10_...sin4point14/esp/hello_world/build/partition_table/partition-table.bin /home/sin4point14/esp/hello_world/build/hello_world.bin
hello_world.bin binary size 0x2b570 bytes. Smallest app partition is 0x100000 bytes. 0xd4a90 bytes (83%) free.
[1/1] cd /home/sin4point14/esp/hello_world/build/bootloader/esp-idf/esptool_py && /home/sin4point14/.espressif/python_env/idf...tion_table/check_sizes.py --offset 0x8000 bootloader 0x1000 /home/sin4point14/esp/hello_world/build/bootloader/bootloader.bin
Bootloader binary size 0x6850 bytes. 0x7b0 bytes (7%) free.
[2/3] cd /home/sin4point14/esp/esp-idf/components/esptool_py && /usr/bin/cmake -D IDF_PATH=/home/sin4point14/esp/esp-idf -D "...IRECTORY=/home/sin4point14/esp/hello_world/build -P /home/sin4point14/esp/esp-idf/components/esptool_py/run_serial_tool.cmake
esptool.py --chip esp32 -p /dev/ttyUSB0 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 2MB 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin 0x8000 partition_table/partition-table.bin
esptool.py v4.7.0
Serial port /dev/ttyUSB0
Connecting....
Chip is ESP32-D0WD (revision v1.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: a8:03:2a:6c:14:d8
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Flash will be erased from 0x00001000 to 0x00007fff...
Flash will be erased from 0x00010000 to 0x0003bfff...
Flash will be erased from 0x00008000 to 0x00008fff...
Compressed 26704 bytes to 16349...
Writing at 0x00001000... (100 %)
Wrote 26704 bytes (16349 compressed) at 0x00001000 in 0.8 seconds (effective 280.8 kbit/s)...
Hash of data verified.
Compressed 177520 bytes to 95075...
Writing at 0x000360b3... (100 %)
Wrote 177520 bytes (95075 compressed) at 0x00010000 in 2.7 seconds (effective 533.8 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 103...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.1 seconds (effective 451.9 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
Executing action: monitor
Running idf_monitor in directory /home/sin4point14/esp/hello_world
Executing "/home/sin4point14/.espressif/python_env/idf5.2_py3.10_env/bin/python /home/sin4point14/esp/esp-idf/tools/idf_monitor.py -p /dev/ttyUSB0 -b 115200 --toolchain-prefix xtensa-esp32-elf- --target esp32 --revision 0 /home/sin4point14/esp/hello_world/build/hello_world.elf -m '/home/sin4point14/.espressif/python_env/idf5.2_py3.10_env/bin/python' '/home/sin4point14/esp/esp-idf/tools/idf.py' '-p' '/dev/ttyUSB0'"...
--- esp-idf-monitor 1.4.0 on /dev/ttyUSB0 115200 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
ets Jun  8 2016 00:22:57

rst:0x10 (RTCWDT_RTC_RESET),boot:0x5 (DOWNLOAD_BOOT(UART0/UART1/SDIO_FEI_REO_V2))
waiting for download
This makes me believe that the serial connection is functional(?)

Re: ESP-32-WROVER-B hangs on idf.py monitor after flashing hello_world example

Posted: Fri Feb 23, 2024 2:44 am
by ESP_Sprite
Feels like the auto-reset circuit design of that PCB is faulty... what board is that?