Skip to content
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

"random" crashes #248

Open
juanmartin84 opened this issue Dec 15, 2024 · 5 comments
Open

"random" crashes #248

juanmartin84 opened this issue Dec 15, 2024 · 5 comments
Labels

Comments

@juanmartin84
Copy link

Hello, since a few days I'm getting this "random" crashes, I guess this is happening after a full clean.

I'm using

Below the logs.
Could this be related to Espdash / async lib ?

20:04:41.230 > #0 0x40083e5d in panic_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/panic.c:408
20:04:41.230 > #1 0x4008e84d in esp_system_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/esp_system.c:137
20:04:41.230 > #2 0x40093f31 in abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/newlib/abort.c:46
20:04:41.230 > #3 0x4019c1bb in __cxxabiv1::__terminate(void ()()) at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:47
20:04:41.230 > #4 0x4019c202 in std::terminate() at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:57
20:04:41.230 > #5 0x4019c163 in __cxa_throw at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_throw.cc:95
20:04:41.230 > #6 0x4019c582 in operator new(unsigned int) at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/new_op.cc:54
20:04:41.230 > #7 0x401a2505 in __gnu_cxx::new_allocator::allocate(unsigned int, void const
) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\ext/new_allocator.h:111
20:04:41.230 > (inlined by) std::allocator_traits<std::allocator >::allocate(std::allocator&, unsigned int) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/alloc_traits.h:436
20:04:41.230 > (inlined by) std::_Vector_base<unsigned char, std::allocator >::_M_allocate(unsigned int) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:296
20:04:41.230 > (inlined by) std::_Vector_base<unsigned char, std::allocator >::_M_create_storage(unsigned int) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:311
20:04:41.230 > (inlined by) std::_Vector_base<unsigned char, std::allocator >::_Vector_base(unsigned int, std::allocator const&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:260
20:04:41.230 > (inlined by) std::vector<unsigned char, std::allocator >::vector(unsigned int, std::allocator const&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:416
20:04:41.230 > (inlined by) void __gnu_cxx::new_allocator<std::vector<unsigned char, std::allocator > >::construct<std::vector<unsigned char, std::allocator >, unsigned int&>(std::vector<unsigned char, std::allocator >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\ext/new_allocator.h:136
20:04:41.230 > (inlined by) void std::allocator_traits<std::allocator<std::vector<unsigned char, std::allocator > > >::construct<std::vector<unsigned char, std::allocator >, unsigned int&>(std::allocator<std::vector<unsigned char, std::allocator > >&, std::vector<unsigned char, std::allocator >
, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/alloc_traits.h:475
20:04:41.230 > (inlined by) std::_Sp_counted_ptr_inplace<std::vector<unsigned char, std::allocator >, std::allocator<std::vector<unsigned char, std::allocator > >, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<unsigned int&>(std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr_base.h:545
20:04:41.230 > (inlined by) std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<std::vector<unsigned char, std::allocator >, std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::vector<unsigned char, std::allocator >&, std::_Sp_alloc_shared_tag<std::allocator<std::vector<unsigned char, std::allocator > > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr_base.h:677
20:04:41.230 > #8 0x401a25d3 in std::__shared_ptr<std::vector<unsigned char, std::allocator >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::_Sp_alloc_shared_tag<std::allocator<std::vector<unsigned char, std::allocator > > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr_base.h:1342
20:04:41.230 > (inlined by) std::shared_ptr<std::vector<unsigned char, std::allocator > >::shared_ptr<std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::_Sp_alloc_shared_tag<std::allocator<std::vector<unsigned char, std::allocator > > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr.h:359
20:04:41.230 > (inlined by) std::shared_ptr<std::vector<unsigned char, std::allocator > > std::allocate_shared<std::vector<unsigned char, std::allocator >, std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::allocator<std::vector<unsigned char, std::allocator > > const&, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr.h:706
20:04:41.230 > (inlined by) std::shared_ptr<std::vector<unsigned char, std::allocator > > std::make_shared<std::vector<unsigned char, std::allocator >, unsigned int&>(unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr.h:722
20:04:41.230 > (inlined by) AsyncWebSocketMessageBuffer::AsyncWebSocketMessageBuffer(unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:144
20:04:41.230 > #9 0x401a2617 in AsyncWebSocket::makeBuffer(unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:1167
20:04:41.230 > #10 0x401059b9 in ESPDash::send(AsyncWebSocketClient
, ArduinoJson::V721PB22::JsonDocument&) at lib/ESP-DASH-Pro-v4-6-0/src/ESPDashPro.cpp:541
20:04:41.230 > #11 0x40106f49 in ESPDash::generateLayoutJSON(AsyncWebSocketClient*, bool, Card*, Chart*) at lib/ESP-DASH-Pro-v4-6-0/src/ESPDashPro.cpp:409
20:04:41.230 > #12 0x4010765f in _ZZN7ESPDashC4EP14AsyncWebServerPKcbENKUlP14AsyncWebSocketP20AsyncWebSocketClient12AwsEventTypePvPhjE1_clES5_S7_S8_S9_SA_j$isra$249 at lib/ESP-DASH-Pro-v4-6-0/src/ESPDashPro.cpp:96
20:04:41.230 > #13 0x40107b61 in std::_Function_handler<void (AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int), ESPDash::ESPDash(AsyncWebServer*, char const*, bool)::{lambda(AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int)#3}>::_M_invoke(std::_Any_data const&, AsyncWebSocket*&&, AsyncWebSocketClient*&&, AwsEventType&&, void*&&, unsigned char*&&, unsigned int&&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:297
20:04:41.230 > #14 0x401bab6a in std::function<void (AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int)>::operator()(AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int) const at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:687
20:04:41.230 > (inlined by) AsyncWebSocket::_handleEvent(AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:778
20:04:41.230 > #15 0x401a1ed2 in AsyncWebSocketClient::_onData(void*, unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:586
20:04:41.230 > #16 0x401a1ef9 in std::_Function_handler<void (void*, AsyncClient*, void*, unsigned int), AsyncWebSocketClient::AsyncWebSocketClient(AsyncWebServerRequest*, AsyncWebSocket*)::{lambda(void*, AsyncClient*, void*, unsigned int)#5}>::_M_invoke(std::_Any_data const&, void*&&, AsyncClient*&&, std::_Any_data const&, unsigned int&&) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:288
20:04:41.230 > (inlined by) _M_invoke at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:297
20:04:41.230 > #17 0x4019ef1d in std::function<void (void*, AsyncClient*, void*, unsigned int)>::operator()(void*, AsyncClient*, void*, unsigned int) const at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:687
20:04:41.230 > (inlined by) AsyncClient::_recv(tcp_pcb*, pbuf*, signed char) at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:1081
20:04:41.230 > #18 0x4019ef91 in AsyncClient::_s_recv(void*, tcp_pcb*, pbuf*, signed char) at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:1475
20:04:41.230 > #19 0x4019f82e in _async_service_task(void*) at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:260
20:04:41.230 > (inlined by) _async_service_task at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:295

@juanmartin84
Copy link
Author

Hello, I moved the libraries to later versions:

mathieucarbou/ESPAsyncWebServer@^3.3.14
mathieucarbou/AsyncTCP@^3.2.10
EspDashPro 4.6.1

arduino json remain:
bblanchon/ArduinoJson@^7.1.0

I confirm the behavior is the same:

The controller sometimes runs 20 minutes (more often), sometimes 1 hour, sometimes more (not to often).
Cards and dashboard elements work fine.
Then crashes while doing nothing, I just power the microcontroller and watch what happens.
Log is always the same shown in previous post.

@ayushsharma82 could this be related to EspDash lib, EspAsync lib, json lib or some interaction between them?

BR

@mathieucarbou
Copy link
Contributor

@juanmartin84 : first, please make sure to upgrade all he libraries.

@juanmartin84
Copy link
Author

Hello @mathieucarbou thanks for feedback.

After your last comment I moved to:

lib_deps = mathieucarbou/ESPAsyncWebServer@^3.4.4 mathieucarbou/AsyncTCP@^3.3.1 bblanchon/ArduinoJson@^7.2.1

and ESP-DASH-PRO v4-6-1

It still crashing more or less every 1 or 2 hours (at the end of this post the logs, similar to those in previous post*).

Anyway, I've been running tests, and I have some suspicion:
As you can see I include the lib with "^" symbol, so the last version of the library is being taken (I wasn't conscient of this).
Could be possible that some change in between [email protected] and [email protected] /
[email protected] and [email protected] / [email protected] and [email protected] is causing this behavior?

()
18:04:56.687 > #0 0x40083e5d in panic_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/panic.c:408
18:04:56.687 > #1 0x4008e84d in esp_system_abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/esp_system/esp_system.c:137
18:04:56.687 > #2 0x40093f31 in abort at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/newlib/abort.c:46
18:04:56.687 > #3 0x4019c1ff in __cxxabiv1::__terminate(void (
)()) at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:47
18:04:56.687 > #4 0x4019c246 in std::terminate() at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_terminate.cc:57
18:04:56.687 > #5 0x4019c1a7 in __cxa_throw at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/eh_throw.cc:95
18:04:56.687 > #6 0x4019c5c6 in operator new(unsigned int) at /builds/idf/crosstool-NG/.build/HOST-x86_64-w64-mingw32/xtensa-esp32-elf/src/gcc/libstdc++-v3/libsupc++/new_op.cc:54
18:04:56.687 > #7 0x401a2555 in __gnu_cxx::new_allocator::allocate(unsigned int, void const*) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\ext/new_allocator.h:111
18:04:56.687 > (inlined by) std::allocator_traits<std::allocator >::allocate(std::allocator&, unsigned int) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/alloc_traits.h:436
18:04:56.687 > (inlined by) std::_Vector_base<unsigned char, std::allocator >::_M_allocate(unsigned int) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:296
18:04:56.687 > (inlined by) std::_Vector_base<unsigned char, std::allocator >::_M_create_storage(unsigned int) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:311
18:04:56.687 > (inlined by) std::_Vector_base<unsigned char, std::allocator >::_Vector_base(unsigned int, std::allocator const&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:260
18:04:56.687 > (inlined by) std::vector<unsigned char, std::allocator >::vector(unsigned int, std::allocator const&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/stl_vector.h:416
18:04:56.687 > (inlined by) void __gnu_cxx::new_allocator<std::vector<unsigned char, std::allocator > >::construct<std::vector<unsigned char, std::allocator >, unsigned int&>(std::vector<unsigned char, std::allocator >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\ext/new_allocator.h:136
18:04:56.687 > (inlined by) void std::allocator_traits<std::allocator<std::vector<unsigned char, std::allocator > > >::construct<std::vector<unsigned char, std::allocator >, unsigned int&>(std::allocator<std::vector<unsigned char, std::allocator > >&, std::vector<unsigned char, std::allocator >
, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/alloc_traits.h:475
18:04:56.687 > (inlined by) std::_Sp_counted_ptr_inplace<std::vector<unsigned char, std::allocator >, std::allocator<std::vector<unsigned char, std::allocator > >, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<unsigned int&>(std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr_base.h:545
18:04:56.687 > (inlined by) std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<std::vector<unsigned char, std::allocator >, std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::vector<unsigned char, std::allocator >&, std::_Sp_alloc_shared_tag<std::allocator<std::vector<unsigned char, std::allocator > > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr_base.h:677
18:04:56.687 > #8 0x401a2623 in std::__shared_ptr<std::vector<unsigned char, std::allocator >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::_Sp_alloc_shared_tag<std::allocator<std::vector<unsigned char, std::allocator > > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr_base.h:1342
18:04:56.687 > (inlined by) std::shared_ptr<std::vector<unsigned char, std::allocator > >::shared_ptr<std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::_Sp_alloc_shared_tag<std::allocator<std::vector<unsigned char, std::allocator > > >, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr.h:359
18:04:56.687 > (inlined by) std::shared_ptr<std::vector<unsigned char, std::allocator > > std::allocate_shared<std::vector<unsigned char, std::allocator >, std::allocator<std::vector<unsigned char, std::allocator > >, unsigned int&>(std::allocator<std::vector<unsigned char, std::allocator > > const&, unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr.h:706
18:04:56.687 > (inlined by) std::shared_ptr<std::vector<unsigned char, std::allocator > > std::make_shared<std::vector<unsigned char, std::allocator >, unsigned int&>(unsigned int&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/shared_ptr.h:722
18:04:56.687 > (inlined by) AsyncWebSocketMessageBuffer::AsyncWebSocketMessageBuffer(unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:144
18:04:56.687 > #9 0x401a2667 in AsyncWebSocket::makeBuffer(unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:1167
18:04:56.687 > #10 0x40105a15 in ESPDash::send(AsyncWebSocketClient
, ArduinoJson::V721PB22::JsonDocument&) at lib/ESP-DASH-Pro-v4-6-1/src/ESPDashPro.cpp:541
18:04:56.687 > #11 0x40106fa5 in ESPDash::generateLayoutJSON(AsyncWebSocketClient*, bool, Card*, Chart*) at lib/ESP-DASH-Pro-v4-6-1/src/ESPDashPro.cpp:409
18:04:56.687 > #12 0x401076bb in _ZZN7ESPDashC4EP14AsyncWebServerPKcbENKUlP14AsyncWebSocketP20AsyncWebSocketClient12AwsEventTypePvPhjE1_clES5_S7_S8_S9_SA_j$isra$249 at lib/ESP-DASH-Pro-v4-6-1/src/ESPDashPro.cpp:96
18:04:56.687 > #13 0x40107bbd in std::_Function_handler<void (AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int), ESPDash::ESPDash(AsyncWebServer*, char const*, bool)::{lambda(AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int)#3}>::_M_invoke(std::_Any_data const&, AsyncWebSocket*&&, AsyncWebSocketClient*&&, AwsEventType&&, void*&&, unsigned char*&&, unsigned int&&) at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:297
18:04:56.687 > #14 0x401baa8a in std::function<void (AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int)>::operator()(AsyncWebSocket*, AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int) const at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:687
18:04:56.687 > (inlined by) AsyncWebSocket::_handleEvent(AsyncWebSocketClient*, AwsEventType, void*, unsigned char*, unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:777
18:04:56.687 > #15 0x401a1f22 in AsyncWebSocketClient::_onData(void*, unsigned int) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:585
18:04:56.687 > #16 0x401a1f49 in std::_Function_handler<void (void*, AsyncClient*, void*, unsigned int), AsyncWebSocketClient::AsyncWebSocketClient(AsyncWebServerRequest*, AsyncWebSocket*)::{lambda(void*, AsyncClient*, void*, unsigned int)#5}>::_M_invoke(std::_Any_data const&, void*&&, AsyncClient*&&, std::_Any_data const&, unsigned int&&) at .pio/libdeps/esp32dev/ESPAsyncWebServer/src/AsyncWebSocket.cpp:288
18:04:56.687 > (inlined by) _M_invoke at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:297
18:04:56.687 > #17 0x4019ef65 in std::function<void (void*, AsyncClient*, void*, unsigned int)>::operator()(void*, AsyncClient*, void*, unsigned int) const at c:\users\juan.platformio\packages\[email protected]+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits/std_function.h:687
18:04:56.687 > (inlined by) AsyncClient::_recv(tcp_pcb*, pbuf*, signed char) at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:1093
18:04:56.687 > #18 0x4019efd9 in AsyncClient::_s_recv(void*, tcp_pcb*, pbuf*, signed char) at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:1487
18:04:56.687 > #19 0x4019f87e in _async_service_task(void*) at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:272
18:04:56.687 > (inlined by) _async_service_task at .pio/libdeps/esp32dev/AsyncTCP/src/AsyncTCP.cpp:307

@juanmartin84
Copy link
Author

Now, libs in platform.ini are

mathieucarbou/[email protected]
mathieucarbou/[email protected]
bblanchon/[email protected]

so exactly those should be installed and not the last versions.

@mathieucarbou
Copy link
Contributor

mathieucarbou commented Jan 14, 2025

@juanmartin84 : please use the latest version of the dependencies before troubleshooting :

See: https://github.com/mathieucarbou/ESPAsyncWebServer?tab=readme-ov-file#dependencies

And ArduinoJson is not more 7.2.0...

Also, your stack trace says it fails allocate memory while doing AsyncWebSocket::makeBuffer(unsigned int) at, which means your json payload is too big: probably too many cards or charts. You can use some macros in espresso dash pro to control memory.

but ultimately, @ayushsharma82 will need to pick the changes I did in my repo for pro.
I have worked on a ESP-DAHS pro implementation (v5) which completely changes the way to declare cards and transfer data. It uses 60% less heap, is faster and uses about 50% less DRAM.

There is a preview here: #246, but the pro version is even more optimised with binary format transfer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants