Open hugoviolin opened 4 months ago
This issue is triggered by an unintentional bug in the wifi layer. Because Arduino libs are compiled with PSRAM enabled, it tries to allocate it's memory in PSRAM and it fails if it is not enabled in Arduino. If you enable PSRAM, it will work, but... for ESP32-S3 PSRAM is currently broken in master and in 3.0.2. We have a fix, but it's not out yet. You could use 3.0.1 to test my theory, given that you have PSRAM in the module (R2 for QSPI and R8 for OPI)
Does that mean that for the time being LwIP and WiFi will NOT allocate from PSRAM on all ESP32 models? If this is true is there a estimation for when this will be enabled again?
IDF WIFI team is working on it @everslick . I can not give estimates on their work. Currently WPS will not work on Xtensa ESP32 chips that do not have PSRAM or is not enabled. Other chips that do not support PSRAM are not affected.
I'm asking because I see degrading stability when WiFi reception is bad and this led me to believe this is due to RAM pressure, because TCP cannot free its packet buffers as long as there are ACKs missing or still in flight.
Thus I further assume that disabling CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP
will reduce the available RAM to the WiFi stack which, according to my theory, might impact stability negatively regardless of if WPS is used or which ESP32 chip.
But I'm aware this is mostly guesswork on my side and that I may be just worrying too much! ;-)
If you tell me the cavalry is on it's way and I will be fine - I'm happy. ;-)
I tried that and it did not help. So we need the fix in IDF
Even version 3.0.4 does not solve the problem
there is a fix coming from IDF. We will close this issue once that get's to Arduino
Board
ESP32S3
Device Description
ESP32S2 Dev Module
Hardware Configuration
ESP32S2 Dev Module
Version
latest master (checkout manually)
IDE Name
Arduino IDE 2.3.2
Operating System
Windows 10
Flash frequency
240MHz
PSRAM enabled
no
Upload speed
115200
Description
When using the WPS example from the WiFi library with esp32 version 3.0.2, it compiles perfectly, but when it starts the WPS function returns with the message "WPS Enable Failed" in the serial. This does not occur in version 2.0.17 or earlier. It works perfectly. What to do? Any suggestion? I await your response, thank you very much for your attention.
Sketch
Debug Message
Other Steps to Reproduce
No response
I have checked existing issues, online documentation and the Troubleshooting Guide