ESPAsyncTCP_ID305 not compiling

After upgrading the new version platformio core 4.2.0, the library wont compile anymore. It was all working yesterday.

Sorry, can’t reproduce that.

Can you give a minimum reproducible sample code (including platformio.ini), show compile log, and include OS details.

I have a project using ESPAsyncTCP, and have just updated to PIO 4.2.0, and the project is still compiling fine.

platform = espressif8266@2.3.2
framework = arduino
board = d1_mini
build_flags = '-DDEVICE_NAME="middleRoom_dualPower"'
lib_deps = 
	305@1.2.2  ; ESPAsyncTCP
	306@1.2.2  ; ESP Async WebServer
	1303@3.1.0 ; FauxmoESP
	1438@0.22  ; ESPAsyncWiFiManager 
	5741@1.1.1 ; EasyButton
Build log
Processing middleRoom_dualPower_OTA (platform: espressif8266@2.3.2; framework: arduino; board: d1_mini)
--------------------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif8266/d1_mini.html
PLATFORM: Espressif 8266 2.3.2 > WeMos D1 R2 and mini
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
PACKAGES: 
 - framework-arduinoespressif8266 2.20603.191216 (2.6.3) 
 - tool-esptool 1.413.0 (4.13) 
 - tool-esptoolpy 1.20800.0 (2.8.0) 
 - toolchain-xtensa 2.40802.191122 (4.8.2)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 37 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <ESPAsyncTCP> 1.2.2
|   |-- <ESP8266WiFi> 1.0
|-- <ESP Async WebServer> 1.2.2
|   |-- <ESPAsyncTCP> 1.2.2
|   |   |-- <ESP8266WiFi> 1.0
|   |-- <Hash> 1.0
|   |-- <ESP8266WiFi> 1.0
|-- <FauxmoESP> 3.1.0
|   |-- <ESPAsyncTCP> 1.2.2
|   |   |-- <ESP8266WiFi> 1.0
|   |-- <ESP8266WiFi> 1.0
|-- <ESPAsyncWiFiManager> 0.22
|   |-- <DNSServer> 1.1.1
|   |   |-- <ESP8266WiFi> 1.0
|   |-- <ESP8266WiFi> 1.0
|   |-- <ESP Async WebServer> 1.2.2
|   |   |-- <ESPAsyncTCP> 1.2.2
|   |   |   |-- <ESP8266WiFi> 1.0
|   |   |-- <Hash> 1.0
|   |   |-- <ESP8266WiFi> 1.0
|-- <EasyButton> 1.1.1
|-- <ArduinoOTA> 1.0
|   |-- <ESP8266WiFi> 1.0
|   |-- <ESP8266mDNS> 1.2
|   |   |-- <ESP8266WiFi> 1.0
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
|   |-- <ESP8266WiFi> 1.0
|-- <Ticker> 1.0
Building in release mode
Retrieving maximum program size .pio/build/middleRoom_dualPower_OTA/firmware.elf
Checking size .pio/build/middleRoom_dualPower_OTA/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [====      ]  39.9% (used 32716 bytes from 81920 bytes)
Flash: [====      ]  40.0% (used 417596 bytes from 1044464 bytes)
============================================================= [SUCCESS] Took 3.13 seconds =============================================================

Environment               Status    Duration
------------------------  --------  ------------
middleRoom_dualPower      IGNORED
middleRoom_dualPower_OTA  SUCCESS   00:00:03.130

Thank you for your reply. I realized the project I am working on is not using the library ESPAsyncTCP_ID305. It was just there in the libdeps/esp32dev folder. Therefore I just removed it for now and it has been compiling without it.

1 Like

Ouch! Probably a leftover… unfortunately PlatformIO doesn’t seem to remove libraries if they are no longer declared in platformio.ini… so you can occasionally get those hanger-ons if you chop and change libraries. Have to chase that one up… I seem to remember it being raised as a feature request…

Edit: or maybe not. This thread was close, but not quite, so I opened a feature request here to see what Ivan thinks.

Edit2: This was what I was thinking of, and it’s on the list to be implemented.

Thank you for your help, appreciated.

1 Like

Same problem here w.r.t. ESPAsyncTCP_ID305 causing build errors after upgrading PIO. Build output:

In file included from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/opt.h:51:0,
             from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/init.h:40,
             from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.h:31,
             from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.h:26,
             from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:22:
C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwipopts.h:326:0: warning: "TCP_MSS" redefined
 #define TCP_MSS                         CONFIG_TCP_MSS
 ^
In file included from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.h:25:0,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.h:26,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:22:
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src/async_config.h:13:0: note: this is the location of the previous definition
 #define TCP_MSS (1460)
 ^
In file included from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/opt.h:51:0,
                 from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/init.h:40,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.h:31,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:75:
C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwipopts.h:326:0: warning: "TCP_MSS" redefined
 #define TCP_MSS                         CONFIG_TCP_MSS
 ^
In file included from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.h:25:0,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:75:
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src/async_config.h:13:0: note: this is the location of the previous definition
 #define TCP_MSS (1460)
 ^
In file included from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/opt.h:51:0,
                 from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/init.h:40,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.h:31,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\SyncClient.cpp:23:
C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwipopts.h:326:0: warning: "TCP_MSS" redefined
 #define TCP_MSS                         CONFIG_TCP_MSS
 ^
