10. Free Memory and Memory Allocation Problems - matthias-bs/BresserWeatherSensorReceiver GitHub Wiki

To print available memory and check for fragmentation on ESP32 or ESP8266, use these functions:

ESP32:

#include <esp_heap_caps.h>
Serial.printf("Free heap: %u bytes\n", ESP.getFreeHeap());
Serial.printf("Largest free block: %u bytes\n", heap_caps_get_largest_free_block(MALLOC_CAP_8BIT));
Serial.printf("Total heap: %u bytes\n", ESP.getHeapSize());

ESP8266:

Serial.printf("Free heap: %u bytes\n", ESP.getFreeHeap());

For fragmentation, compare free heap and largest free block. If largest free block is much smaller than free heap, fragmentation is present.

Add these prints where you want to monitor memory.