Esp32 S2 /S3 cannot flash with Tder tool
Moderators: grovkillen, Stuntteam, TD-er
Esp32 S2 /S3 cannot flash with Tder tool
Hello friends,
I have recently moved to Esp 32 from Esp 8266 just to use more updated hardware.
I could flash without any problem the Esp 32C3 super mini board.
But trying to flash Lolin Esp32 S2 or S3 board does not work.
I use the file : 20240604 Normal 4M [ESP8266, ESP32, ESP32 S2/S3/C3]
I got the message : Failed to initialize. Try resetting your device or holding the BOOT button while clicking INSTALL.
Trying to hold Boot button during install does not help !
I do probably something wrong but what ??
An other question : On Esp32 C3 the GPIO 2 is always at 3.3V. Is there a way to use it as an input ?
Thanks in advance for your kind reply
Patou
I have recently moved to Esp 32 from Esp 8266 just to use more updated hardware.
I could flash without any problem the Esp 32C3 super mini board.
But trying to flash Lolin Esp32 S2 or S3 board does not work.
I use the file : 20240604 Normal 4M [ESP8266, ESP32, ESP32 S2/S3/C3]
I got the message : Failed to initialize. Try resetting your device or holding the BOOT button while clicking INSTALL.
Trying to hold Boot button during install does not help !
I do probably something wrong but what ??
An other question : On Esp32 C3 the GPIO 2 is always at 3.3V. Is there a way to use it as an input ?
Thanks in advance for your kind reply
Patou
Re: Esp32 S2 /S3 cannot flash with Tder tool
For your S2 or S3 board, I assume you have never installed an ESPEasy on them, so the better choice would be to have a LittleFS build on them, as that's based on the latest framework version (but doesn't include support for the SPIFFS file system, only LittleFS). You can try "20240604 Normal 4M LittleFS ETH [ESP32,ESP32-S2/C2/C3/C6]" (nearly at the top of the list).
To force the board into Flash mode, you should hold the Boot button pressed while shortly pressing the Reset (rst) button or when powering up the board. Keep the Boot button pressed for a few more seconds, then release, and start the flash procedure.
On the ESP32-C3, GPIO2 is a Strapping pin (check this docs), that has to be on High level during boot. You can configure the level it gets after boot at the Hardware page. Best choice here would probably be "Input pullup".
To force the board into Flash mode, you should hold the Boot button pressed while shortly pressing the Reset (rst) button or when powering up the board. Keep the Boot button pressed for a few more seconds, then release, and start the flash procedure.
On the ESP32-C3, GPIO2 is a Strapping pin (check this docs), that has to be on High level during boot. You can configure the level it gets after boot at the Hardware page. Best choice here would probably be "Input pullup".
/Ton (PayPal.me)
Re: Esp32 S2 /S3 cannot flash with Tder tool
Hello Ton,
Thanks for your quick reaction.
I confirm that your method of flashing (firmware : 20240604 Normal 4M LittleFS ETH [ESP32,ESP32-S2/C2/C3/C6]) is working for Esp32-S2 from Lolin but for Esp32-S3 mini also from Lolin i got the respons : Your ESP32-S3 board is not supported.
Is this a special board ?
Please see the spec :
based ESP32-S3FH4R2
2.4 GHz Wi-Fi
Bluetooth LE
4MB Flash
2MB PSRAM
27x IO
1x RGB LED (IO47)
ADC, DAC, I2C, SPI, UART, USB OTG
Compatible with MicroPython, Arduino and ESP-IDF
Default firmware: MicroPython
Looks like the other Esp32-S3 have 8 MB flash !! I tried to flash a 8Mb firmware : "20240414 max 16M8M LittleFS CDC ETH" this firmware start loading but the log gives errors and I cannot connect to home wifi.
For the Esp32-C3 :
The GPIO 2 (witch is used for boot) stays high even if I connect the pin to Gnd. Changing in the hardware "input pulldown" also change nothing this input stays high .
May be something special with this board ?

Thanks for your quick reaction.
I confirm that your method of flashing (firmware : 20240604 Normal 4M LittleFS ETH [ESP32,ESP32-S2/C2/C3/C6]) is working for Esp32-S2 from Lolin but for Esp32-S3 mini also from Lolin i got the respons : Your ESP32-S3 board is not supported.

