Image too big for partition ESP32 with SPIRAM
Today I got my new ESP32 WROVER B CPU card and I compile micropython for it, enabling SPI RAM. When trying it, it did not boot saying that the app was too big to fit into the foreseen partition.
When checking the partition table I saw that a hole of 0x10000 was left between factory and vfs (why?)
I increased the factory partition by this amount (0x180000 -> 0x190000) filling the gap.
This fixed the problem.
ESP32S3N16R8:Missing flash ORIGINALLY 16M , ACTUALLY 8M
Port, board and/or hardware
esp32s3N16R8 port
MicroPython version
MicroPython v1.25.0 on 2025-04-15; Generic ESP32S3 module with Octal-SPIRAM with ESP32S3
<img width="1075" height="667" alt="Image" src="https://github.com/user-attachments/assets/3ee7bfa2-4046-4e5e-abd8-e6382d9e62a7" />
Reproduction
In according to official guidance , open powershell echo:
esptool --baud 460800 write_flash 0 .\ESP32_GENERIC_S3-SPIRAM_OCT-20250415-v1.25.0.bin
click RST button,and open thonny,execute
import esp
import gc
print(esp.flash_size())
print(esp.flash_user_start())
print(gc.mem_free())
you will find a problem like result below.
- First line is flash size ,equals 8M,corresponds to rom
- Second Line is user partition start,I know,
ESP32_GENERIC_S3-SPIRAM_OCT-20250415-v1.25.0.binis 1.5M , from 2M maybe reasonable. - Third Line is mem_free, corresponds to ram .
8388608
2097152
8320080
Actually my board is N16R8, means 16M psrom and 8M psram. after using Micropython bin, I got 8M rom , and 8M ram ,where is 8M left from flash?
I chose OCT version bin due to 8M psram, but normal and OCT version both miss flash size. I don't know why and how i need to do or it's something being limited.
And thonny is also 6m,maybe 8M-2M?
<img width="1427" height="700" alt="Image" src="https://github.com/user-attachments/assets/0b63906e-d976-478f-82e7-b166ddc521f8" />
Expected behaviour
get missed 8m flash size for using
Observed behaviour
like above.
Additional Information
No, I've provided everything above.
Code of Conduct
Yes, I agree