I didn’t know anything about ESP32 memory table, all I know is that a part of the flash is cached in RAM. I suggest FreeRTos also need some memory…
I did some quick tests:
- WORKSPACESIZE
- 12000 – seems to work, may not working with real lisp programs (didn’t tested yet)
- 12500 – esp32 didn’t start / bootloop
‘ESP32/esp-idf-public/components/freertos/./timers.c:921 (prvCheckForValidListAndQueue)- assert failed!’
- 13000 – no linking possible:
section .dram0.bss' will not fit in region
dram0_0_seg
xtensa-esp32-elf/bin/ld: region `dram0_0_seg’ overflowed by 1064 bytes
A workspace size of 12.000 cons would allocate 96kBytes of memory – too few because a few 100kBytes should be available…
The compiler says:
Globale Variablen verwenden 108260 Bytes (36%) des dynamischen Speichers
(i.e.: 'Global variables use 108260 Bytes (36%) dynamic(?) memory (possible RAM).)
I don’t habe a board with PSRAM here and I’m not sure how to use it…
Maybe we can change the dram0_0_segment size (linker settings?) or using another RAM segment for the data…
I’ll do some tests with the 12.000 workspacesize…
(tak 18 12 6) is working…
Kaef