Description
Describe the bug
When adding a large control or a lot of controls, the system stops working. I was able to simplify the issue to demonstrate the problem on one of the library example files.
In the serial output I see a mix of the following types of messages when the problem occurs.
[ 10675][W][AsyncTCP.cpp:930] _poll(): pcb is NULL
[ 10681][W][AsyncTCP.cpp:930] _poll(): pcb is NULL
[ 15141][W][AsyncTCP.cpp:950] _poll(): rx timeout 4
To Reproduce
Steps to reproduce the behavior:
Run the attached program which is the tab demo from ESPUI with a few lines of code added.
In main.cpp
...
// if maxselects > 6, web page stops working, if it is less, everthing works fine
#define MAXSELECTS 7
..
If you change MAXSELECTS to 6 or lower, everything works fine and is fast.
Expected behavior
The modified demo should work but when we add seven option boxes it fails (I think there is too much data in the webpage at that point).
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
- OS: windows 11
- Browser fails on both chrome and edge
Smartphone (please complete the following information):
- Fails in same way on android (pixel 6 pro running android 15)
Additional context
- I tried increasing buffers in ESPAsyncWebServer (https://github.com/me-no-dev/ESPAsyncWebServer/) with no change in behaviour:
in file-AsyncWebSocket.cpp
#include <AsyncTCP.h>
.....
#define WS_MAX_QUEUED_MESSAGES 32 ( I doubled and quadrupled this without visible improvement).
-
I also adapted a version to work with the fork made by MartinMueller2003 ] but it failed in the same way.
-
I uploaded my source files and my platformio directory for this test.
I would like to be able to fix this if possible.