We are trying to reduce the freertos heapsize in Renesas RX62N. Default heap size is 45K. We are using heap_2.c. When we reduce heap size to 2K, the code is getting stuck at vApplicationMallocFailedHook(). Can anyone help in solving this issue?
How much heap do you need? It seems more than 2K. Set the heap larger than you need, alocate all the objects you need, then call xPortGetFreeHeapSize() to see how much is left. You can then set configTOTAL_HEAP_SIZE to exactly what is needed.
If you use heap_2 (heap_4 is normal now) and nothing calls malloc then make sure you dont also allocate a C heap as it wont be used. The size of the C heap is normally set in a linker script.
Thankyou for the reply. We are using heap_2.c. We have read in some forums that we can set configTOTAL_HEAP_SIZE 0 since heap_2.c is not using heap memory. But if we set 0, vApplicationMallocFailedHook() is coming. Can we avoid this? We can give maximum 15K heap memory. We have 4 tasks. But then also this error was there.