My first thought was a memory leak. But I checked with esp_get_free_heap_size() over longer periods of time and conditions and it heap was always fine. Right now my thoughts are
- maybe I'm somehow writing into mbed_tls territory (segmentation fault)
- Partition sizing could be off (afaik certs are written directly into the binary)
But really I have no clue. Any ideas?
Error 1:
Code: Select all
assert failed: heap_caps_free heap_caps.c:304 (heap != NULL && "free() target pointer is outside heap areas")
Backtrace:0x40081b32:0x3ffdbd800x40088611:0x3ffdbda0 0x4008f499:0x3ffdbdc0 0x40081d87:0x3ffdbee0 0x400851e1:0x3ffdbf00 0x40123fbe:0x3ffdbf20 0x4011a0bf:0x3ffdbf40 0x4012588d:0x3ffdbf60 0x40122c4e:0x3ffdbf80 0x40122955:0x3ffdbfa0 0x4012cac2:0x3ffdbfc0 0x40114774:0x3ffdbfe0 0x4011485c:0x3ffdc000 0x4010d8b1:0x3ffdc020 0x4010d8c1:0x3ffdc040 0x4010cfe5:0x3ffdc060 0x4010e889:0x3ffdc080 0x401948c3:0x3ffdc0b0 0x400e30c1:0x3ffdc0d0 0x4008ba6d:0x3ffdc100
0x40081b32: panic_abort at C:/dev/esp/esp-idf/components/esp_system/panic.c:402
0x40088611: esp_system_abort at C:/dev/esp/esp-idf/components/esp_system/esp_system.c:129
0x4008f499: __assert_func at C:/dev/esp/esp-idf/components/newlib/assert.c:85
0x40081d87: heap_caps_free at C:/dev/esp/esp-idf/components/heap/heap_caps.c:304 (discriminator 1)
0x400851e1: esp_mbedtls_mem_free at C:/dev/esp/esp-idf/components/mbedtls/port/esp_mem.c:46
0x40123fbe: mbedtls_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/platform.c:96
0x4011a0bf: mbedtls_mpi_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/bignum.c:136
0x4012588d: mbedtls_rsa_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/rsa.c:2554
.0x40122c4e: rsa_free_wrap at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/pk_wrap.c:194
0x40122955: mbedtls_pk_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/pk.c:98
0x4012cac2: mbedtls_x509_crt_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/x509_crt.c:2661
0x40114774: mbedtls_ssl_session_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/ssl_tls.c:9043
0x4011485c: mbedtls_ssl_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/ssl_tls.c:9104
0x4010d8b1: esp_mbedtls_cleanup at C:/dev/esp/esp-idf/components/esp-tls/esp_tls_mbedtls.c:305
0x4010d8c1: esp_mbedtls_conn_delete at C:/dev/esp/esp-idf/components/esp-tls/esp_tls_mbedtls.c:251
0x4010cfe5: esp_tls_conn_destroy at C:/dev/esp/esp-idf/components/esp-tls/esp_tls.c:104
0x4010e889: base_close at C:/dev/esp/esp-idf/components/tcp_transport/transport_ssl.c:284
0x401948c3: esp_transport_close at C:/dev/esp/esp-idf/components/tcp_transport/transport.c:230
0x400e30c1: esp_mqtt_task at C:/dev/esp/esp-idf/components/mqtt/esp-mqtt/mqtt_client.c:1514
0x4008ba6d: vPortTaskWrapper at C:/dev/esp/esp-idf/components/freertos/port/xtensa/port.c:130
Code: Select all
Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC : 0x4012cb0c PS : 0x00060330 A0 : 0x80114777 A1 : 0x3ffe6e20
0x4012cb0c: mbedtls_x509_crt_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/x509_crt.c:2689
A2 : 0x3ffd7b00 A3 : 0x00000002 A4 : 0x3ffd7b00 A5 : 0x00000002
A6 : 0x3ffb3bc0 A7 : 0x00000414 A8 : 0x8012cb1c A9 : 0x3ffe6e00
A10 : 0x3ffd8778 A11 : 0x00000010 A12 : 0x000000d0 A13 : 0x3ffd7a74
A14 : 0x000000a5 A15 : 0x0000000d SAR : 0x0000001c EXCCAUSE: 0x0000001c
EXCVADDR: 0x0000000e LBEG : 0x4000c46c LEND : 0x4000c477 LCOUNT : 0x00000000
Backtrace:0x4012cb09:0x3ffe6e200x40114774:0x3ffe6e40 0x4011485c:0x3ffe6e60 0x4010d8b1:0x3ffe6e80 0x4010d8c1:0x3ffe6ea0 0x4010cfe5:0x3ffe6ec0 0x4010e889:0x3ffe6ee0 0x401948c3:0x3ffe6f10 0x400e30c1:0x3ffe6f30 0x4008ba6d:0x3ffe6f60
0x4012cb09: mbedtls_x509_crt_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/x509_crt.c:2686
0x40114774: mbedtls_ssl_session_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/ssl_tls.c:9043
0x4011485c: mbedtls_ssl_free at C:/dev/esp/esp-idf/components/mbedtls/mbedtls/library/ssl_tls.c:9104
0x4010d8b1: esp_mbedtls_cleanup at C:/dev/esp/esp-idf/components/esp-tls/esp_tls_mbedtls.c:305
0x4010d8c1: esp_mbedtls_conn_delete at C:/dev/esp/esp-idf/components/esp-tls/esp_tls_mbedtls.c:251
0x4010cfe5: esp_tls_conn_destroy at C:/dev/esp/esp-idf/components/esp-tls/esp_tls.c:104
0x4010e889: base_close at C:/dev/esp/esp-idf/components/tcp_transport/transport_ssl.c:284
.0x401948c3: esp_transport_close at C:/dev/esp/esp-idf/components/tcp_transport/transport.c:230
0x400e30c1: esp_mqtt_task at C:/dev/esp/esp-idf/components/mqtt/esp-mqtt/mqtt_client.c:1514
0x4008ba6d: vPortTaskWrapper at C:/dev/esp/esp-idf/components/freertos/port/xtensa/port.c:130