Please see the spec :
based ESP32-S3FH4R2
2.4 GHz Wi-Fi
Bluetooth LE
4MB Flash
2MB PSRAM
27x IO
1x RGB LED (IO47)
ADC, DAC, I2C, SPI, UART, USB OTG
Compatible with MicroPython, Arduino and ESP-IDF
Default firmware: MicroPython
Looks like the other Esp32-S3 have 8 MB flash !! I tried to flash a 8Mb firmware : "20240414 max 16M8M LittleFS CDC ETH" this firmware start loading but the log gives errors and I cannot connect to home wifi.
Code: Select all
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x15 (USB_UART_CHIP_RESET),boot:0x8 (SPI_FAST_FLASH_BOOT)
Saved PC:0x4037c822
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3818,len:0x158
load:0x403c9700,len:0x4
load:0x403c9704,len:0xa88
load:0x403cc700,len:0x2834
entry 0x403c9868
00.425 : (317372) Info : Using PSRAM
00.428 : (317068) Info : INIT : Free RAM:317068
00.440 : (316860) Info : INIT : Manual Reboot #3 Last Action before Reboot: Const Interval: TIMER_20MSEC Last systime: 403 - Restart Reason: CPU0: usb uart reset digital core CPU1: usb uart reset digital core
00.452 : (316812) Info : FS : Mounting...
FS : Mount failed
00.463 : (316632) Error : FS : Mount failed
RESET: Resetting factory defaults... using default settings
RESET: Warm boot, reset count: 3
RESET: Too many resets, protecting your flash memory (powercycle to solve this)
01.477 : (316500) Error : FS : Error while reading/writing config.dat in 1685
01.489 : (316452) Info : INIT : Check for Priority tasks
01.490 : (316404) Info : INIT : SPI not enabled
01.602 : (316324) Info : WIFI : Set WiFi to STA
01.604 : (304392) Info : WIFI : Cannot set mode!!!!!
01.705 : (304344) Info : WIFI : Cannot set mode!!!!!
01.806 : (304296) Info : WIFI : mode not yet set
01.907 : (304248) Info : WIFI : mode not yet set
02.108 : (304184) Info : WiFi : Start network scan all channels
02.109 : (304136) Error : WiFi : Scan failed
02.110 : (304072) Info : WiFi : Start network scan all channels
02.122 : (304024) Error : WiFi : Scan failed
02.123 : (303976) Info : Setup: Scan all channels
The GPIO 2 (witch is used for boot) stays high even if I connect the pin to Gnd. Changing in the hardware "input pulldown" also change nothing this input stays high .
May be something special with this board ?

Re: Esp32 S2 /S3 cannot flash with Tder tool
Hm, haven't seen any of these with an S3 yet, only with S2, and they work as intended.
Nothing in the specs that I'm worried about, we fully support flashing via CDC serial, as long as the board activates it during flashing, and so far all do. Maybe you need the same procedure I described above, to get it into flash mode.
That build is for a 16MB flash unit , reserving 8MB for the file system, you need the max 8M1M build for this unit.
I have some quite similar boards, and they work as expected, AFAICS.
How do you determine the level of the GPIO 2 pin? If you physically connect it to ground and still measure a high level, you may be looking at the wrong pin

