Como determinar quantos por cento da memória (heap) estão livres no ESP32?

Esta abordagem funciona para projetos Arduino / PlatformIO assim como ESP-IDF.

esp32_heap_percentage_example.cpp

#include <esp_heap_caps.h>

uint32_t freeHeapBytes = heap_caps_get_free_size(MALLOC_CAP_DEFAULT);
uint32_t totalHeapBytes = heap_caps_get_total_size(MALLOC_CAP_DEFAULT);
float percentageHeapFree = freeHeapBytes * 100.0f / (float)totalHeapBytes;

// Print to serial
Serial.printf("[Memory] %.1f%% free - %d of %d bytes free\n", percentageHeapFree, freeHeapBytes, totalHeapBytes);

Veja também Como encontrar número de bytes livres na memória / heap do ESP32?


Check out similar posts by category: ESP8266/ESP32