Bricked? ESP-WROOM-32D stuck in boot loop after running unit tests in PIO
Posted: Wed Mar 02, 2022 8:53 am
Hello,
After developing a custom hw baord using the ESP-WROOM-32D module in VScode (using arduino) for a couple of weeks as a part of a student exam project, i was going to run some unit tests using platformIO. After creating a simple test in the testfolder and uploading it and running it the terminal spitted out a crash-dump, i thought there was something wrong with my tests and tried to upload my program again from platformIO, the same crash-dump is spitted out over and over again on the terminal. I can upload my program ok, but all i get is a crash-dump on the terminal. The HW has been working fine for several weeks and just after trying to preform a unit test the module crashed.
Any help regarding this is greatly appreciated. Seems like it should not be possible to brick a esp32 just by running unit tests on it? The same test runs fine on a esp32devkit board, but that does not have a wroom-32D module.
My best guess is that when i uploaded the tests something got corrupted, maybe the partitions or something. im using the env:esp32dev, which probably insn't really correct. I am using the SPIFFS to save a html webserver if this could interfere with the partitions in any way.
I have tried uploading "hello world" example using the idf.py and tried uploading a partition table and erasing flash etc. But whatever i've tried has not helped, the same crash message is sent to terminal when opening the monitor. Iv'e also tried uploading progams using arduino ide (just as a test) which also works to do, but result is the same.
Please see the hw hookup image aswell, i have almost all "pins" connected to the module. Maybe this could interfere? however as said before this board and hw setup worked for weeks before running the tests from pio.
platformio.ini file:
uploading hello world with esp-idf:
Crash dump from terminal:[/code]
Any help or tips of what i can try to "reset to factory defaults" is greatly appreciated.
After developing a custom hw baord using the ESP-WROOM-32D module in VScode (using arduino) for a couple of weeks as a part of a student exam project, i was going to run some unit tests using platformIO. After creating a simple test in the testfolder and uploading it and running it the terminal spitted out a crash-dump, i thought there was something wrong with my tests and tried to upload my program again from platformIO, the same crash-dump is spitted out over and over again on the terminal. I can upload my program ok, but all i get is a crash-dump on the terminal. The HW has been working fine for several weeks and just after trying to preform a unit test the module crashed.
Any help regarding this is greatly appreciated. Seems like it should not be possible to brick a esp32 just by running unit tests on it? The same test runs fine on a esp32devkit board, but that does not have a wroom-32D module.
My best guess is that when i uploaded the tests something got corrupted, maybe the partitions or something. im using the env:esp32dev, which probably insn't really correct. I am using the SPIFFS to save a html webserver if this could interfere with the partitions in any way.
I have tried uploading "hello world" example using the idf.py and tried uploading a partition table and erasing flash etc. But whatever i've tried has not helped, the same crash message is sent to terminal when opening the monitor. Iv'e also tried uploading progams using arduino ide (just as a test) which also works to do, but result is the same.
Please see the hw hookup image aswell, i have almost all "pins" connected to the module. Maybe this could interfere? however as said before this board and hw setup worked for weeks before running the tests from pio.
platformio.ini file:
Code: Select all
[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
lib_deps =
Ethernet
PubSubClient
robtillaart/TCA9548 @ ^0.1.2
Wire
adafruit/Adafruit INA260 Library @ ^1.5.0
adafruit/Adafruit MCP23017 Arduino Library @ ^2.0.2
adafruit/Adafruit BusIO@^1.11.0
me-no-dev/AsyncTCP@^1.1.1
me-no-dev/ESP Async WebServer@^1.2.3
bblanchon/ArduinoJson@^6.19.2
monitor_speed = 115200
upload_speed = 921600
Code: Select all
esptool.py esp32 -p COM4 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 4MB 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin 0x8000 partition_table/partition-table.bin
esptool.py v3.2-dev
Serial port COM4
Connecting....
Chip is ESP32-D0WD (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 30:c6:f7:c9:96:80
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 0x00039fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Compressed 25264 bytes to 15785...
Writing at 0x00001000... (100 %)
Wrote 25264 bytes (15785 compressed) at 0x00001000 in 0.8 seconds (effective 265.0 kbit/s)...
Hash of data verified.
Compressed 169776 bytes to 89620...
Writing at 0x00010000... (16 %)
Writing at 0x0001afe9... (33 %)
Writing at 0x00020761... (50 %)
Writing at 0x00025faa... (66 %)
Writing at 0x0002e5ba... (83 %)
Writing at 0x0003694d... (100 %)
Wrote 169776 bytes (89620 compressed) at 0x00010000 in 2.4 seconds (effective 570.3 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 413.9 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
Done
Crash dump from terminal:
Code: Select all
[code]rst:0x10 (RTCWDT_RTC_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:6604
ho 0 tail 12 room 4
load:0x07800000,len:3783744
ets Jun 8 2016 00:22:57
Any help or tips of what i can try to "reset to factory defaults" is greatly appreciated.