ESP32 problem with ESPAsyncWebServer library


I have ran into a problem regarding the ESPAsyncWebServer library for ESP32 boards. From what i could gather the library doesnt work with ESP32-C3 chips or at least i didnt manage to get it to work.
When compiling, arduino throws out the folowing error:

:\Users\student\Documents\Arduino\libraries\ESPAsyncWebServer-master\src\AsyncWebSocket.cpp: In member function 'IPAddress AsyncWebSocketClient::remoteIP()':
C:\Users\student\Documents\Arduino\libraries\ESPAsyncWebServer-master\src\AsyncWebSocket.cpp:843:28: error: call of overloaded 'IPAddress(unsigned int)' is ambiguous
return IPAddress(0U);
In file included from C:\Users\student\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.0-alpha1\cores\esp32/Arduino.h:153,
from C:\Users\student\Documents\Arduino\libraries\ESPAsyncWebServer-master\src\AsyncWebSocket.cpp:21:
C:\Users\student\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.0-alpha1\cores\esp32/IPAddress.h:51:5: note: candidate: 'IPAddress::IPAddress(const uint8_t*)'
IPAddress(const uint8_t *address);
C:\Users\student\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.0-alpha1\cores\esp32/IPAddress.h:50:5: note: candidate: 'IPAddress::IPAddress(uint32_t)'
IPAddress(uint32_t address);
C:\Users\student\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.0-alpha1\cores\esp32/IPAddress.h:29:7: note: candidate: 'constexpr IPAddress::IPAddress(const IPAddress&)'
class IPAddress: public Printable
Multiple libraries were found for "FS.h"
Used: C:\Users\student\Documents\Arduino\libraries\FS
Not used: C:\Users\student\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.0-alpha1\libraries\FS
exit status 1
Error compiling for board ESP32C3 Dev Module.

I am still curious if anyone managed to get this library to work with the board (it works fine if you compile it for another boards) and if not, could you recommend me an alternative library that does work with these boards?

Thank you

In libraries\ESPAsyncWebServer-master\src\AsyncWebSocket.cpp line 843
can you modify return IPAddress(0U);into return IPAddress(0ul); or return IPAddress((uint32_t) 0u);

why do you have this directory in your libraries? where does this come from?
can you try moving it elsewhere and compiling again?

1 Like

Oh my god thank you, i works now. In the meantime i found an alternative solution but still thank you very much for the hint, i would have never found out myself.

That file is there because i experimented with different files, its already gone and was unrelated to the issue.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.