/Ton (PayPal.me)
Re: Esp32 S2 /S3 cannot flash with Tder tool
Those C3 mini boards are quite nice, but the quality control of them is... well... non-existent.
I even have one which is clearly missing some resistors and some of these I have were clearly assembled using solder paste which was past its due date. All kinds of tiny balls of solder everywhere and not cleaned.
I have no clue why the S3 board you have is not allowing you to flash it.
Maybe you should keep the "boot" button pressed all the time, starting before plugging it in the USB port?
I know some boards are a bit tricky to get into flash mode, as they also may cause a disconnect from USB while switching to flash mode.
I even have one which is clearly missing some resistors and some of these I have were clearly assembled using solder paste which was past its due date. All kinds of tiny balls of solder everywhere and not cleaned.
I have no clue why the S3 board you have is not allowing you to flash it.
Maybe you should keep the "boot" button pressed all the time, starting before plugging it in the USB port?
I know some boards are a bit tricky to get into flash mode, as they also may cause a disconnect from USB while switching to flash mode.
Re: Esp32 S2 /S3 cannot flash with Tder tool
Can you try flashing the latest test build, I uploaded here today?Patou wrote: ↑17 Jun 2024, 03:13 Hello Ton,
Thanks for your quick reaction.
I confirm that your method of flashing (firmware : 20240604 Normal 4M LittleFS ETH [ESP32,ESP32-S2/C2/C3/C6]) is working for Esp32-S2 from Lolin but for Esp32-S3 mini also from Lolin i got the respons : Your ESP32-S3 board is not supported.
Is this a special board ?
Please see the spec :
based ESP32-S3FH4R2
2.4 GHz Wi-Fi
Bluetooth LE
4MB Flash
2MB PSRAM
27x IO
1x RGB LED (IO47)
ADC, DAC, I2C, SPI, UART, USB OTG
Compatible with MicroPython, Arduino and ESP-IDF
Default firmware: MicroPython
Looks like the other Esp32-S3 have 8 MB flash !! I tried to flash a 8Mb firmware : "20240414 max 16M8M LittleFS CDC ETH" this firmware start loading but the log gives errors and I cannot connect to home wifi.[...]Code: Select all
ESP-ROM:esp32s3-20210327 Build:Mar 27 2021 rst:0x15 (USB_UART_CHIP_RESET),boot:0x8 (SPI_FAST_FLASH_BOOT) Saved PC:0x4037c822 SPIWP:0xee mode:DIO, clock div:1 load:0x3fce3818,len:0x158 load:0x403c9700,len:0x4 load:0x403c9704,len:0xa88 load:0x403cc700,len:0x2834 entry 0x403c9868 00.425 : (317372) Info : Using PSRAM 00.428 : (317068) Info : INIT : Free RAM:317068 00.440 : (316860) Info : INIT : Manual Reboot #3 Last Action before Reboot: Const Interval: TIMER_20MSEC Last systime: 403 - Restart Reason: CPU0: usb uart reset digital core CPU1: usb uart reset digital core 00.452 : (316812) Info : FS : Mounting... FS : Mount failed 00.463 : (316632) Error : FS : Mount failed RESET: Resetting factory defaults... using default settings RESET: Warm boot, reset count: 3 RESET: Too many resets, protecting your flash memory (powercycle to solve this) 01.477 : (316500) Error : FS : Error while reading/writing config.dat in 1685 01.489 : (316452) Info : INIT : Check for Priority tasks 01.490 : (316404) Info : INIT : SPI not enabled 01.602 : (316324) Info : WIFI : Set WiFi to STA 01.604 : (304392) Info : WIFI : Cannot set mode!!!!! 01.705 : (304344) Info : WIFI : Cannot set mode!!!!! 01.806 : (304296) Info : WIFI : mode not yet set 01.907 : (304248) Info : WIFI : mode not yet set 02.108 : (304184) Info : WiFi : Start network scan all channels 02.109 : (304136) Error : WiFi : Scan failed 02.110 : (304072) Info : WiFi : Start network scan all channels 02.122 : (304024) Error : WiFi : Scan failed 02.123 : (303976) Info : Setup: Scan all channels
https://td-er.nl/ESPEasy/latest/
For testing what board it actually is, you can also just try flashing a 4M image.
Please pick just any 4M build for S3 with "LittleFS" in the name. (e.g. "Normal 4M LittleFS ETH")
If that's successful, please post here Memory, CPU and flash info from the sysinfo page.
When this appears to be a true 8M flash size, please try to flash the "MAX 8M1M LittleFS ETH [ESP32-S3/C6]" build and post the same info from the sysinfo page here.
If this build does not show any info regarding PSRAM size, please try to flash the "MAX 8M1M PSRAM LittleFS ETH [ESP32-S3]" build.
It is very well possible the ESP board will enter a bootloop with this latest "PSRAM" build.
So only try this if the previous attempts did NOT show any PSRAM size in the memory section.
Re: Esp32 S2 /S3 cannot flash with Tder tool
Hello
Thanks for your post.
I could flash the Esp32-S3 mini with 20240617_neopixel_ESP32s3_4M316k_LittleFS_CDC_ETH
Sysinfo :
For the Gpio 2 on the Esp32-C3 that keeps high I added a 4k7 resistance between Gnd and D2 this pull the voltage to less than 1 V on the gpio and so it is reported as "low".
Connecting 3v3 to D2 make the input "high".
Indeed some boards are from low quality because on 2 boards this trick does not work: D2 stays at 3v3.
On 2 others it works.
Putting the hardware to pull-down does not help.
Once again thanks for the support.
Patou
Thanks for your post.
I could flash the Esp32-S3 mini with 20240617_neopixel_ESP32s3_4M316k_LittleFS_CDC_ETH
Sysinfo :
Code: Select all
Firmware
Build:⋄ 20240617 - Mega32-s3
System Libraries:⋄ ESP32 SDK 5.1.4.240615
Git Build:⋄ HEAD_cba870f
Plugin Count:⋄ 55 ["Normal","NeoPixel"]
Build Origin: GitHub Actions
Build Time:⋄ Jun 17 2024 16:11:24
Binary Filename:⋄ ESP_Easy_mega_20240617_neopixel_ESP32s3_4M316k_LittleFS_CDC_ETH
Build Platform:⋄ Linux-6.5.0-1021-azure-x86_64-with-glibc2.35
Git HEAD:⋄ HEAD_cba870f
System Status
Syslog Log Level: None
Serial Log Level: Info
Web Log Level: None
SD Log Level: None
Enable Serial Port Console: true
Console Serial Port: USB HWCDC @ 115200 baud
Fallback to Serial 0: true
Console Fallback Port: HW Serial0 RX:44 TX:43 @ 115201 baud
Network Services
Network Connected: ✔
NTP Initialized: ✔
ESP Board
ESP Chip ID: 14029584 (0xD61310)
ESP Chip Frequency: 240 MHz
ESP Crystal Frequency: 40 MHz
ESP APB Frequency: 80 MHz
ESP Chip Model: ESP32-S3
ESP Chip Features: Wi-Fi bgn / BLE / 4MB Emb. Flash / 2MB Emb. PSRAM
ESP Chip Revision: 0.1
ESP Chip Cores: 2
ESP Board Name: Espressif Generic ESP32-S3 USB CDC >= 4M Flash QSPI PSRAM, ESPEasy 1810k Code/OTA 316k FS
Storage
Flash Chip ID: Vendor: 0x20 Device: 0x4016
Flash Chip Real Size: 4096 kB
Flash IDE Size: 4096 kB
Flash Chip Speed: 80 MHz
Flash IDE Speed: 80 MHz
Flash IDE Mode: QIO
Flash Writes: 0 daily / 0 boot
Sketch Size: 1541 kB (1856 kB free)
Max. OTA Sketch Size: 1856 kB (1900544 bytes)
Little FS Size: 316 kB (152 kB free)
Page size: 256
Block size: 8192
Number of blocks: 39
Connecting 3v3 to D2 make the input "high".
Indeed some boards are from low quality because on 2 boards this trick does not work: D2 stays at 3v3.
On 2 others it works.
Putting the hardware to pull-down does not help.
Once again thanks for the support.
Patou
Re: Esp32 S2 /S3 cannot flash with Tder tool
Please check this page of the documentation, especially the section for 'strapping pins'
https://espeasy.readthedocs.io/en/lates ... n-esp32-c3
GPIO-2 MUST (!!!) be pulled high during boot
https://espeasy.readthedocs.io/en/lates ... n-esp32-c3
GPIO-2 MUST (!!!) be pulled high during boot
Re: Esp32 S2 /S3 cannot flash with Tder tool
So the chip is one with 4M flash and 2M PSRAM.ESP Chip Features: Wi-Fi bgn / BLE / 4MB Emb. Flash / 2MB Emb. PSRAM
Later lines also suggest it really is one with 4 MB flash.
Re: Esp32 S2 /S3 cannot flash with Tder tool
Hello,
Thanks for your help :
The Esp32-S3 lolin mini works fine.
But one question :
In the hardware tap GPIO33 to 37 are indicated PSRAM. Can they be used as digital input or pwm output or i2c ?
In the literature of lolin I read nothing about this psram !
See specification and drawing /https://www.wemos.cc/en/latest/s3/s3_mini.html
The Esp32-C3 works also fine. Despite the gpio 2 must be high on boot, I can run and boot with a 4k7 resistor between D2 and Gnd pulling the voltage on the Gpio to about 1 V.
Unit can boot, and I can use the input as active high by applying 3v3 to D2.
Some strange thing about CPU load :
- Esp8266 with 4 inputs and 4 outputs : average CPU load : 16%
- Esp32-C3 with 4 inputs and 4 outputs : average CPU load : 62%
Identical rules in thhe 2 units !!
Have a good evening
Patou
Thanks for your help :
The Esp32-S3 lolin mini works fine.
But one question :
In the hardware tap GPIO33 to 37 are indicated PSRAM. Can they be used as digital input or pwm output or i2c ?
In the literature of lolin I read nothing about this psram !
See specification and drawing /https://www.wemos.cc/en/latest/s3/s3_mini.html
The Esp32-C3 works also fine. Despite the gpio 2 must be high on boot, I can run and boot with a 4k7 resistor between D2 and Gnd pulling the voltage on the Gpio to about 1 V.
Unit can boot, and I can use the input as active high by applying 3v3 to D2.
Some strange thing about CPU load :
- Esp8266 with 4 inputs and 4 outputs : average CPU load : 16%
- Esp32-C3 with 4 inputs and 4 outputs : average CPU load : 62%
Identical rules in thhe 2 units !!
Have a good evening
Patou
Re: Esp32 S2 /S3 cannot flash with Tder tool
CPU load is not really a good indicator of how busy the unit is.
For example if you enable/disable ECO mode, you will see a significant change in "load".
What it does is it counts the number of "idle" calls in the scheduler and the duration of those calls.
However on a RTOS environment like any ESP32-variant is running on, there are other tasks in RTOS performed while calling delay() in the "Arduino sketch" task.
The only way you can compare the load is when it is on the same platform (thus C3 vs. C3 etc) and nearly same setup (thus both on ECO mode, same controllers, etc)
HOwever I am working on reducing this load as I did find some redundant work is done in the ESPEasy code.
About the PSRAM pins.
Please note that for ESP32-S3, there are 2 major different PSRAM configurations available which sadly are not compatible (crash loop when using the wrong build)
- 8 MB PSRAM wired in OPI mode (thus 8 pins)
- 2 MB PSRAM wired in Quad mode (thus 4 pins)
The flash is also wired in Quad mode. (N.B. there seem to be more variants, but I have not yet seen those)
When your chip does have 8 MB PSRAM, there are extra pins wired to this memory.
So even if you do not use this PSRAM, or even can see it when using a build which isn't configured for OPI mode PSRAM, the presence of this PSRAM can have an effect on these extra pins. So they might behave differently from other pins and might also be toggling their state during boot.
For boards with either no PSRAM or PSRAM connected in Quad mode, those extra pins can be used just fine.
But keep in mind that running a build for 2MB PSRAM in Quad mode on a node with 8 MB PSRAM present might not show whether it is present.
I did try to detect this PSRAM in a different way as an extra check, so on the sysinfo page you might see something mentioned with the "ESP Chip Features" even though no PSRAM is reported as usable memory.
I have no idea if this check will work on all nodes, so I didn't dare to enforce selection options based on these detections.
For example if you enable/disable ECO mode, you will see a significant change in "load".
What it does is it counts the number of "idle" calls in the scheduler and the duration of those calls.
However on a RTOS environment like any ESP32-variant is running on, there are other tasks in RTOS performed while calling delay() in the "Arduino sketch" task.
The only way you can compare the load is when it is on the same platform (thus C3 vs. C3 etc) and nearly same setup (thus both on ECO mode, same controllers, etc)
HOwever I am working on reducing this load as I did find some redundant work is done in the ESPEasy code.
About the PSRAM pins.
Please note that for ESP32-S3, there are 2 major different PSRAM configurations available which sadly are not compatible (crash loop when using the wrong build)
- 8 MB PSRAM wired in OPI mode (thus 8 pins)
- 2 MB PSRAM wired in Quad mode (thus 4 pins)
The flash is also wired in Quad mode. (N.B. there seem to be more variants, but I have not yet seen those)
When your chip does have 8 MB PSRAM, there are extra pins wired to this memory.
So even if you do not use this PSRAM, or even can see it when using a build which isn't configured for OPI mode PSRAM, the presence of this PSRAM can have an effect on these extra pins. So they might behave differently from other pins and might also be toggling their state during boot.
For boards with either no PSRAM or PSRAM connected in Quad mode, those extra pins can be used just fine.
But keep in mind that running a build for 2MB PSRAM in Quad mode on a node with 8 MB PSRAM present might not show whether it is present.
I did try to detect this PSRAM in a different way as an extra check, so on the sysinfo page you might see something mentioned with the "ESP Chip Features" even though no PSRAM is reported as usable memory.
I have no idea if this check will work on all nodes, so I didn't dare to enforce selection options based on these detections.
Who is online
Users browsing this forum: Bing [Bot] and 25 guests