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
WDT on repetitive connection when distant server is slow to free conn or respond #69
Comments
it's not purely AsyncTCP that does this. Your ESP is too busy to have spare cycles to run the idle task for 5 seconds. I could introduce maybe artificial delay in the task somehow.... |
hmm .. but the esp are running fine if I run only 2 or 3 of them... when using all of them (same binary code... ) the problems start. the esp is not doing more stuff when running alone or with a lot of other esp... (1 udp broadcast received in sync/loop, 1 tcp sent to the broadcaster with async). |
A few questions/tips to look into: regarding webserver: Can you share the actual code (server + ESP32)? so we can have a more close look? In case not into the tcp backlog mechanism, a linkk which i thing desribes it quite in depth. it is not completely clear to me from where watchDogAsync is called, and if you use custom watchdog or asynctcp's buildin. Regards, Arjan |
[STALE_SET] This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions. |
[STALE_DEL] This stale issue has been automatically closed. Thank you for your contributions. |
Hello all,
I am using 16 esp32, sending POST to a small http server & receiving udp msg. I am getting an wdt on wifi core after some hours of processing, on some esp32.
version :
PLATFORM: Espressif 32 1.10.0,
arduino-esp32 v1.0.3
AsyncTCP 1.1.0
The situation :
I have a server sending every 10 sec a broadcast udp request to multiple ESP32 ( wemos d1 esp32). When the esp32 receives the udp request, it sends a tcp POST, with asynctcp, to the server.
Everything work fine with 3 esp32.
However, with 16 esp32, I got wdt after a few hours, on some device. I guess it's when the server is not fast enough to handle the requests at once.
The server is a simple java HttpServer. The UDP sender is a simple app in java sending the packet.
on the ESP, udp server is WiFiUDP, read in the main loop
in the following code, getWDPostInfo returns a arduinojson'ised' structure as string.
(the watchdog wording here is not linked with espressif wdt...
Since everything works fine when using 3 devices, I guess the problem origin when using all my esp32 is my server not handling stuff quickly enough. But AsyncTCP should take care of this and not letting wdt'd.
How can I be assured asynctcp is using a timeout on all steps of the connexion ?
The text was updated successfully, but these errors were encountered: