-
Notifications
You must be signed in to change notification settings - Fork 7.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for 32MB version of ESP32S3 Module is missing (IDFGH-6736) #8365
Comments
Hi @ganhailin , |
Issue 1 (lack of menuconfig options) and issue 3 (partition size can't be bigger than 16MB) have now been resolved by merging #7688. |
@igrr Hi, Unfortunately I can't seem to flash the 32MB either. Im using the lastest esp-idf-v4.2.3. It just resorts back to 2MB. (0) cpu_start: ApESP-ROM:esp32s3-20210327 |
@TGiles1998 I'm sorry, there must be some mistake. You say you are using esp-idf v4.2.3, but this SDK version has no support for esp32-s3 chip at all. Are you sure that is the version you are using? (The bootloader log says Assuming you are using IDF v4.4, I think the issue is that it doesn't have support for flash sizes >16MB. This support has been added in master branch, we will backport it to release/v4.4 after the upcoming bugfix release (v4.4.1). So it will be released in v4.4.2. |
Apologies I took the latest release v4.2.3 from the release section posted 25 days ago. I'll try the newer one thanks!
… On 5 Apr 2022, at 22:44, Ivan Grokhotkov ***@***.***> wrote:
@TGiles1998 <https://github.com/TGiles1998> I'm sorry, there must be some mistake. You say you are using esp-idf v4.2.3, but this SDK version has no support for esp32-s3 chip at all. Are you sure that is the version you are using? (The bootloader log says ESP-IDF v4.4 2nd stage bootloader)
Assuming you are using IDF v4.4, I think the issue is that it doesn't have support for flash sizes >16MB. This support has been added in master branch, we will backport it to release/v4.4 after the upcoming bugfix release (v4.4.1). So it will be released in v4.4.2.
—
Reply to this email directly, view it on GitHub <#8365 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AVTBFT75QHHAFVG3FBOMQVDVDSX2ZANCNFSM5N47FSAA>.
You are receiving this because you were mentioned.
|
No problem! Please note that Github simply shows releases in the chronological order. As mentioned in the release notes of v4.2.3 (2nd paragraph):
|
Hi @igrr @Alvin1Zhang , Sorry didn't realise this was still open, I've been able to access 32MB of RAM but have yet to find a solution to access 32MB of PSRAM? Any help would be amazing thank you! Thomas |
Hi @igrr! We have followed work by @ESP32DE very closely and were able to get the Winbond chip recognized. However trying to flash and cross the 24-bit boundry, above the 16MB and switch to 32-bit mode via SPI command like @ESP32DE did. But from what you wrote in #7670 : "there are still some things which aren't supported, like placing the app itself outside of the lower 16MB area" We then tried to create separate partitions above 16MB and place files there and read: But then it failed to read it: In #7670 you wrote that "basic usage of 32MB and larger flash for data storage should work". @igrr - Could you pls advise on how to access flash above the 16MB? |
I know it's nearly been a year but is there a way of working with larger flash sizes now? |
@AndrewCapon yes, there are a few flash models > 16MB which are supported, listed in the documentation. If you are running into a problem, I recommend opening a new issue and providing information such as IDF version, flash model, as well as the program you are trying to run. |
Hi @igrr Thanks for the info, I will double check here. Andy |
What's the current state of >16MB flash support? As far as I know they ROM bootloader still does not (and probably never will?) support >16MB flash. For that very reason the esptool --no-stub option does not work above 16MB either. This has the unpleasant side effect that the esp-serial-flasher library does not support >16MB at the moment. Sorry to be so blunt, but that's pretty sad considering you've been selling those devices for like what... 3 years now? |
@higaski This is also my understanding of the situation. The 32MB version is still being sold in Espressif's official Amazon store. In their Official AliExpress store, the 32MB still shows up, but appears to be out of stock. Kinda seems like false advertising! |
Hi folks, @higaski As for the support for larger flash sizes in the esp-serial-flasher, this is something that could be implemented by adding flasher stub support in that project. @kylefmohr If you need to order a module with 32MB flash but can't find it in stock, please contact Espressif sales team (via the form on the website) and they will try to help you. |
Then please either appoint someone to that task or offer me some assistance in implementing it. I'd just need a couple of pointers to start from... but I'm not a python wizard and just looking at the code of esptool I couldn't even find where the stubs are. |
@higaski Okay, I'll reply in that esp-serial-flasher issue. |
Before I open another issue... Any chance that there is a known bug that app partitions can't be placed above 16MB? Flashing the following partition table for example
results in "image has invalid magic byte" errors. Swapping the order
there is no issue. Tested with ESP-IDF v5.2 |
I have the same problem when trying to upload an APP over 16MB to a ESP32-S3-N32R8 board. It's really strange to have an issue reboot over and over again. So, I googled and found this open issue. Really disappointed. Hopefully, this issue can be closed soon! |
We don'y have official 32MB flash module, but over 16MB module is supported on idf, I will close this issue. If you have more information to update, please reopen it. Thanks! |
Huh? The ESP32-S3-WROOM-2-N32R8V is an official Espressif module with 32MB of flash memory? |
ESP32-S3-WROOM-2-N32R8V is marked as EoL, but there is indeed ESP32-S3-WROOM-2-N32R16V which is in production. |
Just for reference for anyone reading this. This restriction is documented here: It's, as always, just a matter of carefully reading (and finding) the documentation. 😄 |
Environment
git describe --tags
to find it):v5.0-dev-1429
xtensa-esp32-elf-gcc --version
to find it):xtensa-esp32s3-elf-gcc (crosstool-NG esp-2021r2) 8.4.0
Problem Description
1.options in menuconfig does not contains 32Mbyte
2.esptool is unable to flash upper 16Mbit of flash (either with --no-stub or not),
erasing or writing above 0x1000000 with --no-stub will warp to 0x00000000 then bootloader will overwride
writing with stub will resault a error ,showing "opi_flash.c 363" at uart port.
try to patch stub with ER4B cmd in the flash datasheet
https://www.macronix.com/Lists/Datasheet/Attachments/7693/MX25UM25645G,%201.8V,%20256Mb,%20v1.1.pdf
and set addr_len to 32bit will do the same thing as --no-stub,
it seems like the high 8bit addr is never sent out or sent zero
3.partition size can't be bigger than 16M
4.bootloader is not correctly parsing 32M flash or switch flash to opi_dtr mode
5.spi-flash api works fine, including erasing writing,even mount fatfs ,I don't under stand why stub can't behave as normal.
6.mmap to Data MMU can't be more than 16M
Cache_Get_DROM_MMU_End() always returned 0x00000400,so map can't be more than 0x00000400/4×64K=16M,
hardcoded Cache_Get_DROM_MMU_End() to Cache_Get_DROM_MMU_End()+128*4 works for me(not 256 to save last 8M for PSRAM)
Expected Behavior
Actual Behavior
Steps to reproduce
then you will find header be overrided
Debug Logs
I already patch a lot at my idf clone ...so it looks likes below
Other items if possible
The text was updated successfully, but these errors were encountered: