How to use vPortGetHeapStats() on the ESP32?

Problem:

You see an error message like the following one while compiling your ESP32 project

compile_error_output.txt
src/main.cpp:128:3: error: 'vPortGetHeapStats' was not declared in this scope
    vPortGetHeapStats(&heapStats);

Solution

Although vPortGetHeapStats() is typically defined in freertos/portable.h, you can not use   vPortGetHeapStats() on the ESP32 since the frameworks do not use the FreeRTOS heap implementation.

In order to find informatio about heap usage, use the ESP heap API such as esp_get_free_heap_size().


Check out similar posts by category: ESP8266/ESP32, FreeRTOS