In file included from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\SyncClient.h:32:0,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\SyncClient.cpp:22:
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src/async_config.h:13:0: note: this is the location of the previous definition
 #define TCP_MSS (1460)
 ^
In file included from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/opt.h:51:0,
                 from C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwip/init.h:40,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.h:31,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.h:37,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp:29:
C:\Users\Mark\.platformio\packages\framework-arduinoespressif32\tools\sdk\include\lwip/lwipopts.h:326:0: warning: "TCP_MSS" redefined
 #define TCP_MSS                         CONFIG_TCP_MSS
 ^
In file included from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.h:25:0,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.h:37,
                 from C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp:29:
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src/async_config.h:13:0: note: this is the location of the previous definition
 #define TCP_MSS (1460)
 ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\SyncClient.cpp:25:24: fatal error: interrupts.h: No such file or directory

********************************************************************
* Looking for interrupts.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:interrupts.h"
* Web  > https://platformio.org/lib/search?query=header:interrupts.h
*
********************************************************************

compilation terminated.
*** [.pio\build\esp32doit-devkit-v1\lib125\ESPAsyncTCP_ID305\SyncClient.cpp.o] Error 1
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp: In constructor 'AsyncPrinter::AsyncPrinter(AsyncClient*, size_t)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:48:11: error: 'panic' was not declared in this scope
     panic(); //What should we do?
           ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp: In member function 'int AsyncPrinter::connect(IPAddress, uint16_t)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:71:11: error: 'panic' was not declared in this scope
     panic();
           ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp: In member function 'int AsyncPrinter::connect(const char*, uint16_t)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:88:11: error: 'panic' was not declared in this scope
     panic();
           ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp: In member function 'void AsyncPrinter::_onConnect(AsyncClient*)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:109:11: error: 'panic' was not declared in this scope
     panic();
           ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp: In member function 'AsyncPrinter& AsyncPrinter::operator=(const AsyncPrinter&)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:130:11: error: 'panic' was not declared in this scope
     panic();
           ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp: In member function 'size_t AsyncPrinter::_sendBuffer()':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\AsyncPrinter.cpp:182:11: error: 'panic' was not declared in this scope
     panic(); // Connection should be aborted instead
           ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp: In member function 'bool AsyncClient::connect(IPAddress, uint16_t)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:248:8: error: 'ip_addr_t {aka struct ip_addr}' has no member named 'addr'
   addr.addr = ip;
        ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp: In member function 'bool AsyncClient::connect(const char*, uint16_t)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:282:35: error: 'ip_addr_t {aka struct ip_addr}' has no member named 'addr'
     return connect(IPAddress(addr.addr), port);
                                   ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp: In member function 'bool AsyncClient::operator==(const AsyncClient&)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:331:66: error: 'ip_addr_t {aka struct ip_addr}' has no member named 'addr'
   return (_pcb != NULL && other._pcb != NULL && (_pcb->remote_ip.addr == other._pcb->remote_ip.addr) && (_pcb->remote_port == other._pcb->remote_port));
                                                                  ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:331:96: error: 'ip_addr_t {aka struct ip_addr}' has no member named 'addr'
   return (_pcb != NULL && other._pcb != NULL && (_pcb->remote_ip.addr == other._pcb->remote_ip.addr) && (_pcb->remote_port == other._pcb->remote_port));
                                                                                                ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp: In member function 'void AsyncClient::_dns_found(const ip_addr*)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:707:31: error: 'const struct ip_addr' has no member named 'addr'
     connect(IPAddress(ipaddr->addr), _connect_port);
                               ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp: In member function 'uint32_t AsyncClient::getRemoteAddress()':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:837:26: error: 'ip_addr_t {aka struct ip_addr}' has no member named 'addr'
   return _pcb->remote_ip.addr;
                          ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp: In constructor 'AsyncTCPbuffer::AsyncTCPbuffer(AsyncClient*)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp:35:15: error: 'panic' was not declared in this scope
         panic();
               ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp: In member function 'uint32_t AsyncClient::getLocalAddress()':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:849:25: error: 'ip_addr_t {aka struct ip_addr}' has no member named 'addr'
   return _pcb->local_ip.addr;
                         ^
*** [.pio\build\esp32doit-devkit-v1\lib125\ESPAsyncTCP_ID305\AsyncPrinter.cpp.o] Error 1
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp: In member function 'virtual size_t AsyncTCPbuffer::write(const uint8_t*, size_t)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp:127:23: error: 'panic' was not declared in this scope
                 panic();
                       ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp: In member function 'void AsyncServer::begin()':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCP.cpp:1122:14: error: 'ip_addr_t {aka struct ip_addr}' has no member named 'addr'
   local_addr.addr = (uint32_t) _addr;
              ^
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp: In member function 'size_t AsyncTCPbuffer::_handleRxBuffer(uint8_t*, size_t)':
C:\Users\Mark\.platformio\lib\ESPAsyncTCP_ID305\src\ESPAsyncTCPbuffer.cpp:469:21: error: 'panic' was not declared in this scope
               panic(); //TODO: What action should this be ?
                     ^
*** [.pio\build\esp32doit-devkit-v1\lib125\ESPAsyncTCP_ID305\ESPAsyncTCP.cpp.o] Error 1
*** [.pio\build\esp32doit-devkit-v1\lib125\ESPAsyncTCP_ID305\ESPAsyncTCPbuffer.cpp.o] Error 1

Fixed in

1 Like